删除文本文件中的单个字符行

aeu*_*ere 3 linux awk command-line sed

我有一个大约有800万行的文本文件.我需要删除其中包含单个字符的所有行.例如

This is 
the 
text file 
I 
wrote
Run Code Online (Sandbox Code Playgroud)

我想删除其上有代词"I"的整行.奖励指向可以在linux命令行上执行此操作的人.

Håk*_*and 9

这是一个尝试:

awk 'length>1' file
Run Code Online (Sandbox Code Playgroud)

如果你不想删除空行(零个字符)

awk 'length!=1' file
Run Code Online (Sandbox Code Playgroud)

如果你的行上有空格(你不想算作字符):

awk '{gsub(/[[:space:]]/,"")}length!=1' file
Run Code Online (Sandbox Code Playgroud)


pfn*_*sel 5

可以做到这一点:

sed '/^.$/d' inputFile
Run Code Online (Sandbox Code Playgroud)

要将输出存储在新文件中:

sed '/^.$/d' inputFile > outputFile
Run Code Online (Sandbox Code Playgroud)

或用于文件内编辑:

sed -i '/^.$/d' inputFile
Run Code Online (Sandbox Code Playgroud)