笔/面试中常考到的一些linux脚本/管理命令

来源:asp之家 时间:2009-11-21 12:14:00 

  awk #对字段的处理是sed,grep不能实现的。

  awk -F , 'NR==1,NR==2 {print $1 $2}' file, 打印第一行到第二行中,以‘,’为分隔符,每行第一,二个字段的值。

  print可以改为printf,不过后者不输出换行符。NR:已经读出的记录数,NF:当前记录中的字段个数。

  awk '/main/' file or awk '/sun/{print}' filename #显示文件中包含main的行。

  sed #替换s,删除d,插入i(a),修改c,截取显示: sed -n '2,6p' file

  #echo "a b c a" | sed 's/a/d/g' ,注意有没有g的差别。

  #sed -n '2,3p' file,只显示第2,3行,去掉-n试试,sed 默认将来自源文件的每一行显示到屏幕上。-n就是用来覆盖这个操作的。

  #sed '/main/ d' file #从文件中删除包含main的行。sed '1,3 d' file,删除前三行。

  #sed '1i shit' file, sed '1a shit' file,前者是插入在第i行,后者是在第i行后插入。

  tr #删除空行:tr -s ["n"] < file,小写转大写:tr ["a-z"] ["A-Z"] < file,删除字符&lsquo;a&rsquo;:tr -d ["a"] < file

  grep

  sort #sort -t: +1 -2 b (-r倒序输出) (-u输出唯一行),-t: 表示用:作为分隔符,+1,-2:指定字段作为key,从0开始.

  find

  #find path -name filename;

  # find path -type x;

  -type x 查找类型为 x 的文件,x 为下列字符之一:

  b 块设备文件

  c 字符设备文件

  d 目录文件

  p 命名管道(FIFO)

  f 普通文件

  l 符号链接文件(symbolic links)

  s socket文件

  -xtype x 与 -type 基本相同,但只查找符号链接文件。

  # find ./code -type f -exec ls -il {} ;

  #exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{ },一个空格和一个,最后是一个分号。

  #在使用find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行。但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出现 溢出错误。错误信息通常是&ldquo;参数列太长&rdquo;或&ldquo;参数列溢出&rdquo;。这就是xargs命令的用处所在,特别是与find命令一起使用。

  find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。这样它可以先处理最先获取的一部分文件,然后是下一批,并如此继续下去。

  #find ./code -type f -print | xargs file

  wc#wc -lcw filename, l:统计行数,c:统计字节数,w:统计字数

  uniq #对相邻行操作;-d 仅显示重复行;-u 仅显示不重复的行;因为它只能处理相邻行,所以一般跟sort配合。

  cut #从一个文本文件或者文本流提取数据.

  cut -f 1-2 -d: filename #编号从1开始

  -d: 以:作为分隔符,默认是tab.

  -b ,-c ,-f:字节byte,字符character,字段filed.

  1-2,表示范围.N:只有第N项;N-:从第N项一直到行尾;N-M:第N项到第M项(包括M);-M:从第一项到第M项;-:所有项;

  cat/tac #cat与tac显示顺序相反

  tee #cmd1 | tee file1...N | cmd2, 命令1的输出送给tee,tee 的输出送给file1...N,并且作为命令2的输入。

  tail/head #head -3 file,tail -3 file,显示前三行,后三行

  eval#eval cmd[;cmd;cmd],把参数作为命令去执行

  expr #expr args,比如,a=`expr $b+1`

  let #let express-list, 比如,let "a=b+c"

  xargs #将输入输出给xargs后面的命令,作为那个命令的参数。

  正则表达式

  colrm #命令从文件中除去选定的列。colrm [开始行数编号<结束行数编号>]。colrm 2 5 < filename

  rev #把字符串反序。

  [sword@localhost ~]$ temp=/home/sword

  [sword@localhost ~]$ basename $temp

  sword

  [sword@localhost ~]$ dirname $temp

  /home

  [sword@localhost ~]$ basename /home/sword.c .c

  sword

  ls        

标签:
0
投稿

猜你喜欢

  • VMWare12中安装苹果Mac OS X图文教程

    2023-01-25 01:26:21
  • 解并实现 IBM Lotus Notes 的本地邮件副本

    2010-01-04 19:03:00
  • 设计有别 英文建站与中文建站注意的细节

    2009-02-05 16:35:00
  • 英文网站建设与中文网站建设区别之设计篇

    2008-12-12 12:48:00
  • Linux下的多线程编程(三)

    2022-07-11 05:57:52
  • google广告优化经验:让广告点击率从0.5%到3.0%

    2008-06-03 13:49:00
  • GoDaddy:如何拷贝Account Manager的文件

    2010-04-30 13:19:00
  • 网站贵在坚持 美好的理想需要坚持和努力

    2008-05-11 19:31:00
  • parked、sedopro和AdSense for domains三家停放商对比

    2009-04-15 16:07:00
  • 耐心与细致 搜索引擎优化的六个基础步骤

    2008-12-02 10:55:00
  • Discuz论坛首页和内容页的Title分别定义

    2010-02-20 13:06:00
  • 关于技术员的笑话

    2008-06-27 13:22:00
  • Google AdSense西联汇款问题帐户 延迟一周付款

    2007-10-28 16:07:00
  • apache 配置文件解说

    2023-01-19 03:35:59
  • Linux xargs命令的使用

    2023-03-10 10:22:04
  • 如何在IIS上搭建WAP网站[图文]

    2007-08-13 15:21:00
  • 百度贴吧里诽谤帖纷飞 吓跑多个客户生意泡汤

    2009-10-15 09:36:00
  • 网站需要多少成本

    2010-01-25 12:30:00
  • Linux系统 为命令配置别名的方法

    2023-10-13 00:20:15
  • 雅虎挑战Google PR

    2008-01-22 12:23:00
  • asp之家 网站运营 m.aspxhome.com