2011年9月28日星期三

经典实用的Shell命令

1.[root@desktop huage]# yum provides */filename
   查找filename是由哪个RPM包提供

2.[root@desktop huage]# locate filename
   快速查找名为filename的文件

3.[root@desktop huage]#rename .JPG .jpg *.JPG
   批量修改文件的后缀名(适用于redhat分支)

4.[root@desktop huage]#ls |grep jpg|awk -F'.' '{print $1}'|xargs -i mv {}.jpg {}.JPG
   批量修改文件的后缀名(两组单引号之间有个空格)

   [root@desktop huage]# ls |grep jpg|awk -F'.' '{print $1}'|xargs -i -t mv {}.jpg {}.JPG
   批量修改文件的后缀名(-t:详细显示xargs命令后面的操作)

5.[root@Server huage]# ls |grep -v  rpm$ |xargs -i -t rm -rf {}
   删除当前目录下所有后缀不是rpm的文件(包括目录文件)

6.[root@Server huage]# ls -F |egrep -v "rpm$|/$" |xargs -i -t rm -rf {}
   删除当前目录下所有后缀不是rpm的文件(不包括目录文件)

7.[root@Server huage]# find . -type f -print |grep -v rpm$ |xargs -i -t rm -rf {}
   删除当前目录及其子目录下所有后缀不是rpm的文件

8.[root@Server huage]# ls -lSh
   用易于人类读写的单位按从大到小的顺序排序(主要用于文件的排序,不统计目录的具体大小)

9.[root@Server huage]# ls -lShr
   用易于人类读写的单位按从小到大的顺序排序(主要用于文件的排序,不统计目录的具体大小)

10.[root@Server huage]# ls |xargs du -sh |sort -h
     用易于人类读写的单位按从小到大的顺序排序(包括目录)

11.[huage@fedora ~]$ script
     记录接下来的所有终端输出

12.[huage@fedora ~]$ script huage
     记录所有终端输出到文件huage

13.[huage@fedora ~]$ time shell-command
     对shell-command命令计时,time后直接跟shell命令即可

14.[root@Server tmp]# find . -type f -exec chmod 644 {} \;
     或者:
     [root@Server tmp]# find . -type f -exec chmod 644 {} +
     将当前目录及其子目录下的所有文件的权限设为644

15.[root@Server tmp]# find . -type d -exec chmod 755 {} \;
     或者:
     [root@Server tmp]# find . -type d -exec chmod 755 {} +
     将当前目录及其子目录的权限设为755

16.[root@fedora huage]# find . -type f |xargs chmod 644
     将当前目录及其子目录下的所有文件的权限设为644(如果目录名中包含空格,则chmod对该目录无效)

17.[root@fedora huage]# find . -type d |xargs chmod 755
     将当前目录及其子目录的权限设为755(如果目录名中包含空格,则chmod对该目录无效)

注:在18和19例中,如果文件(包括目录文件)名中包含空格,则chmod命令对该文件无效,实际上是xargs命令无法正确处理文件名中包含空格的文件和目录文件。

28.[root@fedora huage]# python -m SimpleHTTPServer
     通过python的SimpleHTTPServer模块来快速搭建一个HTTP Server,之后可以通过 
     http://server-ip:8000或者http://localhost:8000来访问

19.[root@fedora huage]#
mail admin@huage.com -s "Backuping HUA is successfully done" < /root/huage/backup
用一条命令来发送邮件给admin@huage.com,且主题为"Backuping HUA is successfully done",邮件正文内容为"/root/huage/backup"。

20.[root@fedora huage]# mail huage@gmail.com -s "Backuping ADG is successfully done" < /root/hauge/backup-adg -- -f admin@google.com -F "The Admin of Google"

      发送一封主题为"Backuping ADG is successfully done"、邮件正文为"/root/hauge/backup-adg"的内容、发件人为admin@google.com且发件人显示名称为"The Admin of Google"的邮件给huage@gmail.com

21.[root@fedora huage]# du -sh /home/huage/public_html |mail -s "Moving Successful" huage@gmail.com -- -f admin@google.com -F "The Admin of Google"

      发送一封以"Moving Successful"为主题、以"du -sh /home/huage/public_html"输出内容为邮件正文、以admin@google.com为发件人且发件人的显示名称为"The Admin of Google"的邮件给huage@gmail.com

没有评论:

发表评论