[問題] 產生檔案清單並編輯的script

看板Linux作者 (波卡)時間16年前 (2009/08/27 19:44), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/2 (看更多)
請教一個bash script寫法 我的需求是將目錄下所有檔案產生成一個list清單 因為目錄挺多的 其副檔名是.xyz 但是我的清單不需要副檔名部分 所以我希望產生list的同時 vi開啟該檔 將副檔名去掉 我的寫法是 #!/bin/sh ls *.xyz -1 >list vi list << EOF :1,$s/.xyz//g (查過vi取代語法,:1,$s/1/2/g 代表將1全部取代為2) :wq! EOF 但是這樣寫卻失敗了 後來亂試: #!/bin/sh ls *.xyz -1 >list vi list << EOF :2 s/.xyz//g (將第二行.xyz取代成沒東西) :wq! EOF 結果 這樣寫第二行卻真的有改成功 請問我這樣到底是哪裡有問題,怎麼會一個可以一個不行@@ 以上 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.104.35.178

08/27 19:50, , 1F
不好意思 原來:1,$s/.xyz//g這裡 $跟s要空一格@@
08/27 19:50, 1F

08/27 19:52, , 2F
不過發現這樣執行很慢 請問有好一點的方法嗎?
08/27 19:52, 2F
文章代碼(AID): #1Abd6XJH (Linux)
文章代碼(AID): #1Abd6XJH (Linux)