バックアップ フォルダの作成
CoddyのTerminalジャーニー「基礎」セクションの一部。レッスン 76/82。
チャレンジ
簡単次に、ファイルが保存されるバックアップフォルダを作成するようにバックアップスクリプトを拡張しましょう。
backup.sh を一から書き直して、更新された完全なスクリプトを保持させます。ファイルを置換するために最初の行には > を使用し、以降の各行を追加するために >> を使用します:
echo '#!/bin/bash' > backup.sh
echo 'read -p "Enter source directory: " source_dir' >> backup.sh
echo 'echo "Backing up: $source_dir"' >> backup.sh
echo 'backup_dir="backup"' >> backup.sh
echo 'mkdir -p "$backup_dir"' >> backup.sh
echo 'echo "Created backup folder: $backup_dir"' >> backup.sh各行はシングルクォートで囲まれているため、シェルは $source_dir や $backup_dir を値に置き換えることなく、文字列のままファイルに書き込みます。
次に、実行権限を付与します:
chmod +x backup.sh最後に、入力として documents を渡してスクリプトを実行します。このターミナルは対話型ではないため、入力の要求を待つ代わりにパイプを使ってスクリプトに回答を渡します:
echo "documents" | ./backup.sh出力は次のようになります:
Backing up: documents
Created backup folder: backupディレクトリの内容を一覧表示する ls を実行して、フォルダが作成されたことを確認します。出力には、他のファイルと並んで新しい backup フォルダが表示されるはずです。
ヒント:
mkdir -pの-pフラグは、ディレクトリがすでに存在する場合のエラーを防ぎます。変数(例:"$backup_dir")を安全に扱うために、必ず引用符で囲むようにしてください。
自分で試してみよう
echo '#!/bin/bash' > backup.sh
echo 'read -p "Enter source directory: " source_dir' >> backup.sh
echo 'echo "Backing up: $source_dir"' >> backup.sh
chmod +x backup.sh
echo "documents" | ./backup.sh基礎のすべてのレッスン
自分で練習してみよう: Terminalプレイグラウンド