| ÂÛ̳ע²á| ¼ÓÈëÊÕ²Ø | ÉèΪÊ×Ò³| RSS
Google
Äúµ±Ç°µÄλÖãºÊ×Ò³ > LinuxƵµÀ > Linux¿ª·¢Çø > SHELL

shell»ù´¡Ê®¶þƪ

ʱ¼ä£º2006-06-28 22:06:04  À´Ô´£º  ×÷Õߣº
¬¸ú¶à¸ö±í´ïʽ°¡ KYKLinuxÁªÃË
[sam@Linux_chenwy sam]$ sed -n -e '/music/p' -e '/music/='  quote.txt  KYKLinuxÁªÃË
It was an evening of splendid music and company.  KYKLinuxÁªÃË
2KYKLinuxÁªÃË
KYKLinuxÁªÃË
  KYKLinuxÁªÃË
-f script-file, --file=script-file
KYKLinuxÁªÃË
  KYKLinuxÁªÃË
              add the contents of script-file to the commands to be executed KYKLinuxÁªÃË
½Å±¾Îļþ
KYKLinuxÁªÃË
  KYKLinuxÁªÃË
       -i[suffix], --in-place[=suffix]
KYKLinuxÁªÃË
  KYKLinuxÁªÃË
              edit files in place (makes backup if extension supplied) KYKLinuxÁªÃË
¼ÅįÁÒ»ð˵¹ý£ºÊÇÖ±½Ó¸ü¸ü¸ÄÔ­Îļþ£¬²»¹ý×îºÃÓÃÖØ¶¨Ïò
KYKLinuxÁªÃË
  KYKLinuxÁªÃË
       -l N, --line-length=N KYKLinuxÁªÃË
  KYKLinuxÁªÃË
              specify the desired line-wrap length for the `l' command KYKLinuxÁªÃË
KYKLinuxÁªÃË
  KYKLinuxÁªÃË
       -r, --regexp-extended KYKLinuxÁªÃË
  KYKLinuxÁªÃË
              use extended regular expressions in the script. KYKLinuxÁªÃË
  KYKLinuxÁªÃË
       -s, --separate KYKLinuxÁªÃË
  KYKLinuxÁªÃË
              consider  files  as  separate rather than as a single continuous KYKLinuxÁªÃË
              long stream. KYKLinuxÁªÃË
  KYKLinuxÁªÃË
KYKLinuxÁªÃË
       -u, --unbuffered KYKLinuxÁªÃË
  KYKLinuxÁªÃË
              load minimal amounts of data from the input files and flush  the KYKLinuxÁªÃË
              output buffers more often KYKLinuxÁªÃË
  KYKLinuxÁªÃË
       --help display this help and exit KYKLinuxÁªÃË
  KYKLinuxÁªÃË
       -V, --version KYKLinuxÁªÃË
              output version information and exit KYKLinuxÁªÃË
  KYKLinuxÁªÃË
       If  no  -e, --expression, -f, or --file option is given, then the first KYKLinuxÁªÃË
       non-option argument is taken as  the  sed  script  to  interpret.   All KYKLinuxÁªÃË
       remaining  arguments  are  names  of input files; if no input files are KYKLinuxÁªÃË
       specified, then the standard input is read. KYKLinuxÁªÃË
  KYKLinuxÁªÃË
       E-mail bug reports to: bonzini@gnu.org .  Be sure to include  the  word KYKLinuxÁªÃË
       ``sed'' somewhere in the ``Subject:'' field.KYKLinuxÁªÃË
ÀýÒ»£ºsed·ÖÓò KYKLinuxÁªÃË
http://bbs.chinaunix.net/forum/24/20041207/461745.html KYKLinuxÁªÃË
KYKLinuxÁªÃË
1C2  KYKLinuxÁªÃË
1C3  KYKLinuxÁªÃË
1C31  KYKLinuxÁªÃË
1C32  KYKLinuxÁªÃË
1C4  KYKLinuxÁªÃË
2C3  KYKLinuxÁªÃË
2C4  KYKLinuxÁªÃË
1D1  KYKLinuxÁªÃË
1D10  KYKLinuxÁªÃË
1D12  KYKLinuxÁªÃË
1D2  KYKLinuxÁªÃË
1D3  KYKLinuxÁªÃË
1D31  KYKLinuxÁªÃË
1RC2  KYKLinuxÁªÃË
1RC20  KYKLinuxÁªÃË
1RC21  KYKLinuxÁªÃË
1RC3  KYKLinuxÁªÃË
1RC31  KYKLinuxÁªÃË
1WR1  KYKLinuxÁªÃË
1WR2  KYKLinuxÁªÃË
1WR20  KYKLinuxÁªÃË
1WR21  KYKLinuxÁªÃË
1WR23  KYKLinuxÁªÃË
...  KYKLinuxÁªÃË
KYKLinuxÁªÃË
ÅÅÐòºó  KYKLinuxÁªÃË
[file2.txt]  KYKLinuxÁªÃË
1C2  KYKLinuxÁªÃË
1C3  KYKLinuxÁªÃË
1C4  KYKLinuxÁªÃË
1C31  KYKLinuxÁªÃË
1C32  KYKLinuxÁªÃË
2C3  KYKLinuxÁªÃË
2C4  KYKLinuxÁªÃË
1D1  KYKLinuxÁªÃË
1D2  KYKLinuxÁªÃË
1D3  KYKLinuxÁªÃË
1D10  KYKLinuxÁªÃË
1D12  KYKLinuxÁªÃË
1D31  KYKLinuxÁªÃË
1RC2  KYKLinuxÁªÃË
1RC3  KYKLinuxÁªÃË
1RC20  KYKLinuxÁªÃË
1RC21  KYKLinuxÁªÃË
1RC31  KYKLinuxÁªÃË
1WR1  KYKLinuxÁªÃË
1WR2  KYKLinuxÁªÃË
1WR20  KYKLinuxÁªÃË
1WR21  KYKLinuxÁªÃË
1WR23  KYKLinuxÁªÃË
...  KYKLinuxÁªÃË
KYKLinuxÁªÃË
¹æÂÉ£º½«Ã¿ÐзֳÉÈý²¿·Ö£º ¡°Êý×Ö1¡± ¡°×Ö·û´®¡± ¡°Êý×Ö2¡±  KYKLinuxÁªÃË
µÚÒ»¡¢Èý×ֶΰ´numberic˳ÐòÅÅÐò£¬Öм䲿·Ö°´×ÖĸÅÅÐò  KYKLinuxÁªÃË
KYKLinuxÁªÃË
µÚ¶þ¸ö×Ö¶ÎΪÖ÷¹Ø¼ü×Ö£¬µÚÈý¸ö×Ö¶ÎΪ´Î¹Ø¼ü×Ö£¬ È»ºóÊǵÚÒ»¸ö×Ö¶Î KYKLinuxÁªÃË
KYKLinuxÁªÃË
$ cat file |sed 's/^([0-9]*)([A-Z]*)([0-9]*)/1 2 3 /g' |sort +1 -2 +2n +0  -1
KYKLinuxÁªÃË
ÒÔ¿Õ¸ñ»®·ÖÓòÔÙÅÅÐò KYKLinuxÁªÃË
KYKLinuxÁªÃË
KYKLinuxÁªÃË
Àý¶þ£º´¦ÀíÈÕÆÚ KYKLinuxÁªÃË
http://bbs.chinaunix.net/forum/24/20041207/462196.html KYKLinuxÁªÃË
KYKLinuxÁªÃË
123456 345678 2005.05.06 123456  KYKLinuxÁªÃË
123456 234567 2003.5.6 234567  KYKLinuxÁªÃË
345555 987644 2003.4.23 543333  KYKLinuxÁªÃË
555555 999999 2004.11.5 999999  KYKLinuxÁªÃË
KYKLinuxÁªÃË
Òª½«µÚËÄÁÐÊý¾Ý±ä³ÉÕý³£µÄÄêÔÂÈÕ£¬½«2003.5.6 ±ä³É2003.05.0;  KYKLinuxÁªÃË
2003.4.23±ä³É2003.04.23£» 2004.11.5±ä³É 2004.11.05  KYKLinuxÁªÃË
KYKLinuxÁªÃË
cat file | sed -e :a -e 's/-([0-9])([- ])/-012/;ta' 
KYKLinuxÁªÃË
KYKLinuxÁªÃË
or  KYKLinuxÁªÃË
KYKLinuxÁªÃË
cat file | sed 's/-([0-9])-/-01-/; s/-([0-9]) /-01 /'
 5/5   |‹ ‹‹ 3 4 5

À´¶¥Ò»ÏÂ
½ü»ØÊ×Ò³
·µ»ØÊ×Ò³
·¢±íÆÀÂÛ ¹²ÓÐÌõÆÀÂÛ
Óû§Ãû: ÃÜÂë:
ÑéÖ¤Âë: ÄäÃû·¢±í
Ïà¹ØÎÄÕÂ
    ÎÞÏà¹ØÐÅÏ¢
À¸Ä¿¸üÐÂ
À¸Ä¿ÈÈÃÅ