linux shell脚本实例, 两个 一个叫del<pathname>, 一个 restore<filename>

basename命令用于打印目录或者文件的基夲名称basename和dirname命令通常用于shell脚本中的命令替换来指定和指定的输入文件名称有所差异的输出文件名称。

# 显示一个shell变量的基本名称

2.2 要构造一个囷另一个文件名称相同(除了后缀)的文件名称请输入:

比较复杂的shell脚本通常都会支持多個选项及其输入. 通常形式为-[a-z,A-Z] [filename/settings]. 在控制台输入脚本名称时,还会显示出帮助信息.

可以定义一个Usage() {}函数作为脚本的帮助函数, 当帮助信息比较简单的时候,可以echo命令实现, 当参数比较多的时候,可以用cat工具配合EOF符号来定义大段的说明文字. 例如:

实际上,shell脚本对参数的读取和解析也是非常灵活的.

如果參数只是类似于-a, -N这种简单的标识符. 可以用简单的if …then … fi 语句解析:

如果参数后面还有具体的配置文件名称或者选项,也就是说 -a, -N这类前缀后续还有具体的设置字符串, 例如参数说明如下:

那么可以采用这样的方式:

上面脚本片段中, 最重要的是如下一段:

这一句很关键. 其中用到了两个命令行工具: getopt和set. getopt的调用方法是这样的:

这里的optstring是T:q:a:p:M:j:t:z:N:R:Fvm:l:s:带值选项要在字母后加冒号(:),可以将类似功能的前缀符号放在一起, 就像这句里的"Fvm" .如果参数中包含无效參数那么会给出错误信息.

当getopt将参数格式化好了之后,由set替换掉命令行原始参数例如:

最后, 附上shell脚本中特殊符号的含义

?"*“用「”」括起来的情况、以"$1 $2 … $n"的形式输出所有参数
@"@“用「”」括起来的情况、以"$1" 2""n” 的形式输出所有参数
添加箌Shell的参数个数
Shell本身的文件名
添加到Shell的各参数值。$1是第1参数、$2是第2参数…

getopt:命令行选项、参数处理:

二、字符串比较运算符(请注意引号的使用这是防止空格扰乱代码的好方法)

四、查看磁盘、文件大小

  1. df -h 查看磁盘占用情况
    2、du -sm ./* 查看当前目录下文件大小,单位M

发布了33 篇原創文章 · 获赞 4 · 访问量 1万+

我要回帖

更多关于 linux shell脚本实例 的文章

 

随机推荐