shell就是运行在终端中的文本互动程序,常见的shell有sh,bash等,bash是sh的改进版本,一般来说,目前都推荐bash作为默认的shell。
#!/bin/bash #指定bash程序的路径
值得注意的是shell对空格敏感,当参数中包含了空格的时候,需要用引号把参数包裹起来,赋值的时候,“=”前后也不要留空格,有空格的时候要加引号;
$var=World $var='abc bcd' #单引号,双引号均可
$echo "Hello $var" #var会被正常替换
$echo 'Hello $var' #var不会被正常替换
$Now=`date`
$another=$var
还可以在一段文本中嵌入变量
$var=World $echo Hello$var $echo ${var}IsGood
bash中有变量,但是变量只能存储文本
$result=1+2 $echo $result #不会进行计算 $echo $((2 + (5*2))) #会进行计算 $var=1 $echo $(($var + (5*2))) #会进行计算
常见的一些变量
$? # 上一个语句的返回码 rm demo.file && echo "rm succeed" rm demo.file || echo "rm fail"
#!/bin/bash function my_info (){ # 关键字function和花括号都提示了该部分是函数定义。function关键字并不是必须的 lscpu >> log uname –a >> log free –h >> log } my_info # 调用的时候只需要函数名
my_info.sh #!/bin/bash function my_info (){ lscpu >> $1 uname –a >> $1 free –h >> $1 } app.bash
#!/bin/bash source my_info.bash my_info output.file # 可以使用my_info.sh中的函数
test 命令做逻辑判断
test 3 -lt 2; echo $?
通配符
* 任意文本 *) Xyz, 123, … ? 任意一个字符 a?c) abc, axc, … [] 范围内一个字符 [1-5][b-d]) 2b, 3d, …
ref:https://www.cnblogs.com/vamei/p/8151169.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。