这个替换字符串是如何工作的?

时间:2013-08-20 18:08:06

标签: sed kerberos

我正在使用kerberos配置(特别是krb5.conf文件),并且有一个名为auth_to_local映射的特定部分,它在此处定义:

http://web.mit.edu/Kerberos/krb5-1.9/krb5-1.9.5/doc/krb5-admin.html

典型的映射条目如下所示:

auth_to_local = RULE:[1:$0\$1](^DOMAIN\.COM\\.*)s/^DOMAIN\.COM/DOMAIN/

手册页说明了确切的语法,但基本上上面的行会查找UPN,如:

user@DOMAIN.COM并将其转换为DOMAIN.COM \ user并查看它是否可以与DOMAIN.COM匹配,如果是,则替换为DOMAIN。因此,最终结果将是DOMAIN \ user。

但是,我们有一个以这种格式输入的条目:

auth_to_local = RULE:[1:$0\$1](^DOMAIN\.COM\\.*)s/^DOMAIN\.COM\\//

看起来,它正在用一些null值替换DOMAIN.COM,但我无法解码这个"\\//"语法的含义。

我不确定这条规则是否使用标准的sed类型语法来代替......有人可能会猜测对此的解释吗?

1 个答案:

答案 0 :(得分:0)

它只是匹配DOMAIN.COM/需要注意它是一个通常特殊的字符,被视为字符串的一部分。注意:\ /不是大写字母V.