sed - 遇到错误时防止sed写入

标签 sed error-handling

遇到错误时是否可以防止sed写入。这样的

sed -e 's/a/b/g' nonExistantFile > fileIDontWantToExist

例如不会创建fileIDontWantToExist。当前它输出一个警告sed:无法读取nonExistantFile:没有这样的文件或目录。但是它仍然创建文件fileIDontWantToExist

最佳答案

输出重定向由Shell而不是sed扩展。您需要一个if语句,如下所示:

if sed '...' input.file > output.file.tmp ; then
    mv output.file.tmp output.file
else
    rm output.file.tmp
fi

关于sed - 遇到错误时防止sed写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56734442/

相关文章:

html - 406在HTML网站上 Not Acceptable

ruby-on-rails - Rails上的自定义错误页面

linux - 在shell脚本中删除文件中某行的第一个字符

bash - 搜索后如何通过变量替换单词?

sed - 如何更改插入命令中的 'sed' 斜杠 (/) 分隔符?

bash - 如何删除 bash 输出中的装饰颜色字符?

python - 处理 python 中的错误

shell - 旋转文本文件

java - 将 Java 库添加到 Android 项目

java - 为什么 "return ERROR"仅适用于异常?