Everything2.csv 然后我回来: cat: ./Everything2.csv-6ren">
gpt4 book ai didi

bash - 输入文件为输出文件错误

转载 作者:行者123 更新时间:2023-12-03 08:22:13 25 4
gpt4 key购买 nike

我正在尝试运行命令

find . -name "*.csv" | xargs -I{} cat '{}' > Everything2.csv

然后我回来:

cat: ./Everything2.csv: input file is output file



这是什么意思?

最佳答案

如该answer所示,您应该运行:

$ find . -name '*.csv' -exec cat {} + | tee Everything2.csv

由于重定向运算符( >>>)具有更高的优先级,因此它会在调用 find命令之前创建/截断文件。因此,为避免需要先生成列表,然后将其通过管道传输到文件中,而无需使用重定向运算符,因此 tee可以正常工作。

或者,使用 sponge而不是 cat吸收标准输入并写入文件:
find . -name "*.csv" | xargs -I{} sponge '{}' > Everything2.csv

关于bash - 输入文件为输出文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24417058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com