linux - 以下命令中的-print0是什么意思
问题描述
我在 Mac 中使用以下命令替换字符串。这里我有一个关于-print0 的问题。它有什么用处?
find skeleton/src/IO.Swagger/Controllers -name '*.cs' -print0| xargs -0 sed -i "" "s/namespace IO.Swagger.Controllers/namespace Abc.GroupA.TableLocalService.Controllers/g"
解决方案
使用-print0
,find
将使用空字符(零字节)分隔文件名。xargs
然后必须使用-0
(或者--null
,我建议在脚本中使用长选项,这增加了可读性,并为交互式控制台中的一次性命令保留了缩写)。
这样,您可以在文件名中使用空格或任何字符,包括换行符。
推荐阅读
- java - 在 Java Spring 中以 REST 方法返回后执行清理操作
- wordpress - 生成电子邮件优惠券 Wordpress
- c# - 如何在 SAP Crystal 报表中格式化阿拉伯日期名称 ar-AR 或 en-EN
- javascript - Animejs在滚动上动画文本
- transactions - 我可以将 JTA 与微服务一起使用吗?
- python-3.x - python-tkinter 错误(不支持的操作数类型 *: 'Entry' 和 'float')
- javascript - 滚动顶部淡出上的 Javascript 窗口
- android - IONIC 3 - 无法构建发布 android apk
- javascript - 如何使用js以特定顺序运行弹出窗口?
- python - 当我们“安装”pytorch 时会发生什么