Shell-Script
將文件夾的內容安裝到另一個文件夾中
我正在嘗試編寫一個 Makefile 來將我的文件夾的內容安裝到系統上的另一個文件夾中。
我想保持相同的目錄結構,就像這樣。
localfolder ├── a └── b ├── c └── d ├── e └── f
我嘗試了不同的選擇,但它什麼也沒做
$ install -d localfolder /opt/folder (does nothing) $ install -t localfolder /opt/folder install: omitting directory '/opt/folder' $ install -D localfolder /opt/folder install: omitting directory 'localfolder'
誰能指出我正確的方向?Google搜尋“linux 安裝命令”沒有帶來任何相關資訊。
謝謝!
對於那些想要一個解決方案的人來說,你去吧:安裝命令不能遞歸地工作。所以我寫了一個shell腳本來解決這個問題。
第一個參數是要複製的文件夾,第二個是目標目錄
#!/bin/sh # Program to use the command install recursivly in a folder magic_func() { echo "entering ${1}" echo "target $2" for file in $1; do if [ -f "$file" ]; then echo "file : $file" echo "installing into $2/$file" install -D $file $2/$file elif [ -d "$file" ]; then echo "directory : $file" magic_func "$file/*" "$2" else echo "not recognized : $file" fi done } magic_func "$1" "$2"
它也可作為要點here