我的.csv文件末尾有一个para break.我尝试使用以下命令删除文件末尾的空行.
sed -i '/^$/d' combined.csv
Run Code Online (Sandbox Code Playgroud)
但它不起作用,仍然有一个空白行.我可以使用以下命令删除最后一行.
sed -i '$d' combined.csv
Run Code Online (Sandbox Code Playgroud)
但是有可能在删除它之前检查最后一行是否真的是空的吗?
更新:
我使用以下命令检查每行是否以数字开头.
sed -i '1s/^[^0-9]*//' combined.csv
Run Code Online (Sandbox Code Playgroud)
这仅检查第一行而不是其余行.如何检查文件中的所有行?这可能会解决我的问题.
Bar*_*Sas 25
${/^$/d;}如果它是文件的最后一行,尝试这将只匹配一个空行.
更新:对于你的第二个问题,只需删除s之前的1,即: sed -i 's/^[^0-9]*//' combined.csv
发现这个很久以前的某个地方并保存了片段.不要问我它是如何工作的:
perl -i -pe "chomp if eof" combined.csv
Run Code Online (Sandbox Code Playgroud)