30/09/2018, 23:29

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;)/12/'
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 đỡ

Mai Anh Dũng viết 01:37 ngày 01/10/2018

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
Trần Xuân Tới viết 01:30 ngày 01/10/2018

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

Bài liên quan
0