+ -
当前位置:首页 → 问答吧 → 请教:sed中的@用法

请教:sed中的@用法

时间:2009-10-03

来源:互联网

本来应该发在shell版块,考虑到这是LFS文档的内容,相信理解的人会多些。
sed中的@用法较少见,特以请教。具体例子在下面,LFS6.4的第一此调整工具链


gcc -dumpspecs | sed 's@/lib/ld-linux.so.2@/tools&@g' \
> `dirname $(gcc -print-libgcc-file-name)`/specs

同样,在LFS6.5有例子
SPECS=`dirname $($LFS_TGT-gcc -print-libgcc-file-name)`/specs
$LFS_TGT-gcc -dumpspecs | sed \
-e 's@/lib\(64\)\?/ld@/tools&@g' \
-e "/^\*cpp:$/{n;s,$, -isystem /tools/include,}" > $SPECS


----------------
明白,谢2楼。

作者: zswlb9999   发布时间: 2009-10-03

这里 @ 只是分隔符, 你也可以采用#等非/替代(因为预替代内容包含了/)...

作者: carbonjiao   发布时间: 2009-10-03

s命令的分割服,你也可以用其他,比如/,但是如果要用到/的话就得\/了,所以经常用的是@

作者: defrag   发布时间: 2009-10-03