SHELL脚本的语法知识3

①管理Linux

  w  查看当前系统的负载

  /proc/cpuinfo  保存服务器CPU相关信息

  grep -c 'processor' /proc/cpuinfo  计算服务器CPU个数

  vmstats  监控系统状态

  top  显示进程所占系统资源

  sar  监控系统状态

    sar -n DEV  查看网卡流量

  xargs  把其他命令的输出作为其后命令的输入

    find ./ -mtime +10 | xargs rm

    find *.txt | xargs -n1 -i{} mv {} {}_bak

      把后缀为.txt的文件全部修改为后缀为.txt_bak;-n1表示一个一个对象去处理;-i{}表示将每个对象用{}代替

  -exec  常与find合用

    find ./* -exec mv {} {}_bak \;  把当前目录下的文件的文件名都添加_bak;{}表示每个文件对象

  nohup  不挂断运行命令

    nohup sh task.sh &

      有时候即使脚本在后台运行,当用户退出登录以后,脚本也会退出,使用nohup命令以后,脚本就会继续运行下去而不会挂断

  tar [-zjxcvfpP] file

    -z gzip压缩  -j bzip2压缩  -x 解包或者解压缩  -t 查看tar包里面的内容  -c 建立一个tar包或者压缩文件包  -v 可视化

    -f 压缩时带文件名表示压缩包名称;解压时带文件名表示要解压的文件;如果有-f,把f写到最后

    -p 保留源文件属性  -P 可以使用绝对路径  --exclude filename 解压缩时不要讲filename文件包括在内

  gzip  压缩工具

    gzip [-d#] file

      压缩file文件,后缀名将变成file.gz;-d在解压缩时使用;-#表示压缩等级,#值在1-9之间,1最差,9最好,默认6;gzip不可以压缩目录

  bzip2 [-dz] file

    -d用户解压缩;-z用于压缩,可省略;与gzip一样不可以压缩目录

②vim(vim的命令与vi有些并不一致)

  光标的移动

    h * 左  j * 下  k * 上  l * 右  备注:每次移动一个字符

    0|shift+6 * 行首  shift+4 * 行尾  gg * 首行  G * 尾行  n+G * 第n行  

    ctrl+f | PgUp * 向下移动一页  ctrl+b | PgDn * 向上移动一页

  查找与替换

    /pattern * 向下查找  ?pattern * 向上查找  n * 向下查找时为查找下一个;向上查找时为查找上一个  N * 向下查找时为查找上一个;向上查找时为查找下一个

    :[a,b]s/pattern/replace/[g] * 查找第a行至第b行的pattern并替换为replace;不指定行范围则只查找光标所在行;第一行至最后一行写法1,$

  删除、复制和粘贴

    x * 向后删除一个字符  X * 向前删除一个字符  dd * 删除光标所在行  n+dd * 删除光标所在向下n行

    yy * 复制光标所在行  n+yy * 复制光标所在向下n行  备注:n+yy命令不太靠谱

    p * 粘贴在光标所在行的下面  P * 粘贴在光标所在行的上面

  其他操作

    u * 撤销  :e! * 恢复到文档的原始状态  

    :w * 保存  :q * 退出  :w! | :q! * 强制保存或强制退出  :wq | ZZ * 保存后退出  :wq! * 强制保存并退出

  进入编辑模式

    i * 当前字符前插入字符  a * 当前字符后插入字符  I * 当前行首插入字符  A * 当前行尾插入字符  o * 当前行下面插入新行  O * 当前行上面插入新行

    :w filename * 编辑后的文档另存为filename

posted on 2015-01-28 18:41  四道水巷  阅读(123)  评论(0)    收藏  举报

导航