Shell脚本常用技法集合(持续更新)

1. 引言

有些技法一段时间不使用就忘了,在此,开一个博客专门记录一下,以备不时之需。

2. 脚本执行输出信息重定向

2.1 普通输出信息重定向到文件

  • 非追加模式
例子1:ps -ef | grep redis > redis.log

例子2:echo "hello world!" > redis.log
  • 追加模式

上面的方式,在重定向的文件里,新的信息会覆盖旧的信息:上面两条脚本一起执行,redis.log里只会有”hello world!“

 如果采用”追加“方式,可采用如下语句:

ps -ef | grep redis >> redis.log

echo "hello world!" >> redis.log
  • 重定向到">/dev/null",屏蔽信息
例子1:ps -ef | grep redis > /dev/null

2.2 重定向标准错误

ps ax | grep -i 'redis' | grep -v grep | awk '{print $1}' | xargs kill -9

如上例子,如果当前系统上无带有"redis"关键词的进程,那么将会报错:

kill: no process ID specified
Try `kill --help' for more information.
  • 通过添加"2>/dev/null"可将报错日志屏蔽,如下所示:
ps ax | grep -i 'redis' | grep -v grep | awk '{print $1}' | xargs kill -9 2>/dev/null
  • 当然,也可以将标准错误重定向到文件中,如下所示:
ps ax | grep -i 'redis' | grep -v grep | awk '{print $1}' | xargs kill -9 2>redis.log


猜你喜欢

转载自blog.csdn.net/jin_kwok/article/details/80337042
今日推荐