![sed 删除“WORD”之后的所有内容,直到每行最后一个“-”,保留“WORD”和“-”](https://linux22.com/image/174241/sed%20%E5%88%A0%E9%99%A4%E2%80%9CWORD%E2%80%9D%E4%B9%8B%E5%90%8E%E7%9A%84%E6%89%80%E6%9C%89%E5%86%85%E5%AE%B9%EF%BC%8C%E7%9B%B4%E5%88%B0%E6%AF%8F%E8%A1%8C%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E2%80%9C-%E2%80%9D%EF%BC%8C%E4%BF%9D%E7%95%99%E2%80%9CWORD%E2%80%9D%E5%92%8C%E2%80%9C-%E2%80%9D.png)
我正在编写一个脚本,我需要删除部分文件名。
我需要删除行中REMUX
最后一个之间的所有内容-
我有:
Movie/TV-Show S01 1080p BluRay REMUX VC-1 DD+ 5.1 -RlsGroup
sed -E -i 's/REMUX.*\-//' $file
给我:
Movie/TV-Show S01 1080p BluRay RlsGroup
但我想保留“REMUX”和最后一个“-”
Movie/TV-Show S01 1080p BluRay REMUX -RlsGroup
有人可以帮我解决这个问题吗?
答案1
只是:
sed -i -e 's/REMUX.*-/REMUX -/' -- "$file"