您好,我有一個包含 5 位郵遞區號的文件。
我正在嘗試使用 grep 列印從 9 開始的郵政編碼,並且只能包含 4-7 之間的數字
我正在使用的命令是
grep '[4-7], 9'$ zipcodesDataEntry.cvs
問題是我得到的郵遞區號包含數字 1 2 3 8 我的輸出應該是:
95544
94554
94445
95567
但是,我得到了一些郵政編碼,例如:
91121
92231
我試圖排除任何不是 9 且在 4-7 範圍內的數字
答案1
有鑑於此 infile:
cat zipcodes
95544 94554 94445 92231 95567 91121
我可以使用這個 grep:
egrep -o '9[4-7]{4}' zipcodes
95544
94554
94445
95567
答案2
輸入檔內容:
95544
94554
94445
95567
91121
92231
使用awk
(如果egrep
不可用),您可以嘗試如下操作:
awk '/9[4-7]{4}/' zip.txt
輸出:
95544
94554
94445
95567
答案3
grep '^9.[4-7].*' zipcodesDataEntry.cvs
- ^ 正在比較的字串的開頭
- 。 (句點)匹配任意字符
- 星號,零個或多個