我正在撰寫一個 shell 命令來查找以 .sh 結尾但顯示不帶擴展名的名稱的檔案,例如:
file1.sh -> file1
file2_sh.sh -> file2_sh
我寫了以下內容:
find . -name '*.sh' | tr '.sh' ' '
結果或第一個例子是:
file1.sh -> file1
file2_sh.sh -> file2_
#here it should keep '_sh' but removes all ocurrences of sh
我應該怎么做才能保留'_sh'并且只洗掉點之后的最后一次出現。
非常感謝你
uj5u.com熱心網友回復:
tr '.sh' ' '將更換的每個實體s,h或.有空間。它不關心分組。你想要這樣的東西:
find . -name '*.sh' | sed 's/\.sh$//'
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/405840.html
標籤:
下一篇:在fifo管道中添加行尾或換行符
