《2022年2022年精通shell编程 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年精通shell编程 .pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一 输入与输出1.2 输入1 read variable_name 2 cmd file | flle1 2file2 ; 3 要丢弃输出信息,可以使用文件/dev/null 4 重定位标准输出和标准错误到同一个文件cmd file 2& 5 重定向两个文件描述符n&m; 输出重定向的普通格式经常和exec 命令结合来复制一个已经打开的输出文件描述符:exec n&m m 是一个已经打开的输出文件描述符6 关闭文件描述符: exec n- 7 标准输入0;标准输出1 ;标准错误2 二 进程2.1 开始一段进程1 前后台进程:后台进程cmd & 2 当运行一个shell 脚本的时候,除了脚本中的
2、命令之外,另一个shell 解析器的copy 也会产生,这个新shell 被称为 subshell。脚本中的命令是在子shell 中执行的三 变量3.1 变量的操作1 要获取变量的值,只需要在变量名之前加$作为前缀。 $只能用来访问变量,而不能定义变量或者分配变量值2 数组: arrayindex ,注意中括号要连着数组名;访问数组:$arrayn|*| 3 只读: readonly variable 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - -
3、 - - - - - 4 删除变量: unset 3.2 环境和 shell变量1 环境是指shell 运行一个程序时,它传给这个程序的一组变量2 输出环境变量:export variable_name( =value)3 四置换1 缺省值置换:param:-word 缺省值赋值:param:=word 空值错误: param: ?msg 有值置换: param:+word 2 算式置换$(exp) 五引用1 单引号和双引号的区别;单引号对字符串中的所有元字符失去它们的特殊含义;双引号禁止除了 $和 外的所有元字符六 流控制6.1 test语句1 文件测试: option file Optio
4、n b(文件存在 ) c(文件存在切是字符文件)-d(文件夹存在)-e(文件或者文件夹存在) -f(文件存在且是正规文件)-g(文件或文件夹存在且设置了SGID 时返回真) -h(存在且是符号链接)-k(存在且设置了“粘滞”位时返回真)-p(存在且是管道)-s(存在且大小大于0)-r(可读) -w(科协) -x(可执行) -o(拥有者为当前用户)2 字符串比较-z (str 长度为 0)-n(非 0) = != 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 -
5、- - - - - - - - 3 数字比较:-ge ne lt le gt ge 4 复合表达式! -a -o 6.2 if If ;Then Elif ;Then Fi 6.3 case Case word in Pattern1) List1 ; Pattern2) . Esac 6.4 while 1 While cmd1; Do List1 Done 2 输入重定位和while While read line 6.5 for 和 select循环1 for name in word1 word2 wordN Do List 名师资料总结 - - -精品资料欢迎下载 - - - - -
6、 - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - Done 2 select name in word1 word2 wordN Do List Done Select 循环常用于配置软件的脚本,供用户作出选择七 参数1. 特殊变量: $0 被执行的命令的名字;$n 被一个脚本调用的参数;$#脚本支持的参数个数;$*所有的参数被双重引用;$所有的参数都被独立地双重引用;$?最后一个被执行的命令的退出状态; $当前 shell 的进程号; $!最后一个后台命令的进程号; ;$-显示当前she
7、ll 是否是交互的;2 dirname file ;basename file 获得一个文件或者目录的绝对或者相对路径;3 shift 可以用来删除第一个变元4 使用 getopts option-str OPTION; OPTION 为以下值: VERBOSE(保存了verbose标志的值);INFILE (保存输入文件名);OUTFILE (保存了输出文件名)Getopts 能指出哪些选项要求附带参数,这是通过选项后附带个冒号来实现。参数会保存到OPTARG 内八 文本滤波器1 head n num file; tail n num file; 2 grep word file; 选项: -i(忽略大小写)-v(不包含 * )-n(现实行号) 3 tr 4 sort 5 uniq c(打印一个字符出现的次数)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - Shell 编程常见问题名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -