我是 SED 的新手;尝试了之前给出的选项,但收到错误。尝试的命令是:
sed 's/GROUP ( /lib/libc.so.0 /usr/lib/uclibc_nonshared.a AS_NEEDED ( /lib/ld-uClibc.so.0 ) )/GROUP ( ../../lib/libc.so.0 ../usr/lib/uclibc_nonshared.a AS_NEEDED ( ../../lib/ld-uClibc.so.0 ) )' < libc.so
收到的错误是:
sed: -e expression #1, char 16: unknown option to `s'
需要使用 SED 更改 libc.so 文件:
GROUP (/lib/libc.so.0 /usr/lib/uclibc_nonshared.a AS_NEEDED (/lib/ld-uClibc.so.0 ) )
相对路径,含义如下:
GROUP ( ../../lib/libc.so.0 ../usr/lib/uclibc_nonshared.a AS_NEEDED (../../lib/ld-uClibc.so.0 ) )
让我知道是否有更好的方法可以做到这一点。谢谢。
最佳答案
sed -i 's/GROUP\ (\/lib\/libc.so.0\ \/usr\/lib\/uclibc_nonshared.a\ AS_NEEDED\ (\/lib\/ld-uClibc.so.0\ )/GROUP\ (\ ..\/..\/lib\/libc.so.0\ ..\/usr\/lib\/uclibc_nonshared.a\ AS_NEEDED\ (..\/..\/lib\/ld-uClibc.so.0\ )\ )/g' libc.so
关于linux - 替换一行libc.so,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8033762/