2016-04-28 73 views
-1

您好我有一個長的文件是這樣的:如何使用命令行刪除具有特殊字符的行?

information_1 this is my [email protected] 
information_2 this is my file....s...asdadada sdsfsd 
information_3 this is my [email protected] 
information_4 this is my filesasdadada 
information_5 this is my [email protected] 

而且我想這樣的文件,whitout包含「@」 charachter行:

information_2 this is my file....s...asdadada sdsfsd 
information_4 this is my filesasdadada 

我如何使用bash做像sed,awk等命令...?

回答

0

使用awk:

$ awk '!/@/' file 
information_2 this is my file....s...asdadada sdsfsd 
information_4 this is my filesasdadada 
3

隨着SED:

sed '/@/d' file 

刪除包含一個@所有行。

使用grep:

不包含一個 @
grep -v @ file 

輸出線。

0

用Perl:

$ perl -ne 'print unless /@/' file 

要替換文件(也創建例如備份.BAK,文件更精確地重命名爲file.BAK並使用相同的名稱創建新文件)

$ perl -i.BAK -ne 'print unless /@/' file 
相關問題