我可以使用Perl中的正则表达式,但以前不必在BASH中这样做。
我试图在google上搜索一些关于它的教程,但是没有看到像Perl那样的好教程。
我试图实现的是从一个名为/home/devtestdocs/devtestdocs-repo/的变量中去掉$filename并用另一个名为$testdocsdirurl的变量替换它
希望这是有意义的,如果任何人有任何良好的联系,将是非常感谢。
另一种方法可能是,如果已经有人编写了一个函数来在bash中进行查找和替换。

最佳答案

sed是Unix中字符串操作的典型选择武器:

echo $filename | sed s/\\/home\\/devtestdocs\\/devtestdocs-repo\\//$testdocsdirurl/

此外,正如hop所建议的,您可以使用@语法来避免转义路径:
echo $filename | sed s@/home/devtestdocs/devtestdocs-repo/@$testdocsdirurl@

09-04 16:27