1. 程式人生 > >阿銘每日一題 day 3 20180113

阿銘每日一題 day 3 20180113

body nbsp awk seq 阿銘 pos 獲取 .com 刪除

技術分享圖片

day3=參考答案=~ps.不是唯一答案哦 假設文本名字叫做1.txt,並且文本行數大於10,腳本如下

 1 #!/bin/bash
 2 
 3 ##先獲取該文本的行數
 4 
 5 nu=`wc -l 1.txt |awk ‘{print $1}’`
 6 
 7 ##對前5行進程處理
 8 
 9 for i in `seq 1 5`
10 
11 do
12 
13 ##使用sed把每一行的內容賦值給變量
14 
15 l=`sed -n “$i”p 1.txt`
16 
17 ##用grep 判定是否匹配字母,-v取反,-q不輸出內容
18 
19 if echo
$l |grep -vq ‘[a-zA-Z]’ 20 21 then 22 23 echo $l 24 25 fi 26 27 done 28 29 ##對6-10行做刪除字母處理 30 31 for i in `seq 6 10` 32 33 do 34 35 l=`sed -n “$i”p 1.txt` 36 37 echo $l|sed ‘s/[a-zA-Z]//g’ 38 39 done 40 41 ##剩余的直接輸出 42 43 for i in `seq 11 $nu` 44 45 do 46 47 sed -n “$i”p 1.txt 48 49 done

##若想把更改內容寫入到1.txt,還需要把以上內容重定向到一個文本中,然後刪除1.txt,再把剛剛重定向的文件更名為1.txt

阿銘每日一題 day 3 20180113