我正在尝试弄清楚如何(根本没有临时文件)可以从文件中剪切出,例如,第2-10行。
基本上,我需要删除CSV中已经输入的条目,但保留标题。
我相信外面的人对此很有见地
发布于 2014-11-01 06:41:17
您可以使用标准编辑器ed:
ed -s file.csv < <(printf '%s\n' '2,10d' 'wq')< <(printf ...)将驱动ed执行以下操作:
使用命令2,10d
w)删除2-10范围内的行,并使用wq.
退出(退出q)
你的ed版本可能会在wq上抱怨;在这种情况下,给它两个单独的命令(w,然后是q),如下所示:
ed -s file.csv < <(printf '%s\n' '2,10d' 'w' 'q')否则,强制性的sed方式:
sed -i '2,10d' file.csv这就像ed的方式,除了sed不是一个真正的文件编辑器:它(在幕后)使用一个临时文件-所以它在技术上不能满足您的需求。
https://stackoverflow.com/questions/26684298
复制相似问题