rysnc
シェルスクリプトでコマンドを動的に構築するにはどうすればよいですか? 以下のスクリプトを使用すると、フォルダー名が正しく表示されません。例: \#015 は、/var/www/data/DataFolder\#015 のように、フォルダー名の末尾に追加されます。だから、rsync
フォルダが存在しないと言って実行されていません。
#!/bin/bash
Folder='DataFolder'
rsync -avrz /var/www/data/$Folder -e "ssh -i /var/www/key/rsync-key.out" myuser@xx.xx.xxx.xx:/var/data/backup/$Folder
しかし、次のように、変数を正確な値に置き換えると:
rsync -avrz /var/www/data/DataFolder-e "ssh -i /var/www/key/rsync-key.out"
myuser@xx.xx.xxx.xx:/var/data/backup/DataFolder
それは完全に機能します。
私はシェルスクリプトが初めてです。