shell编程技巧和陷阱

 

先推荐两本经典书籍:

1、advanced bash scripting guide http://www.tldp.org/LDP/abs/abs-guide.pdf

2、Unix Power Tools  

豆瓣的一些点评 http://book.douban.com/subject/1469315/

一个在线地址 http://sys-admin.net/ebooks/unix3/upt/

 

1、cat 打开一个文件,并且输入到某个指定的字符串时自动结束,这里当输入ok时,输入自动结束,文件实际内容不包括ok。

$ cat>b.sh<<ok
> !#/bin/sh
> echo 'hello world'
> ok

2、tee命令,想到与复制,把数据同时输出到文件和标准输出

ll />a.txt
$ cat a.txt|tee a.txt.bak|grep usr|tee middle.txt|wc

 

3、ls / >/dev/null 2>&1 

 标准出错跟标准输出都写到/dev/null,相当于什么都不输出

4、进程替换 <() >()

应用举例,比如比较两台机器的某个配置文件

vimdiff <(ssh server1 cat abc.conf) <(ssh server2 cat abc.conf)

这样就不用都download到本地再比较

5、备份恢复文件例子,比如线上文件的备份与回滚

备份:

for file in $(ls); do

cp $file $file.bak

done

 还原:

for file in $(ls *.bak);do

cp $file ${file%%.bak}

done

 

转载于:https://www.cnblogs.com/argb/p/3452101.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值