6
我尝试使用*作为文件名一次性用sed替换很多文件。但它也试图处理目录,并给出错误并终止。有没有简单的方法来克服这一点?sed排除目录
我尝试使用*作为文件名一次性用sed替换很多文件。但它也试图处理目录,并给出错误并终止。有没有简单的方法来克服这一点?sed排除目录
我不知道究竟如何你使用sed
在这里,但正常的方式来处理UNIX只有常规文件与find
命令,类似:
find . -type f -exec sed 's/Hello/Goodbye/g' {} ';'
类型限制你到普通文件,而不是目录或FIFO或任何其他类型的文件系统魔术。
如果您在系统上运行man find
,则会看到许多其他可供选择的选项。
我对linux/unix shell命令仍然很陌生,为什么当我运行它时,它会在很多文件的内容中屏蔽我的屏幕,但不会改变任何东西? – HumbleWebDev 2017-08-10 15:33:57
@TheUnholy,这是正确的。这个答案的目的是展示如何使用'find'来处理文件而不是目录。 find命令的'有效载荷'(在这种情况下是一个简单的'sed'命令)可以修改以适应你的需要。 – paxdiablo 2017-08-10 20:57:36