成功メッセージ
CoddyのTerminalジャーニー「基礎」セクションの一部。レッスン 79/82。
チャレンジ
簡単バックアップされた内容を要約する最後の成功メッセージを追加して、バックアップスクリプトを完成させましょう。
backup.shを次のように変更します。
- 前のレッスンの既存のコードをすべて保持する(ワークスペース内の
backup.shはそのバージョンで、以下に示されています) - "Files copied successfully"メッセージの後に、最後の概要行を追加する
- 次を出力する:
Backup complete: [source_dir] -> [backup_dir]
前のレッスンの終了時点でのスクリプト:
#!/bin/bash
read -p "Enter directory to backup: " source_dir
echo "Backing up: $source_dir"
backup_dir="backup_$(date +%Y%m%d_%H%M%S)"
mkdir "$backup_dir"
echo "Created backup folder: $backup_dir"
cp "$source_dir"/* "$backup_dir"/
echo "Files copied successfully"編集する最も簡単な方法は、cat > backup.sh << 'EOF' ... EOFを使ってファイル全体を書き直し、閉じるEOFの前に新しい行を追加することです。
スクリプトを実行し、プロンプトが表示されたらdocumentsと入力してください。出力は次のようになります。
Backing up: documents
Created backup folder: backup_20240115_143052
Files copied successfully
Backup complete: documents -> backup_20240115_143052出力されるタイムスタンプは、現在の日付と時刻に応じて異なります。
おめでとうございます!次の機能を備えた完全なバックアップスクリプトを作成できました。
- ユーザーにsource_dirを入力するよう促す
- タイムスタンプ付きのbackupフォルダーを作成する
- すべてのFilesをbackupにコピーする
- 各ステップで明確なフィードバックを提供する
ヒント:最後の概要メッセージを表示するには、スクリプトの末尾に
echo "Backup complete: $source_dir -> $backup_dir"を追加します。
自分で試してみよう
ターミナル
cat > backup.sh << 'EOF'
#!/bin/bash
echo "Enter folder to backup:"
read folder
echo "Backing up: $folder"
timestamp=$(date +%Y%m%d_%H%M%S)
backup_dir="backup_$timestamp"
mkdir "$backup_dir"
echo "Created backup folder: $backup_dir"
cp "$folder"/* "$backup_dir"/
echo "Files copied successfully"
EOF
chmod +x backup.sh
echo "documents" | bash backup.sh基礎のすべてのレッスン
自分で練習してみよう: Terminalプレイグラウンド