Shell指令

1、执行

.filename 或者 source filename

2、变量

使用变量:变量前加$;{}解释边界

只读变量:readonly var_name

删除变量:unset var_name

读取变量:read var_name

3、字符串

双引号&单引号:双引号内均翻译,单引号内存在单引号翻译内部

获取字符串长度:${#string_name}

提取字符串:${string_name:start:length}

4、数组

定义数组:数组名=(值1 值2 ... 值n)

读取数组:${数组名[下标]} 全部:${数组名[@或*]}

获取数组长度:${#数组名[@或*]}

5、注释

单行注释:#

多行注释:开始:<<任意字符 结尾:对应数字

6、参数传递

./test.sh 参数1 参数2 参数3

$n:第n个参数,第0个为文件名

$#:参数传递的个数

$*:显示全部参数 $@:引号中返回每个参数

$$:显示进程号

7、基本运算符

(取反>算术>条件>逻辑>赋值运算符)

算术运算符:expr表达式计算工具

表达式和运算符之间有空格 表达式用``反引号包含

例:`expr $a + $b` (let i=$i+1)

数字关系运算符

-eq等于 -ne不等于 -gt大于 -lt小于 -ge大于等于 -le小于等于

例:[$a -eq $b]

布尔运算符:!非 -o或 -a与

逻辑运算符:&&与 ||或

例:[[$a -lt 100 && $b -gt 100]]

字符串运算符

=相等;!=不相等;>;<;

-z是否长为0;-n是否长不为0;$是否不为空

文件测试运算符

-b是否块设备文件 ; -c是否字符设备文件 ; -d是否目录 ; -f是否普通文件 ; -r是否可读 ; -w是否可写 ; -x是否可执行 ; -s是否为空 ; -e是否存在

例:[-b $file]

8、输出

echo:变量前加$,字符串可加””可不加

            开启转义:echo -e

           定向至文件:echo “string” > file

           显示命令执行结果:echo ‘date’

printf:printf “format_string” var/figure

             %-ns 左对齐n字符大小的字符串

9、转义符

\n换行 ; \r回车 ; \f换页 ; \\反斜杠 ; \c不换行

10、测试

test expression或[ expression ]  :条件成立为0否则为非0值

11、条件与循环

if:if…  then  

      elif…  then

      else

      fi

for:for var in item1 item2…itemN  // 或 for((;;))  

        do

        done

while:while…  

             do

             done

until:until… 

           do

           done

case:case var in 

           mode1) … ;; 

           *)  … 

           esac

12、函数-参数传递

 fun(){  …  return int  }

13、重定向

默认:标准输入文件stdin(文件描述符0) ; 标准输出文件stdout(1) ;标准错误文件stderr(2)

输出重定向

Command >(>>) file 覆盖(追加)的方式输出重定向到file

Command 2>(>>) file 覆盖(追加)的方式错误信息重定向到file

Command >(>>) file 2>&1 覆盖(追加)的方式输出和错误信息保存到file

输入重定向

Command <file 覆盖(追加)的方式file输入到命令行

Command <<END    END   以END作为键盘输入的结束标志(自定义)

禁止输出:重定向到/dev/null

14、others

“”包含字符串

(())包含表达式,自动解析变量名,前加$表示表达式结果赋值

[[]]包含表达式,需要空格,不能转义,不存在-o -a逻辑运算

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值