我有一个sed文件,其中包含一些替换,它使用以下语法在文件上执行:
sed -f mysedfile file.txt > fixed_file.txt
我想测试一个系统变量,根据该变量包含的内容,对file.txt执行不同的sed操作。
可以把这个逻辑放到mysedfile中吗?
谢谢你的帮助。
最佳答案
Perl是为了绕过sed和awk的限制而显式创建的。-p
模式为文件中的每一行运行一个脚本。你可以把它放在命令行上:
perl -p -e "s/foo/\$ENV{'HOME'}/e" < files.txt
或者将脚本移动到文件中(您可以在
\
之前删除“$
”)perl -p file.pl < files.txt
或者让脚本的第一行像这样,这样就可以直接运行它。
#!/usr/bin/perl -p
关于linux - 如何在sed文件中测试linux变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21417167/