2016-06-21 43 views
0

我有一個關於grep的問題。用grep檢索子字符串

我在asc文件中有一些地址數據作爲簡單文本。前30個字符是名稱。如果名稱短於30個字符,則空格將其填充以確保其長度爲30.在位置31處有一個空格,用於將名稱與下一個數據(地址)分開。地址之後也是一個空白和其他一些數據。我的計劃是檢索從索引32開始並繼續索引50的地址。我大多隻得到任何內容或從行首開始的數據。我嘗試了幾種方法,諸如

grep -iE '^.{30}' '.{8}$' myfile.asc 

grep –o -P '^.{31,34}' myfile.asc 

我不能搜索特定圖案,因爲每一個組數據是除了所述數據分離空格不同。是否有可能檢索我的子字符串,而不依賴於通過管道的其他方法?我更喜歡使用grep,因爲性能是一個問題。

+0

我想'sed'可能是更適合的。 –

回答

0

你爲什麼不使用剪切,而不是grep的,如果你正在處理的固定位置?

cut -c 32-50 myfile.asc