我在bash在一個txt文件中的逗號分隔的列表,看起來像這樣:猛砸逗號分隔的列表提取最後一列
name1,org2,enabled,email
name2,org1,enabled,email
name3,org3,enabled,
name4,org4,enabled,email
name5,org5,enabled,
我想一個命令,將提取的人誰缺少行的電子郵件,這將是一個什麼命令?感謝
awk -<Flag> <don't know the syntax>
我在bash在一個txt文件中的逗號分隔的列表,看起來像這樣:猛砸逗號分隔的列表提取最後一列
name1,org2,enabled,email
name2,org1,enabled,email
name3,org3,enabled,
name4,org4,enabled,email
name5,org5,enabled,
我想一個命令,將提取的人誰缺少行的電子郵件,這將是一個什麼命令?感謝
awk -<Flag> <don't know the syntax>
在AWK:
$ awk -F, '$4==""' file
name3,org3,enabled,
name5,org5,enabled,
-F,
限定FS
,輸入文件分隔$4==""
輸出記錄,其中第四字段爲空grep
:
$ grep ",$" file
name3,org3,enabled,
name5,org5,enabled,
,$
回報記錄中,其中最後一個字段爲空的grep方法:
grep -Eo '([^[:space:]]*,){3}$' file
輸出:
name3,org3,enabled,
name5,org5,enabled,
的sed方法:
sed -n '/\(\S*,\)\{3\}$/p' file
我假設你的文件中包含類似行:
name1,org2,enabled,[email protected]
和不name1,org2,enabled,email
此基礎上,你可以使用grep -v
(反轉),即:
grep -v '@' file
輸出:
name3,org3,enabled,
name5,org5,enabled,
不錯,開箱即用! – jm666
或'awk -F,'$ 4 ==「」{print $ 1}'文件' – Cyrus
它更具描述性。 –