bash脚本入门


1.基本的操作,就是终端上经常使用的命令:
cp ,ln ,cd 等等

2.写文件(配置文件等):
sudo touch /[file path]/[file name]
echo “one line text”>>/[file path]/[file name]

如有换行符等: echo -e “one line text \n\n”>>/[file path]/[file name]

3.输入参数(比如 bash.sh parm1 parm2 …)
必要的符号:
$# : 参数的个数 如在终端输入 ./bash.sh parm1 parm2 此时 $# 为3
$0 : 在上例中表示”bash.sh”
$1 : 在上例中表示”parm1”
shift : 将参数列表向左移动一位,比如在终端输入 ./bash.sh -c 1
此时echo $1 则会打印 -c
此后加入shift :
echo $1
shitf
echo $1
则会打印:
-c
1

有参数的脚本大致分为两种:
1)参数个数固定,顺序固定 比如 bash.sh 1 2 3
2)参数个数与顺序都不定 比如 bash.sh -c 1 -v 9 …

1)参数固定:
这种情况直接可以使用$0 ,$1等 bash.sh 1 2 3 则 使用$1 表示第一个参数, 也就是1
$2 表示第二个参数, 也就是2 以此类推。
优缺点: 优点是简单,对于参数个数不多的情况适用。
缺点是无法判断输入参数的顺序是否正确,只能判断输入的参数的个数是否正确;
对于参数过多的脚本不适用,并且对于参数个数不固定的脚本不适用。
2)参数不固定:
这种情况比较常见,比如 ./bash.sh -v 3.0 -c 1 -ip 10.0.0.1 等
这里就要判断输入的参数的类型: -v -c -ip 等等,然后根据参数类型来输入参数。假如-v 表示版本号, 那么3.0就是-v的参数。
这里使用最原始的方法,利用循环遍历整个参数列表,判断参数类型,在对应赋值。

举例

解读以上的小代码:

while[-n “$1”]; do 当$1 存在, 则进行循环 (-n 判断是存在)
case “$1” in
esac 判断$1的内容

-v) 如果$1内容是 -v
version=”$2” $1的内容是 -v 那么 $2 的内容当然是 -v 后的那个参数,比如 -v 3.0 那么 version就等于 3.0
shift

通过对参数列表的移位,对参数进行读取。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值