Shell脚本通常是一个以shebang起始的文本文件【#!/bin/bash,sharp-bang简写,sharp表示#,bang表示!】,其中/bin/bash是Bash的解释器命令路径,bash将以#为开头的行视为注释,脚本中只有第一行可以使用shebang来定义解释该脚本所使用的的解释器。
Shell脚本有两种运行方式:一种是将脚本作为bash的命令行参数,如:$ bash /home/path/script.sh #使用脚本的完整路径;另一种则是授予脚本执行权限,将其变为可执行文件。 $ chmod a+x script.sh #赋予脚本执行权限
在Bash中,每个命令或是命令序列是通过分号或换行符来分隔的,如$ cmd1;cmd2
基本常识:
1、命令行的提示符:$表示普通用户,#表示管理员用户root;
2、./表示当前目录;~表示主目录【通常是/home/user】
3、终端打印:echo、printf
1)echo:双引号允许shell解释字符串出现的特殊字符,单引号不会对其进行任何解释;默认自动换行,可使用-n来忽略结尾的换行符,同样接受双引号字符串内的转义序列作为参数,如果需要使用转义参数,需要使用-e选项。如$ echo -e "1\t2\t3",\t表示制表符
使用双引号:$ echo "Welcome to Bash \!"
使用单引号:$ echo 'Welcome to Bash !'
2) printf:可接受应用文本或者由空格分隔的参数,可以使用格式化字符串,还可以指定字符串的宽度、左右对齐方式等。在默认情况下,printf只能手动换行;其中,%s、%c、%d和%f都是格式替换符,-表示左对齐,%-5s指明一个格式为左对齐且宽度为5的字符串替换;.2指明保量两位小数
#!/bin/bash
printf "%-5s %-10s %-4s\n" No Name Mark
printf "%-5s %-10s %-4.2f\n" 1 Sarath 80.3456
4、变量与环境变量&#