![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Shell
Jessica__WEI
用自己的方式热爱这个世界
展开
-
shell 之 脚本变量和字符串截取
$$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 $@ 所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2"原创 2018-05-11 16:56:15 · 1769 阅读 · 0 评论 -
运行.sh文件提示‘\r’ command not found
基于 DOS/Windows 的文件在每一行末尾有一个 CR(回车)和 LF(换行),而 UNIX 文本只有一个换行,即win每行结尾为\r\n,而linux只有一个\n。如果win下的文档上传到linux,每行的结尾都会出现一个^M(^M是ctrl+v,ctrl+m) ,然后提示“‘\r’ command not found”。解决办法:如果是单个文档的话,可以用vim打开,执行 :%s/^M/...原创 2018-05-14 12:00:42 · 5762 阅读 · 0 评论 -
shell 之 getopts
shell中getopts用于获取用户在命令下的参数,然后根据参数进行不同的执行。getopts配合case进行操作时有两个隐含变量:一个是OPTARG,用来取当前选项的值;另外一个是OPTIND,代表当前选项在参数列表中的位移,OPTIND是一个特殊的变量,它的初始值是1,每次getopts处理完一个命令参数后就递增它,得到getopts要处理的下一个参数。通过一个例子说明其使用方法:while...原创 2018-05-14 19:57:29 · 285 阅读 · 0 评论 -
shell 之 date
#date 获取当前时间#date -d "-1week" +%Y%m%d 获取上周日期(day,month,year,hour)#date--date="-24 hour" +%Y%m%d 同上date_now=`date+%s` shell脚本里面赋值给变量mkdir `date+%Y%m%d` 创建以当前时间为文件名tar cvf./htdocs`date +%Y%m%d`.tar ./* ...原创 2018-05-14 20:20:58 · 263 阅读 · 0 评论 -
shell中各种括号()、(())、[]、[[]]、{}的作用和区别
$()和 ` ` 在 bash shell 中,$( ) 与` ` (反引号) 都可用做命令替换用。例如 version=$(uname -r)和version=`uname -r`都可以是version得到内核的版本号各自的优缺点:1. ` ` 基本上可用在全部的 unix shell 中使用,若写成 shell script ,其移植性比较高,但反单引号容易打错或看错。2. $()并不...原创 2018-05-16 10:43:01 · 35972 阅读 · 6 评论 -
shell 比较符号
基本的if条件命令选项有: -eq —比较两个参数是否相等(例如,if [ 2 –eq 5 ])-ne —比较两个参数是否不相等-lt —参数1是否小于参数2-le —参数1是否小于等于参数2-gt —参数1是否大于参数2-ge —参数1是否大于等于参数2-f — 检查某文件是否存在(例如,if [ -f "filename" ])-d — 检查目录是否存在...原创 2018-07-12 11:42:39 · 1221 阅读 · 0 评论