我必须搜索包含的字符串Aaa*.c并以aaa*.c递归方式替换它.
我在目录中有数百个文件,其中包含特定模式(此.c可以是字符串的扩展名或字符串之间),我必须在小写字母中替换此类字符串
我正在尝试使用awk'{print tolower($ 0)或tr但无法搜索特定模式并在此处应用.
谢谢
由于您将Perl放在标签列表中,因此这是一个Perl解决方案
perl -pe "s/(\S+\.c)\b/\L$1/g" myfile > newfile
Run Code Online (Sandbox Code Playgroud)
如果要在原地编辑文件(并丢失原文)
perl -pie "s/(\S+\.c)\b/\L$1/g" myfile
Run Code Online (Sandbox Code Playgroud)
要重命名当前目录中的所有*.c文件,请写入
perl -e "rename $_, qq(\L$_) for glob '*.c'"
Run Code Online (Sandbox Code Playgroud)
要以递归方式遍历所有子目录,请执行此操作
perl -MFile::Find -e "find sub{ rename $_, qq(\L$_) if /\.c$/i }, '.'"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
658 次 |
| 最近记录: |