Bash
在模板中創建文件的腳本
我剛剛在我的文件中編寫了一個函式,
~/.bashrc
它可以讓我用一個命令為新網站創建一個文件夾。該函式如下所示:function newsite() { mkcd "$*" # mkdir and cd into it mkdir "js" mkdir "imgs" touch "index.html" touch "main.css" vim "index.html" }
現在我想做的是,我想為 index.html 和 main.css 創建基本模板文件,而不是僅僅觸摸 index.html 和 main.css 問題是我完全不知道該怎麼做。我不太了解使用 bash 命令寫入文件。通常我只是在 vim 中打開文件然後去城裡,但我想在我進入 vim 時已經開始做一些事情……
jw013的想法和HaiVu的回答都是正確的。但是,為了完整起見任何遇到這個問題的人想要答案,這裡是;
function newsite() { mkcd "$*" # mkdir and cd into it mkdir "js" mkdir "imgs" cat > index.html <<'EOI' <html> <head> </head> <body> </body> </html> EOI cat > main.css <<'EOI' body { font-family: Arial; } EOI vim "index.html" }
這個
<<'EOI'
東西叫做heredoc,大多數腳本語言都有它們。
我喜歡jw013的想法:
mkdir -p ~/site_template/{js,imgs} # Creates all the files in this directory: index.html, main.css, ...
現在,是時候創建一個新站點了:
cp -r ~/site_template ~/my_site
那會容易得多。此外,您可以以任何您喜歡的方式編輯您的網站模板文件。