Linux之shell脚本整理笔记

在 Linux 中,echo 命令用于输出文本信息到终端或者重定向到文件。 -e 是 echo 命令的一个选项,用于启用特殊字符的解释。如果不使用 -e 则会按照普通字符串输出,而不会解释诸如 \n、\t 等转义字符。

变量定义和引用

普通变量 当前shell进程

环境变量 当前shell进程以及子进程

        export name=VALUE

        declare -x name=VALUE

       

        name=VALUE

        export name

本地变量 当前shell进程中某代码片段,通常指函数。

变量赋值:

直接字串:name='root'

变量引用:name="$USER"

命令应用:name=`COMMAND` 或者 name=$(COMMAND)

变量引用:$name、${name}

变量追加值 

TITLE=CTO

TITLE+=:wang

echo $TITLE  CTO:wang

利用变量实现动态命令

CMD=hostname

$CMD

ubuntu

删除变量

NAME=root

unset NAME

位置变量

$1 $2 $3 对应第一个参数 第二个参数 

$0 命令本身,包括路径

$* 全部参数 合为一个字符串

$@  全部参数 每个参数为独立字符串

$# 传递给脚本的参数个数

shell中` `和$()都可以执行命令,推荐使用$()。

shell运算推荐

方法一、a=$[$b+$c]

方法二、let a = $b+$c

方法三、a=$(($b+$c))

shell数值判断

[ $i -lt $j ] 推荐写法

[[ $i -lt $j ]]当使用正则表达式或者通配符推荐使用

-eq 是否等于

-ne 是否不等于

-gt 是否大于

-ge 是否大于等于

-lt 是否小于

-le 是否小于等于

文件测试

-a FILE   #如果文件存在则为真
-d FILE   #如果文件为目录则为真
-e FILE   #如果文件存在则为真
-f FILE   #如果文件存在且为常规文件则为真

关于()和 {} 都可以将多个命令组合在一起

()开启子shell

  {}  不开启子shell

组合测试条件 [    ]

[  条件1  -a  条件2  ] 并且

[  条件2  -o  条件2  ] 或者

[ !条件  ]  取反

条件判断

if 判断条件

then

        echo "1221212121"

fi

if 条件判断

then 

        echo "121212"

else

        echo "2121"

fi

if 判断条件 

then

        echo "2121"

elif 判断条件

then

        echo "21212"

else

        echo "123232"

fi

case 变量引用 in

part1)

        echo "2121"

;;

part2)

        echo "2132"

;;

part3)

        echo "2131"

;;

*)

        echo "32131"

;;

esac

for i in {1..100}

do

        echo "212132"

done

for((i=0;i<=10;i++))

do

        echo "21321"

done

while (条件判断) 

do

        echo "132"

done

util (条件判断)

do

        echo "31231"

done

shell与正则

 =~ 判断是否与正在匹配

数组

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值