为什么sed命令包含符号

前端之家收集整理的这篇文章主要介绍了为什么sed命令包含符号前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我不明白为什么以下sed命令包含@符号:
sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd

我看了/etc/pam.d/sshd这个命令的前/后效果

之前:

...
# Set the loginuid process attribute.
session    required     pam_loginuid.so
...

后:

...
# Set the loginuid process attribute.
session optional pam_loginuid.so
....

@符号可能是正则表达式或sed语法的一部分吗?
在这上面找不到任何doco.

注意:上面的sed命令实际上是教程中Dockerfile RUN命令的一部分:
https://docs.docker.com/examples/running_ssh_service/

解决方法

这些是正则表达式和替换字符串的备用分隔符.当你的正则表达式或替换字符串包含’/’时很方便.

猜你在找的Linux相关文章