栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

shell脚本

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

shell脚本

                                                                    shell

shell :    完成一些复杂的需求(靠linux命令解决不了),完成一些重复的操作。服务器巡检。。。。。写shell脚本,zabbix

shell:    脚本从上往下依次运行,

>        正确重定向覆盖

>>       正确重定向追加

2>        错误重定向覆盖

2>>      错误重定向追加

&>        混合重定向覆盖

&>>      混合重定向追加

$0 

当前脚本的文件名

$n 

传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。

$# 

传递给脚本或函数的参数个数。

$* 

传递给脚本或函数的所有参数。

$@ 

传递给脚本或函数的所有参数。被双引号(" ")包含时,与 $* 稍有不同,下面将会讲到。

$? 

上个命令的退出状态,或函数的返回值。

$$ 

当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID。

变量名    =    变量值

name    =    dgf

如果想要查看name的值:echo  $name

双引号:弱引用,就是会将变量名所对应的值打印

单引号:强引号,单引号中的内容是什么,就打印什么

三个引号:批量写入文件内容。

 cat <  hehe                EHD         批量写入文件内容。

read     -p     "输入名字"   name    交互式输出内容

                                                            shell正表达式

sort     文件名     给文档内容排序 

  • -b 忽略每行前面开始出的空格字符。

  • -c 检查文件是否已经按照顺序排序。

  • -d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。

  • -f 排序时,将小写字母视为大写字母。

  • -i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。

  • -m 将几个排序好的文件进行合并。

  • -M 将前面3个字母依照月份的缩写进行排序。

  • -n 依照数值的大小排序。

  • -u 意味着是唯一的(unique),输出的结果是去完重了的。

  • -o<输出文件> 将排序后的结果存入指定的文件。

  • -r 以相反的顺序来排序。

  • -t<分隔字符> 指定排序时所用的栏位分隔字符。

  • +<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。

  • --help 显示帮助。

  • --version 显示版本信息。

  • [-k field1[,field2]] 按指定的列进行排序。

    

uniq 可检查文本文件中重复出现的行列

  • -c或--count 在每列旁边显示该行重复出现的次数。

  • -d或--repeated 仅显示重复出现的行列。

  • -f<栏位>或--skip-fields=<栏位> 忽略比较指定的栏位。

  • -s<字符位置>或--skip-chars=<字符位置> 忽略比较指定的字符。

  • -u或--unique 仅显示出一次的行列。00

  • -w<字符位置>或--check-chars=<字符位置> 指定要比较的字符。

  • --help 显示帮助。

  • --version 显示版本信息。

  • [输入文件] 指定已排序好的文本文件。如果不指定此项,则从标准读取数据;

  • [输出文件] 指定输出的文件。如果不指定此选项,则将内容显示到标准输出设备(显示终端)。

cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。

如果不指定 File 参数,cut 命令将读取标准输入。必须指定 -b、-c   或 -f 标志之一

  • -b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。

  • -c :以字符为单位进行分割。

  • -d :自定义分隔符,默认为制表符。

  • -f :与-d一起使用,指定显示哪个区域。

  • -n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的

    范围之内,该字符将被写出;否则,该字符将被排除

正则表达式:来获取一些精确的数据,正则表达式是通用的,正则表达式可以跟 geep     sed     awk 正则表达式分类:                                 基础正则表达式:
  ^        代表以谁开头        ^dgf     
 $  代表以谁开头        dgf$
 . 代表任意一个单个字符        d. f
重复前面的字符0次到多次
  .* 所有字符串(任意长度、任意字符)
        转义符     .
  [n,]  匹配前面的字符出现n次        gtep "do[3]g"  hehe
[。n]  匹配前面的字符最多出现n次
  [n,m]   匹配前边的字符最少n次,最多m次
      【】匹配包含在其中的任意一个字符
【^】不匹配包含在其中的任意一个字符

                                扩展正则表达式:                                                                 grep    -E    ||    egrep
+前面的字符最少出现1次
  ?前面的字符最多出现1次
()匹配包含括号中的内容

      linux    grep    命令         -a 或 --text : 不要忽略二进制的数据。
  • -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行之后的内容。
  • -b 或 --byte-offset : 在显示符合样式的那一行之前,标示出该行第一个字符的编号。
  • -B<显示行数> 或 --before-context=<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前的内容。
  • -c 或 --count : 计算符合样式的列数。
  • -C<显示行数> 或 --context=<显示行数>或-<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前后的内容。
  • -d <动作> 或 --directories=<动作> : 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
  • -e<范本样式> 或 --regexp=<范本样式> : 指定字符串做为查找文件内容的样式。
  • -E 或 --extended-regexp : 将样式为延伸的正则表达式来使用。
  • -f<规则文件> 或 --file=<规则文件> : 指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。
  • -F 或 --fixed-regexp : 将样式视为固定字符串的列表。
  • -G 或 --basic-regexp : 将样式视为普通的表示法来使用。
  • -h 或 --no-filename : 在显示符合样式的那一行之前,不标示该行所属的文件名称。
  • -H 或 --with-filename : 在显示符合样式的那一行之前,表示该行所属的文件名称。
  • -i 或 --ignore-case : 忽略字符大小写的差别。
  • -l 或 --file-with-matches : 列出文件内容符合指定的样式的文件名称。
  • -L 或 --files-without-match : 列出文件内容不符合指定的样式的文件名称。
  • -n 或 --line-number : 在显示符合样式的那一行之前,标示出该行的列数编号。
  • -o 或 --only-matching : 只显示匹配PATTERN 部分。
  • -q 或 --quiet或--silent : 不显示任何信息。
  • -r 或 --recursive : 此参数的效果和指定"-d recurse"参数相同。
  • -s 或 --no-messages : 不显示错误信息。
  • -v 或 --invert-match : 显示不包含匹配文本的所有行。
  • -V 或 --version : 显示版本信息。
  • -w 或 --word-regexp : 只显示全字符合的列。
  • -x --line-regexp : 只显示全列符合的列。
  • -y : 此参数的效果和指定"-i"参数相同。
  • sed 是一种新型的,非交互式的编辑器。
linux命令总结sed命令详解 - 琴酒网络 - 博客园         sed命令解释 sed        选项    “动作           文件          选项:                         -l        修改源文件内容                      -n       打印文件内容                      -e        当有多个动作     动作:                        p        查看                        d        删除                         l        插入                         a        追加                         s/源/新/g    替换

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/866370.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号