系統(tǒng)之家 - 系統(tǒng)光盤下載網(wǎng)站!

當(dāng)前位置:系統(tǒng)之家 > 系統(tǒng)教程 > Linux Shell文本處理命令

Linux Shell文本處理命令匯總(7)

時間:2014-12-31 15:50:39 作者:qipeng 來源:系統(tǒng)之家 1. 掃描二維碼隨時看資訊 2. 請使用手機瀏覽器訪問: https://m.xitongzhijia.net/xtjc/20141231/33843.html 手機查看 評論

  •確定文本

  打印處于start_pattern 和end_pattern之間的文本;

  代碼如下:

  awk ‘/start_pattern/, /end_pattern/’ filename

  eg:

  代碼如下:

  seq 100 | awk ‘/13/,/15/’

  cat /etc/passwd| awk ‘/mai.*mail/,/news.*news/’

  awk常用內(nèi)建函數(shù)

  index(string,search_string):返回search_string在string中出現(xiàn)的位置

  sub(regex,replacement_str,string):將正則匹配到的第一處內(nèi)容替換為replacement_str;

  match(regex,string):檢查正則表達式是否能夠匹配字符串;

  length(string):返回字符串長度

  代碼如下:

  echo | awk ‘{”grep root /etc/passwd“ | getline cmdout; print length(cmdout) }’

  printf 類似c語言中的printf,對輸出進行格式化

  eg:

  代碼如下:

  seq 10 | awk ‘{printf ”-》%4s\n“, $1}’

  迭代文件中的行、單詞和字符

  1. 迭代文件中的每一行

  •while 循環(huán)法

  代碼如下:

  while read line;

  do

  echo $line;

  done 《 file.txt

  改成子shell:

  cat file.txt | (while read line;do echo $line;done)

  •awk法:

  cat file.txt| awk ‘{print}’

  2.迭代一行中的每一個單詞

  代碼如下:

  for word in $line;

  do

  echo $word;

  done

  3. 迭代每一個字符

  ${string:start_pos:num_of_chars}:從字符串中提取一個字符;(bash文本切片)

  ${#word}:返回變量word的長度

  代碼如下:

  for((i=0;i《${#word};i++))

  do

  echo ${word:i:1);

  done

  上面就是Linux中文本處理命令的詳細介紹了,因為涉及的命令較多,本文只是做了簡單的介紹,如果想深入了解某個命令用法的話,不妨關(guān)注下系統(tǒng)之家吧。

發(fā)表評論

0

沒有更多評論了

評論就這些咯,讓大家也知道你的獨特見解

立即評論

以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場

其他版本軟件

熱門教程

人氣教程排行

Linux系統(tǒng)推薦

官方交流群 軟件收錄