Sed linux xóa tất cả kí tự nằm giữa 2 kí tự đặc biệt

hi anh em, mình đang có 1 bài toán về sed như sau :
Mình có 1 string : Manual run by <a href="http://192.168.10.2:8085/browse/user/root">admin</a>
Bài toán : kết quả mong muốn : Manual run by admin
Mình có thử tìm kiếm và dùng sed nhưng chưa được như ý
VD : mình đã thử xóa các kí tự giữa < và > bằng cách
[vagrant@vagrant-centos65 ~]$
echo "Manual run by &lt;a href="http://192.168.10.2:8085/browse/user/root"&gt;admin&lt;/a&gt;" | sed -e 's/\(&lt;a\).*\(&gt;\)/\1\2/'
Manual run by &lt;a&gt;

tóm lại là mình tìm khá nhiều rồi nhưng chưa được như mong muốn. Muốn nhờ anh em giúp đỡ

1 Like

Thử bằng cái này xem, giả sử input chứa đoạn text đó, thì output chứa nội dung đã sửa

cat input | sed -r "s/(Manual run by ).*\&gt\;(.*)\&lt\;.*/\1\2/" > ouput
4 Likes

@ltd thanks anh Đạt nhiều. Nó hoạt động tốt anh ơi :smiley:

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?