我正在尝试使用linux命令
将file1的内容复制到文件2 cat file1 > file2
file1可能可用,也可能不可用,具体取决于运行程序的不同环境。如果file1不可用,应该在命令中添加什么,以便它不会返回错误?我已经读过附加2> / dev / null不会给出错误。虽然这是真的,但我没有收到错误命令
cat file1 2>/dev/null > file2
当file1不存在时,make file2的先前内容完全为空。我不想丢失file2的内容,以防file1不在那里并且不想返回错误。
此外,在其他情况下命令会失败并返回错误吗?
先谢谢。
答案 0 :(得分:4)
首先测试file1
。
[ -r file1 ] && cat ...
有关详细信息,请参阅help test
。
答案 1 :(得分:0)
详细阐述@Ignacio Vazquez-Abrams:
if (test -a file1); then cat file1 > file2; fi
答案 2 :(得分:0)
File1 is empty
File2 consists below content
praveen
Now I am trying to append the content of file1 to file2
Since file1 is empty to nullifying error using /dev/null so output will not show any error
cat file1 >>file 2>/dev/null
File2 content not got deleted
file2 content exsists
praveen
If [ -f file1 ]
then
cat file >> file2
else
cat file1 >>file 2>/dev/null
fi
答案 3 :(得分:0)
首先,你写道:
我正在尝试使用linux命令
将file1的内容复制到文件2
要将file1的内容复制到file2,请使用cp
命令:
if ! cp file1 file2 2>/dev/null ; then
echo "file1 does not exist or isn't readable"
fi
为了完整起见,请cat
:
我会将stderr传递给/ dev / null并检查返回值:
if ! cat file1 2>/dev/null > file2 ; then
rm file2
echo "file1 does not exist or isn't readable"
fi