linux shell for生产案例

1.在linux中批量修改文件名,将sku_102999_1_finished.jpg中的"_finished"去掉

准备数据:

touch stu_102999_1_finished.jpg stu_102999_2_finished.jpg stu_102999_3_finished.jpg

touch stu_102999_4_finished.jpg stu_102999_5_finished.jpg

   方法一:

    #!/bin/sh

    cd /test

   for file in `ls *.jpg`
   do
       mv $file `echo $file|sed 's/_finished//g'`

   done

恢复测试数据:ls|awk -F "." '{print "mv",$0,$1"_finished."$2}'|bash

方法二:awk

方法三:rename

rename "_finished" "" *.jpg

2.批量去掉测试数据所用的bd字符

touch bd502.html bd503.html bd504.html

rename "bd" "" *.html

3.批量解压缩脚本

cd /lamp

ls *.tar.gz>ls.log

for i in $(cat ls.log)

do

tar -zxf $i &>/dev/null

done

rm -rf /lamp/ls.log

4.通过脚本实现sshd,rsyslog,crond,network,sysstat服务在开机时自启动

方法一:先将3级别下都关闭,在将那几个需要的开启即可

LANG=en

for boy in `chkconfig --list|grep 3:on|awk '{print $1}'`;do chkconfig --level 3 $boy off;done

for boy in crond network rsyslog sshd sysstat;do chkconfig --level 3 $boy on;done

chkconfig --list|grep 3:on

方法二:把3下已开启但不需要的服务都关掉就好

for boy in `chkconfig --list|grep "3:on"|awk '{print $1}'|grep -vE "crond|network|sshd|rsyslog|sysstat"`;do chkconfig $boy off;done

方法三:

chkconfig --list|grep "3:on"|grep -vE "crond|network|sshd|rsyslog|sysstat"|awk '{print "chkconfig" "$1" "off"}'|bash

猜你喜欢

转载自blog.csdn.net/qq_34412985/article/details/79932413