以下是使用bash、sed、awk和perl分别实现移除一组字符,除非它与特定字符串匹配的代码示例:
Bash示例:
#!/bin/bash
str="Hello World"
pattern="World"
result=${str//$pattern/}
echo $result
Sed示例:
#!/bin/bash
str="Hello World"
pattern="World"
result=$(echo $str | sed "s/$pattern//g")
echo $result
Awk示例:
#!/bin/bash
str="Hello World"
pattern="World"
result=$(echo $str | awk -v pattern="$pattern" '{gsub(pattern, "")}1')
echo $result
Perl示例:
#!/bin/bash
str="Hello World"
pattern="World"
result=$(echo $str | perl -pe "s/$pattern//g")
echo $result
以上示例中,字符串"Hello World"中的"World"被移除,输出结果为"Hello "。