Bash
獲取記錄來自的文件名
我有大量
.gz
文件,它們一起被解壓縮zcat
。我正在尋找每條記錄的來源,如下例所示:
文件1:
1,2,3,4,5,6,7,NEW,9,10,11,12 13,14,15,55,884,66873,156,8
對 file1 到 file10000 使用以下程式碼:
zcat file.gz* | grep "NEW"
所需的輸出應如下所示:
1,2,3,4,5,6,7,NEW,9,10,11,12 > file1
無需管道
zcat
,grep
只需使用zgrep
:zgrep NEW *.gz
預設情況下,當呼叫多個文件時,它會列印找到匹配項的文件的名稱。(它不會完全像您想要的輸出,但根據您的問題,它應該適合您的需求。)
只需在您的命令中添加
-H
標誌:zgrep
zgrep -H "ERROR" *.gz