ターミナルで利用できるコマンドを実行可能形式のTextファイルに羅列し記述することで、一括で実行できるようにする為のスクリプトである。
この場合、外部パラメタ、グローバルまたはローカル変数、条件式を用いてそれに応じたTerminalコマンドを実行するように記述する為のものです。更なる詳しい事についてはGoogle検索してください。
作成方法:
- 標準搭載の「TextEdit」などのエディターを起動する。
- TextEditをテキストエディターとして使うにはTextEditアプリのTextEditメニューのPreferences(設定、「⌘+,」を押下)を表示させ、Plain Textを設定する必要があります。
- 以下の内容をその新規作成するファイルに記載、次の行からそれぞれのコマンドをTerminalで起動するときと同様の形式で記載する。
- #!/bin/bash
- 任意のファイル名をつけ保存し、拡張子をshとする。
- Terminalを起動し、実行権限を以下のコマンドで作成したファイルに付与する。
- $ chmod +x ~/Documents/backup.sh
- Terminalから実行し動作を確認する。
- $ ~/Documents/backup.sh
途中停止する場合、Control + Cで停止できます。
shファイル内容:
以下の内容はデスクトップにBackupフォルダを作成して個別バックアップ及びリストアするスクリプトです。なお、コマンド実行時にパラメターとしてディレクトリを入力を促すようにする事もできます。
------------------------------------------------------------------
Backup:
------------------------------------------------------------------
#!/bin/bash
echo Put your favourite path except the path to be backed up. Otherwise, it’ll be loop.
echo recommend to use external mount point such /Volumes
SUBVAR1=/Volumes/G-DRIVE
SUBVAR2=/Backup0728
if [ -z “$SUBVAR2” ]
then
VAR=$SUBVAR1
else
VAR=$SUBVAR1$SUBVAR2
mkdir $VAR
fi
mkdir $VAR
mkdir $VAR/System
mkdir $VAR/System/var
mkdir $VAR/System/Library
mkdir $VAR/User
mkdir $VAR/User/Mail
mkdir $VAR/User/Library
mkdir $VAR/User/Library/Application\ Support/
rsync -av -u ~/Desktop $VAR/User/
rsync -av -u ~/Documents $VAR/User/
rsync -av -u ~/Movies $VAR/User/
echo $VAR
rsync -av -u cp -R ~/Music $VAR/User/
rsync -av -u ~/Pictures $VAR/User/
rsync -av -u ~/Downloads $VAR/User/
rsync -av -u ~/Library/Logs $VAR/User/Library/
rsync -av -u ~/Library/Mail/V2 $VAR/User/Mail/
rsync -av -u ~/Library/Application\ Support/AddressBook $VAR/User/Library/Application\ Support/
rsync -av -u ~/Library/Calendars $VAR/User/Library/
rsync -av -u ~/Library/Safari $VAR/User/Library/
rsync -av -u ~/Library/Keychains $VAR/User/Library/
rsync -av -u ~/Library/StickiesDatabase $VAR/User/Library/
rsync -av -u ~/Library/Preferences $VAR/User/Library/
rsync -av -u ~/Library/Logs $VAR/User/Library/
sudo rsync -av -u /Library/KeyChains $VAR/System/Library/
sudo rsync -av -u /var/log $VAR/System/var/
sudo rsync -av -u /Library/Logs $VAR/System/Library/
Restore:
#!/bin/bash
echo put your favourite path except the path to be backed up. Otherwise, it’ll be loop.
echo recommend to use external mount point such /Volumes
SUBVAR1=/Volumes/G-DRIVE
SUBVAR2=/Backup0728
if [ -z “$SUBVAR2” ]
then
VAR=$SUBVAR1
else
VAR=$SUBVAR1$SUBVAR2
fi
echo Documents
echo cp -R $VAR/Documents ~/
echo Desktop
echo cp -R $VAR/Desktop ~/
echo Movies
sudo cp -R $VAR/Movies ~/
echo Music
sudo cp -R $VAR/Music ~/
echo Mail
sudo cp -R $VAR/User/Mail/V2 ~/Library/Mail/
echo Pictures
sudo cp -R $VAR/User/Pictures ~/
echo Downloads
sudo cp -R $VAR/User/Downloads ~/
echo user LibraryApplication Support
sudo cp -R $VAR/User/Library/Application\ Support/AddressBook ~/Library/Application\ Support/
echo user Library Calendars
sudo cp -R $VAR/User/Library/Calendars ~/Library/
echo user Safari
sudo cp -R $VAR/User/Library/Safari ~/Library/
echo User Keychains
sudo cp -R $VAR/User/Library/Keychains ~/Library/
echo User Stickies
sudo cp -R $VAR/User/Library/StickiesDatabase ~/Library/
echo User Preferences
sudo cp -R $VAR/User/Library/Preferences ~/Library/
echo User Logs
sudo cp -R $VAR/User/Library/Logs ~/Library/
echo System Library Keychain
sudo cp -R $VAR/System/Library/KeyChains /Library/
echo System var
sudo cp -R $VAR/System/var/log /var/
echo System Library
sudo cp -R $VAR/System/Library/Logs /Library/
以下の内容はデスクトップにBackupフォルダを作成して個別バックアップ及びリストアするスクリプトです。なお、コマンド実行時にパラメターとしてディレクトリを入力を促すようにする事もできます。
------------------------------------------------------------------
Backup:
------------------------------------------------------------------
#!/bin/bash
echo Put your favourite path except the path to be backed up. Otherwise, it’ll be loop.
echo recommend to use external mount point such /Volumes
SUBVAR1=/Volumes/G-DRIVE
SUBVAR2=/Backup0728
if [ -z “$SUBVAR2” ]
then
VAR=$SUBVAR1
else
VAR=$SUBVAR1$SUBVAR2
mkdir $VAR
fi
mkdir $VAR
mkdir $VAR/System
mkdir $VAR/System/var
mkdir $VAR/System/Library
mkdir $VAR/User
mkdir $VAR/User/Mail
mkdir $VAR/User/Library
mkdir $VAR/User/Library/Application\ Support/
rsync -av -u ~/Desktop $VAR/User/
rsync -av -u ~/Documents $VAR/User/
rsync -av -u ~/Movies $VAR/User/
echo $VAR
rsync -av -u cp -R ~/Music $VAR/User/
rsync -av -u ~/Pictures $VAR/User/
rsync -av -u ~/Downloads $VAR/User/
rsync -av -u ~/Library/Logs $VAR/User/Library/
rsync -av -u ~/Library/Mail/V2 $VAR/User/Mail/
rsync -av -u ~/Library/Application\ Support/AddressBook $VAR/User/Library/Application\ Support/
rsync -av -u ~/Library/Calendars $VAR/User/Library/
rsync -av -u ~/Library/Safari $VAR/User/Library/
rsync -av -u ~/Library/Keychains $VAR/User/Library/
rsync -av -u ~/Library/StickiesDatabase $VAR/User/Library/
rsync -av -u ~/Library/Preferences $VAR/User/Library/
rsync -av -u ~/Library/Logs $VAR/User/Library/
sudo rsync -av -u /Library/KeyChains $VAR/System/Library/
sudo rsync -av -u /var/log $VAR/System/var/
sudo rsync -av -u /Library/Logs $VAR/System/Library/
-------------------------------------------------------
-------------------------------------------------------
echo put your favourite path except the path to be backed up. Otherwise, it’ll be loop.
echo recommend to use external mount point such /Volumes
SUBVAR1=/Volumes/G-DRIVE
SUBVAR2=/Backup0728
if [ -z “$SUBVAR2” ]
then
VAR=$SUBVAR1
else
VAR=$SUBVAR1$SUBVAR2
fi
echo Documents
echo cp -R $VAR/Documents ~/
echo Desktop
echo cp -R $VAR/Desktop ~/
echo Movies
sudo cp -R $VAR/Movies ~/
echo Music
sudo cp -R $VAR/Music ~/
echo Mail
sudo cp -R $VAR/User/Mail/V2 ~/Library/Mail/
echo Pictures
sudo cp -R $VAR/User/Pictures ~/
echo Downloads
sudo cp -R $VAR/User/Downloads ~/
echo user LibraryApplication Support
sudo cp -R $VAR/User/Library/Application\ Support/AddressBook ~/Library/Application\ Support/
echo user Library Calendars
sudo cp -R $VAR/User/Library/Calendars ~/Library/
echo user Safari
sudo cp -R $VAR/User/Library/Safari ~/Library/
echo User Keychains
sudo cp -R $VAR/User/Library/Keychains ~/Library/
echo User Stickies
sudo cp -R $VAR/User/Library/StickiesDatabase ~/Library/
echo User Preferences
sudo cp -R $VAR/User/Library/Preferences ~/Library/
echo User Logs
sudo cp -R $VAR/User/Library/Logs ~/Library/
echo System Library Keychain
sudo cp -R $VAR/System/Library/KeyChains /Library/
echo System var
sudo cp -R $VAR/System/var/log /var/
echo System Library
sudo cp -R $VAR/System/Library/Logs /Library/
参考リンク:
0 件のコメント:
コメントを投稿