Linux bash语法提要

$(command)|`command`: 执行相关的命令
$[{]variable[}]: 获取变量的值
$((计算式)):算术运算,只能进行整型计算,如果有小数时,可以使用bc命令进行辅助
单引号('')不具备变量置换功能;双引号("")具备变量置换功能

使用绝对或相对路径,以及[bash|sh] script.sh执行时都会使用一个全新的bash环境来执行script脚本
而使用[source|. ] script.sh的方式执行时,会使用当前shell的环境来执行script脚本

[ -flag condition ] 是对test -flag condition命令的简写
作为测试式时,[  ]内的两端必须使用空格来分隔!其内部的变量,最好以双引号进行引用;而其内部的常量,最好以单或双引号进行引用。
可以进行文件类型及权限,整型,字符串等条件的测试,可以通过man test查看具体的flag

$? -- 上个命令执行返回值
$$ -- 当前进程的PID
$! -- 上一个后台进程执行后的PID
$0, $1, $2, ..., $N -- $0表示脚本名,$1-$N表示参数
$# -- 从$1开始的参数个数
$@ -- "$1" "$2" ..."$N"
$* -- "$1 $2 ... $N"
shift N -- 改变$#及$@的值

&& -- AND
|| -- or

echo -- output
read -- input
declare -- 定义变量的类型
ctrl+s -- 暂停屏幕输
ctrl+q -- 恢复屏幕输出

变量内容的删除、取代与替换
${变量名#[#]关键字} -- 若变量内容从头部开始的数据符合”关键字“,#表示删除最短数据;##表示删除最长数据
${变量名%[%]关键字} -- 若变量内容从尾部开始的数据符合”关键字“,%表示删除最短数据;%%表示删除最长数据
${变量名/[/]旧关键字/新关键字} -- 若变量内容符合旧关键字,/表示第一个旧关键会被新关键字替换;//表示所有旧关键会被新关键字替换

${variable_name-"default value"}:判断变量是否设定,未设定时取缺省值
${variable_name:-"default value"}:判断变量是否设定或为空,未设定或为空时取缺省值

login shell:表示在tty中要求用户输入用户名及密码才能进入的shell
non-login shell:表示在图形界面打开的终端或者在login shell中打开的其它shell
~/.bash_profile (read by login shell)
~/.bashrc (read by non-login shell)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值