我有许多2GB空间分隔文件从一个源系统。每个文件中的每一行都包含相同数量的字符串,被“as”文本限定符包围。
我需要从每个文件中的每一行中删除最后两个字符串及其文本限定符。(如从列报表中移除最后两列)。使用较小的文件,我可以导入Excel、分隔、删除列、保存为标签分隔符(比空格有用得多)。
无论如何,这些文件太大了,而且excel的行太多了。那么sed??
"text1" "text2" "text3" "text4" "text5" "text6"每一行都有相同数目的字符串。如何从每一行中删除"text5“"text6”?
发布于 2017-05-18 01:38:26
这个sed命令将从文件infile的每一行末尾移除最后两个分隔开的引号字符串,并将结果发送到outfile:
sed 's/ *"[^"]*" *"[^"]*" *$//' < infile > outfile发布于 2019-03-09 05:05:58
将所有字段打印到最后-2.AWK使用变量NF向我们提供一行中的字段数
echo "text1" "text2" "text3" "text4" "text5" "text6" | awk -v ORS="" '{
for(i=1;i<=NF-2;i++)print $i, " " ; print "\n"}'https://unix.stackexchange.com/questions/365749
复制相似问题