2013-04-16 68 views
-1

我的問題是:由於乳膠wonderfulness,我經常帶行號的錯誤,但沒有跡象表明這些文件被簡稱:顯示的幾個文件單一線路在命令行

l.127 \end{table} 

有一個允許我只看到輸出行127的命令,比如對於多個文件(最好是通配符)。

這可能很容易寫在Python或類似的,我只是想知道是否有一個簡單的方法與普通的shell命令。

注:一個簡單的方法用一個文件來做到這一點(如下面指出的)

head -n 127 filename | tail -n 1 

,但失敗了多個文件。

OK,剛剛意識到一個bash循環是一個選項:

for i in `ls $1`; 
    do echo $i; head -n $2 $1 | tail -n 1; 
done; 

與語法執行

source lineno.sh 127 filenames 
+0

看起來很有趣,要找到這樣的shell腳本。使其可執行並運行它:'lineno.sh 127文件名'。當我將這些命令放在我的$ HOME/bin目錄中時,我刪除了'.sh',這樣我就可以簡單地運行:'lineno 127 filenames'。 –

回答

1
使用awk

另外:

​​
1

它看起來很滑稽像這樣找到一個shell腳本。使其可執行文件並運行它:

lineno.sh 127 filenames 

我刪除.sh當我把這些命令在我$HOME/bin目錄中,以便我可以簡單地運行:

lineno 127 filenames 

腳本是次優的;你應該避免使用這樣的ls(如果它們中的任何一個包含空格或其他特殊字符,它會在你的文件名上產生快樂的地獄)。我可能會加強參數檢查(報告正確的用法,堅持至少第二個參數),但它會合理工作。

相關問題