Linux运维需要了解的17个实用技巧

1、查找当前目录下所有以.tar结尾的文件然后移动到指定目录:


  1. find . -name “*.tar” -exec mv {}./backup/ ; 

注解:find –name 主要用于查找某个文件名字,-exec 、xargs可以用来承接前面的结果,然后将要执行的动作,一般跟find在一起用的很多,find使用我们可以延伸-mtime查找修改时间、-type是指定对象类型(常见包括f代表文件、d代表目录),-size 指定大小,例如经常用到的:查找当前目录30天以前大于100M的LOG文件并删除。


  1. find  . -name "*.log" –mtime +30 –typef –size +100M |xargs rm –rf {}; 

2、批量解压当前目录下以.zip结尾的所有文件到指定目录:


  1. for i  in  `find . –name “*.zip”–type f `  
  2. do  
  3. unzip –d $i /data/www/img/  
  4. done 

注解:forI in (command);do … done为for循环的一个常用格式,其中I为变量,可以自己指定。

3、sed常用命收集:test.txt做测试


  1. 如何去掉行首的.字符: sed-i 's/^.//g' test.txt  
  2. 在行首添加一个a字符: sed's/^/a/g'    test.txt  
  3. 在行尾添加一个a字符: sed's/$/a/'     tets.txt  
  4. 在特定行后添加一个c字符:sed '/wuguangke/ac' test.txt  
  5. 在行前加入一个c字符: sed'/wuguangke/ic' test.txt 

更多sed命令请查阅相关文档。

4、如何判断某个目录是否存在,不存在则新建,存在则打印信息。


  1. if  
  2. [! –d /data/backup/];then  
  3. Mkdir–p /data/backup/  
  4. else  
  5. echo  "The Directory alreadyexists,please exit"  
  6. fi 

注解:if…;then …else ..fi:为if条件语句,!叹号表示反义“不存在“,-d代表目录。

5、监控linux磁盘根分区,如果根分区空间大于等于90%,发送邮件给Linux SA

(1)、打印根分区大小


  1. df -h |sed -n '//$/p'|awk '{print $5}'|awk –F ”%” '{print $1}' 

注解:awk ‘{print $5}’意思是打印第5个域,-F的意思为分隔,例如以%分隔,简单意思就是去掉百分号,awk –F. ‘{print $1}’分隔点.号。

(2)、if条件判断该大小是否大于90,如果大于90则发送邮件报警

【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章