我可以使用mv file1 file2的一种方式,它只能移动file1到file2,如果file2不存在?
我试过了
yes n | mv -i file1 file2
(这可以mv询问是否应该重写file2并自动回答“否”),但是除了滥用-i它之外,它也不会给我带来很好的错误代码(如果移动了,则总是141而不是0;如果不移动则是其他东西)
-T为此。
mv而不是的退出状态yes,最简单的解决方法可能是mv -i file1 file2 < <(yes n)
pipefail选择141,因为退出状态为yes,否则mv将没有理由在此处获取SIGPIPE。