看板 LinuxDev 關於我們 聯絡資訊
※ 引述《shadowjohn (3WA問題解決專家)》之銘言: : ※ 引述《JayLane (JL)》之銘言: : : 假設一個文件1.txt有100行 : : 我要印出其中的第 21到 30行 : : 除了 : : head -30 1.txt | tail -10 : : 外 : : 有沒有什麼指令可以直接叫出 第 21到 30行阿? : : 先謝謝回答 : _TMP='22,30p 42,50p'; for i in $_TMP;do sed -n $i 1.txt; done 寫一支用 php 去跑的 script 給你用~ 請將以下的內容存到 /usr/bin/3wa_file_readline.sh #!/usr/bin/env php <?php if($argc==1||$argc[2]=='-h') { echo "\n 這支程式可以讀檔案,並且指定行數呦~\n 使用方法如下:\n\n # {$argv[0]} [file] [pn,pn] [pn,pn]\n\n 如這個範例:\n\n # {$argv[0]} /etc/passwd 1,3 7,10\n\n 3WA 問題解決專家工作室\n\n"; exit(0); } if(file_exists($argv[1])==false) { echo "\n檔案不存在Orz\n"; exit(1); } $d=explode("\n",file_get_contents($argv[1])); for($i=2;$i<$argc;$i++){ $p=explode(',',$argv[$i]); if($p[0]>=$p[1]) { $p[0]^=$p[1]; $p[1]^=$p[0]; $p[0]^=$p[1]; } for($j=current($p);$j<=end($p);$j++){ echo $d[$j]."\n"; } } ?> 試玩看看~ [root@localhost tmp]# chmod +x /usr/bin/3wa_file_readline.sh [root@localhost tmp]# 3wa_file_read_line.sh 這支程式可以讀檔案,並且指定行數呦~ 使用方法如下: # /usr/bin/3wa_file_read_line.sh [file] [pn,pn] [pn,pn] 如這個範例: # /usr/bin/3wa_file_read_line.sh /etc/passwd 1,3 7,10 3WA 問題解決專家工作室 [root@localhost tmp]# cat a.txt 第0 第1 第2 第3 第4 第5 第6 第7 第8 第9 第10 [root@localhost tmp]# 3wa_file_read_line.sh a.txt 3,5 第3 第4 第5 [root@localhost tmp]# 3wa_file_read_line.sh a.txt 3,5 6,7 1,2 第3 第4 第5 第6 第7 第1 第2 啊~沒裝php就沒辦法嘍^^" -- 3WA訓練家的工作室 宗旨:諸葛單中,謝謝 個人佈弱格 網址:http://3wa.tw -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.185.88
JayLane:真的沒裝php耶 12/04 08:53