我正在尝试替换模式并清理包含多个单词的文件以每行获取一个单词。
结果是使用此命令行实现的:
sed -e '/^[[:space:]]*$/ d' \ # remove empty line
-e 's/^[[:space:]]*//' \ # remove white space at the beginning
-e 's/[[:space:]]*$//' \ # remove white space at the ending (EOL)
-e 's/[[:space:]][[:space:]]*/\n/g' \ # convert blanks between words to newline
-e '$a\' # add a newline if missing at EOF
-e ..... # replace other patterns.
Run Code Online (Sandbox Code Playgroud)
(最后一个表达式在How to add a newline to the end of a file? 中找到了?)
这个想法是只用一个小的 sed 程序来处理文件(例如,替换一些模式)并同时格式化文件。
我确信可以使用其他 sed 功能来减少表达。
问候