shell

Posted swaggyC

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell相关的知识,希望对你有一定的参考价值。

shell是使用者与计算机内核的交互工具。

shell变量:

取用方式:$变量名  ${变量名}

变量定义:变量名=变量值,变量值可以用单引号和双引号引用,单引号则$等特殊字符只有字面意义,而双引号则保持了原有的特殊意义。

$()可以得到括号内命令的结果。

变量拼接:${变量名}/path

unset可以取消变量

alias 命令1=‘命令2’

unalias 取消别名设置

history 历史命令

2> 错误输出 

1> 正常输出

;间隔命令,顺序执行

&&  间隔命令  前一个命令输出true,后一个命令才执行

|| 间隔命令 前一个命令输出false,后一个命令才执行

cut -d ‘分割符‘ -f 显示第几个字段 -c 显示第几个字符

grep ‘ ‘ 抓取包括特定字符的行

grep  -v ‘ ‘ 抓取不包括特定字符的行

source  在当前程序的环境中执行

sh 在子程序的环境中执行

test 或者中括号 [ ] 用于判断:

  -e 是否存在

  -f 是否是文件

  -d 是否是目录

  -r 是否有写权限

  -w 读权限

  -x 执行权限

两个文件间的比较

test 文件1 -nt  文件2:文件1是否比文件2新

test 文件1 -ot  文件2:文件1是否比文件2旧

test 文件1 -ef  文件2:是否是同一个文件

整数之间的判断

test n1 -eq n2 是否相等

test n1 -ne n2 是否不相等

test n1 -lt n2 是否小于

test n1 -gt n2 是否大于 

test n1 -le n2 是否小于等于

test n1 -ge n2 是否大于等于

字符串的判断

test -z 空字符串返回true

test -n 空字符串返回false

test str1=str2 是否相等

test str1!=str2 不等

多个判断组合

-o 或

-a 与

!非

 

[]与test同理,注意变量名与符号间要留有空格

 

条件判断式:

if  ;then

fi

 

if ; then

else

fi

 

if  ;then

elif ; then

else 

fi

 

case in

)

程序段

;;

)

程序段

;;

 

while [ ]

do

程序段

done

 

util []

do

程序段

done

 

for  in 

do

程序段

done

 

for ((初始值:判断条件;运行步阶))

 

以上是关于shell的主要内容,如果未能解决你的问题,请参考以下文章

Shellshell脚本练习

Shellshell 的执行流控制

shellshell-grep -v 排除多个输出结果

Shellshell中的常用基础命令

shellshell中各种括号的作用()(())[][[]]{}

Shellshell脚本中的变量