Bash , . , , , - .
Bash GNU Bourne. 1989 Linux MacOS Apple ( OS X). Windows 10 Solaris 11.
Bash - , , , . Bash , . Unix ( ), , , . csh ksh. Bash - POSIX- , . - Bourne-again shell.
"" 10 1988 , , . Bash - 8 1989 1992 1994 , , .
Bash Linux, , MacOS Apple. Bash Microsoft Win Cygwin, DOS DJGPP Android .
2014 "" 1.03, 1989 , Shellshock, . , CGI Bash , . , .
Bash Bourne , , . Bourne , , - . Bash grep, GNU , .
, Bash , , . , , . Bash , Bourne.
Bash: , ((...)) $ ((...)) , -. , (stdout) (stderr) &>. , Bourne ' command > file 2>&1'.
Bash "" (), . «», Bash Bourne Korn, Korn «», , , POSIX-.
- Bourne Korn, , Bash. , AWK. Bash 4.x MacOS - . .
command
: . «;». Bash, :
, 1 , 2. 1 (symbol &) , , .
1 2 :
1 & symbol, , 2 . Bash grep , Ctrl + z, . , , , , jobs.
. "fg" , "bg"- , . Bg" "fg" , , . , «» "jobs". "kill" , . :
- kill -s SIGKILL% 1 kill -9%.
Bash « » , "contingent" , . , "bashbug", . , . Bash , , , Bash.
Bash.
Bash , . , , :
, Bash . :
- [edit] /etc/profile, .
- /etc/bash.bashrc.
- ~/.bash_profile, 1-, .
- [edit], ~/.bash_logout.
- [edit] /etc/bash.bashrc, ~/.bashrc.
- "--norc" .
- "--rcfile" file Bash .
- Bourne shell csh startup [edit], "" csh. Bourne , csh.
POSIX 1003.2
Bash –posix set -o posix Bash POSIX 1003.2. , , Bourne, . Bash , Bourne. :
- .
- $ (). POSIX 1003.2.
- .
- .
- .
- - Bash "if".
- .
- .
- .
- ""- Coprocesses.
Bash "readline" (Emacs). Vi- "set -o vi".
, , - , "C". . . . , Bourne .
, , . , . Bash .
, , "eval" , :
- $ start = 1 ;
- end = 10 $ echo { $ start .. $ end } # - {1..10};
- $ eval echo { $ start .. $ end } # , : 1, 2, 3, 4, 5, 6, 7, 8, 9, 10.
""
ASCII, «editor», . , , , - vi Emacs, UNIX / Linux, , «», TextEdit UltraEdit Microsoft Windows.
Bash , «#! / Bin / bash», , . , , «bash».
-, , , «#!». , « / bin», , :
- « / usr / bin », « / usr / local / bin ».
«#» . «#» . . , , , , « \ ». , «;».
«», , . Bash «», , , , .
, , , . , , . , . "match" Bash , , .
, - , . , , , , , , . , , , . , , .
, , , , , . , Apple Macintosh Mac OS X , Terminal, Utility «».
Linux , GNOME KDE, , «» « → ». , :
Bash, , , PATH, «which», «bash»:
- $ echo $SHELL /bin/tcsh $ which bash /bin/bash $ bash bash-2.03$.
, , , , , . . , , Invio/Enter. , «;». , « \ ».
,
, , . , Bash .
. , . , , , . , , , - . .
, , «» Bash . , , , . , , , « \ » . , , .
, , . , Bash , .
, , ASCII:
- $ pwd ;
- echo $SHELL ;
- hostaname /home/marco /bin/bash aquilante $ echo \ > $SHELL /bin/bash.
«script.sh », , :
- echo -n "Oggi e' il " 2 date +%d/%m/%Y.
, , :
- $ bash script.sh Oggi e' il 10/6/2011.
, Bash:
- $ cat script.sh | bash Oggi e' il 10/6/2011.
Bash- «#!». , , , Bash :
- $ cat script.sh #!/bin/bash echo -n "Oggi e' il " date +%d/%m/%Y $ chmod 755 script.sh $ ls -l script.sh -rwxr-xr-x 1 marco users 49 18 Apr 23:58 script.sh $ ./script.sh Oggi e' il 10/6/2011.
, , «script.sh», , « ./ » . , , , . Bash.
Bash
. , . , , .
"yaml" "json", . Bash , .
Bash - , . . , , . , Bash, .
Bash -, Linux . , , Azure , Azure, Azure Portal Azure Documentation.
, Bash. CLI, , , Bash, CLI 2.0.
Bash. !