使用 sed 删除包含斜杠的字符串

remove string using sed that include slash

这是我的数据:

This is a test/><STUFF
This is a test/><TRY

我正在尝试使用 sed.

摆脱 bash 中的 /><STUFF/><TRY

所以有两个句子。

This is a test
This is a test

删除斜杠中的所有内容:

$ sed 's_/.*__' file
This is a test
This is a test

请注意 _ 作为分隔符的用法,因为典型的斜杠 sed 's/find/replace/' file 与您要查找的模式相冲突。也可以转义。

或使用 cut,将定界符设置为斜杠并仅打印第一个字段:

$ cut -d'/' -f1 file
This is a test
This is a test

虽然最干净的是awk:

$ awk -F/ '{print }' file
This is a test
This is a test

一个bash解决方案是:

while IFS="/" read name _
do
   echo "$name"
done < file

你可以试试这个,

sed 's~/.*~~' file