我在循环中生成了一个临时文件o2.csv。我想剪掉它的第二列,然后粘贴到另一个文件g3temp.csv。
粘贴<(剪切-f 2 o2.csv) g3temp.csv > g3temp.csv
如果对某个新文件进行写入,此命令将生成正确的输出:
粘贴<(剪切-f 2 o2.csv) g3temp.csv > g3new.csv
为什么对同一个文件的写入没有给出正确的结果?
发布于 2014-11-05 09:17:06
这在shell中是不可能的。运行命令时,>会立即截断文件。
您想做的最简单的方法是使用一个临时文件:
paste <(cut -f 2 o2.csv) g3temp.csv > tmp && mv tmp g3temp.csv使用&&表达式,我们确保在第二个命令成功完成时执行第二个命令。
https://stackoverflow.com/questions/26753270
复制相似问题