我试图从名为 changesfile 的文件中正确地将参数传递给 sed,但我没有成功。它可能是文件更改文件的内容或我使用 for 循环的方式。我不确定。
我使用的命令:
cat changesfile | while read i ; do sed -e "s/$i//g" "filename" ; done
cat changesfile | while read i ; do sed -i "s/$i//g" "filename" ; done
cat changesfile | while read i ; do sed -e '/$i/d' filename ; done
cat changesfile | while read i ; do sed -e '/"$i"/d' filename ; done
我需要将文件中的某些行与大量元字符匹配。我试图匹配和删除的东西如下:
fileattribute[hostname.stile.tib.area2]=Disk /var;default_queue;area-unix
fileattribute[hostname.stoop.trb.area]=Disk /tmp;default_queue;area-unix
以下是包含通配符和转义字符以正确将信息传递给 sed 的更改文件的内容如下:
.*hostname\.stoop\.trb\.area.*Disk.*\/tmp.*area\-unix$
.*hostname\.stile\.tib\.area2.*Disk.*\/var.*area\-unix$
到目前为止,没有任何工作。一些命令删除了正则表达式和其他东西。不知道为什么。非常感谢任何建议。我的工作场所还没有任何人提供帮助。