ls lib/oracle-11.2.0.3.0.txt | sed 's/lib.\([oracle.*]\)\.txt/\1/'
Nó đang đưa ra toàn bộ chuỗi thay vì chỉ một phần cho đến khi .txt Tôi đang làm gì sai?
Tôi có thể làm điều đó bằng cách sử dụng awk như sau, nhưng, không chắc tại sao sed không cho kết quả mong muốn.
echo "lib/oracle-11.2.0.3.0.txt" | awk -F/ '{print substr($2,1,index($0,".txt")-1);}'