如何在OS X上的文件夹内的所有.php文件中替换字符?

安德烈

我需要替换以下字符:

¤与

â用

和我在一起

ș与s

ț与t

替换必须区分大小写。例如,如果字母是大写字母,则必须将其替换为大写字母。

我读过我可以sed在此过程中使用,但我不知道如何使用它。谁能通过编写必须在Terminal中运行的确切命令来帮助我?

通配符

尽管sed通常用于这些类型的任务,但实际上并不是针对它们而设计的-它的名字叫编辑器。

专为非交互式文件编辑而设计的工具exvi是的“可视编辑器”形式ex。)尤其是当您要在适当位置编辑文件时,ex它是远远优于的工具sed

在这种情况下,所使用的sed命令与之前给出命令几乎相同,但是不必如此。以下是POSIX兼容的(不同于sed -i)。

for file in *.php; do ex -sc '%s/[ăâ]/a/ge | %s/ș/s/ge | %s/ț/t/ge | %s/î/i/ge | x' "$file" ; done

解释:

-s启动“静默模式”以准备批处理。-c指定要执行的命令。

%表示将以下命令应用于文件中的每一行。这些s///命令很容易解释。e末尾标志表示抑制了任何错误(由于未找到模式),并且文件处理将继续。

| 是命令分隔符(不是管道)。

x告诉ex将任何更改写入文件(但仅在发生更改时)并退出。


如果要就地文件编辑,ex则选择该工具。如果您想在进行更改之前预览它们,我建议按照@gardenhead的建议使用tr

(当然,如果您使用的是git等适当的版本控制系统,则可以使用进行适当的更改,ex并通过运行将文件与旧版本进行比较git diff。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

复制所有文件和文件夹(不包括OS X上的Subversion文件和文件夹)

如何按原样使用文件夹内或文件夹外的所有php文件

如何获取网络上2个文件夹内的所有文件之间的差异?

如何删除文件夹中除最新X子文件夹以外的所有子文件夹?

如何在所有文件夹和文件名中替换字符串

如何在文件夹和子文件夹中的所有Jpeg图像上运行guetzli

如何替换文件夹中Word文档中所有出现的字符串

OS X:如何输出文档文件夹的所有嵌套文件

如何在ckfinder中显示所有文件夹,子文件夹和文件

ExifTool-如何从文件夹及其所有子文件夹内的所有文件中删除所有元数据?

如何遍历文件夹内所有工作簿中的所有工作表

如何使用Groovy读取文件夹中的所有文件并替换文件中的模式

如何使用php删除特定文件夹内的所有文件

如何使用php打印文件夹内的所有txt文件?

如何以递归方式将所有文件夹chmod排除在特定文件夹内的所有文件夹?

如何删除Shell脚本文件中的特定if语句,并对单个文件夹内所有文件夹的所有文件执行相同的操作

如何在文件夹mac中CHMOD所有文件夹?

如何在Mac OS X上修复/ etc /文件夹

如何在PHP中列出所有文件夹及其文件

如何使用bat文件回显文件夹内的所有文件?

如何在文件夹中的所有(关闭)Excel文件上运行一个VBA宏?

使用引号时,如何在Windows上使用move命令移动文件夹中的所有文件?

如何替换SVN文件夹中的所有文件,但将其视为普通修订版?

JFileChooser忽略OS X上的特殊字符文件夹

如何从文件夹中删除所有文件?

如何从Java读取文件夹中的所有文件?

如何列出tomcat文件夹中的所有文件?

如何连接文件夹中的所有JS文件?

如何导入文件夹中的所有文件?