grep匹配与过滤 学习笔记-2

grep提取含有IP的行

  1. root@debian:~# ifconfig eth0|grep "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"
  2. inet addr:192.168.0.4  Bcast:192.168.0.255  Mask:255.255.255.0
  1. root@debian:~# ifconfig eth0|grep -E "([0-9]{1,3}\.){3}[0-9]"
  2. inet addr:192.168.0.4  Bcast:192.168.0.255  Mask:255.255.255.0

禁止显示错误信息

  1. -s, --no-messages
  2. Suppress error messages about nonexistent or unreadable filesPortability noteunlike  GNU  greptraditional
  3. grep  did  not  conform to POSIX.2, because traditional grep lacked a -q option and its -s option behaved like GNU
  4. greps -q optionShell scripts intended to be portable to traditional grep should  avoid  both  -q  and  -s  and
  5. should redirect output to /dev/null instead.

Read more »

grep匹配与过滤 学习笔记-1

grep的范围匹配 “[]”

  1. root@debian:~# echo -e 123"\n"124"\n"abc"\n"abd|grep "12[34]"
  2. 123
  3. 124

行首 匹配1a开头 “^”
不匹配2a开头 “^[^]”

  1. root@debian:~# echo -e 123"\n"124"\n"abc"\n"abd|grep "^[1a]"
  2. 123
  3. 124
  4. abc
  5. abd

  1. root@debian:~# echo -e 123"\n"124"\n"abc"\n"abd|grep "^[^2a]"
  2. 123
  3. 124

Read more »

shell编程入门_bash自动ssh到远程机器

已经生成ssh的key,所以ssh的时候是不用输入密码的。
用shell来做ssh连接到远程机器,然后压缩打包某个目录的脚本。

  1. #!/bin/sh
  2. tar zcfP /root/etc.tar.gz /etc/
  3. ip="192.168.0.7"
  4. echo 文件正在传输,稍候将进行解压缩..
  5. scp etc.tar.gz $ip:/root/test/
  6. ssh -tt $ip  << EOF >/dev/null 2>&1
  7. cd /root/test
  8. tar zxf etc.tar.gz -C /root/123
  9. sleep 2
  10. exit
  11. EOF
  12. echo 准备退出...
  13. sleep 2


linux的shell下最简单的计算器

linux shell 制作最简单的计算器!

  1. #!/bin/sh
  2. echo '简易计算器  例如 1+3'
  3. read input
  4. echo $[input]


shell编程入门_select

shell脚本里的菜单选项
制作简单的选项,会适当的增强脚本的可用性,例如一套工作方案,放在A,另外一套放在B

  1. #!/bin/sh
  2. echo "请选择:"
  3. xx="你好 大家好 退出"
  4. select a in $xx;do
  5. if [ "$a" = "你好" ];then
  6. echo 你好
  7. elif [ "$a" = "大家好" ];then
  8. echo 大家好
  9. elif [ "$a" = "退出" ];then
  10. exit
  11. else
  12. echo 错误的选项
  13. fi
  14. done


7 7...«34567»