我在我「備份」目錄一堆的bash腳本的做$ tail -n +1 -- *.sh
重新創建輸出文本文件
尾巴的輸出是一樣的東西:
==> do_stuff.sh <==
#! /bin/bash
cd ~/my_dir
source ~/my_dir/bin/activate
python scripts/do_stuff.py
==> do_more_stuff.sh <==
#! /bin/bash
cd ~/my_dir
python scripts/do_more_stuff.py
這些都是相當簡單的2-10行的腳本。 鑑於tail
的輸出,我想用相同的內容重新創建上述所有文件。 也就是說,我正在尋找一個可以攝取上述文本的命令,並使用適當的內容創建do_stuff.sh
和do_more_stuff.sh
。
這更多的是一次性的任務,所以我並不需要強大的任何東西,我相信在文件很簡單的情況下(例如,其中沒有任何文件實際上包含==>
)沒有大的優勢)。
我開始試圖想出一個匹配的正則表達式,它可能看起來像這樣(==>.*\.sh <==)(.*)(==>.*\.sh <==)
,但我堅持實際獲取它來捕獲文件名,內容和輸出到文件。
任何想法?
請修復報價。 Bash取代'$ 1'。 – Cyrus