Linux Shell脚本自学(第一天)

想说点什么呢?

之前一直没有深入学习Linux shell脚本的编写,现如今越来越对Linux shell产生依赖,所以说要开始学习了,希望在之后的日子里,要坚持不懈的对技术进行钻研,希望五年之后,还能常常回顾现如今写的博客

脚本常见变量

变量肯定是学脚本第一个要学的东西,脚本中一些默认的变量我们是需要了解的

名称含义
$0获取shell脚本文件名,以及脚本路径
$n获取shell脚本的第n个参数,n在1~9之间,如大于9则需要写,$[10]
$#获取执行的shell脚本后面的参数的总个数
$*获取shell脚本所有参数,不加引号等同于$@作用,加上引号“$*”作用是接收所有参数为单个字符串,“$1 $2 $3”
$@不加引号,效果同上,加引号,是接收所有参数为独立字符串。如"$1" “$2” “$3” …

特殊状态变量

名称含义
$?上一次命令执行状态返回值,0正确,非0失败
$$当时shell脚本的进程号
$!上一次后台进程的PID
$_在此之前执行的命令,最后一个参数

第一个脚本

该脚本主要是判断命令是否成功执行

#!/bin/bash
eval $@     #eval可以执行变量本身的命令
if [ $? -eq 0 ];   #判断命令执行成功与否,返回0就是成功,返回非0就是失败
then
   echo "$CMD executed successfully"
else
   echo "$CMD terminated unsuccessfully"
fi

[root@localhost opt]# ./success_test.sh 'ls'
rh  success_test.sh  test1.sh  upload  ZGQcPxHeQyum8QJt-wxZ4g
 executed successfully

将一个命令的输出发送给另一个命令

Linux shell 脚本最棒的特性之一就是可以轻松地将多个命令组合起来生成输出

命令输入通常来自于 stdin 或参数,输出可以发送给 stdoutstderr,当我们组合多个命令时,通常将 stdin 用于输入,stdout 用于输出

$ cmd1|cmd2|cmd3

这里组合三个命令。cmd1的输出传递给cmd2,cmd2的传出传递给cmd3,最终的输出(来自cmd3)会出现在显示器中或被导入某个文件

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值