【Shell】シェルでのバックアップ / リストア に関するあれこれ

■ はじめに

シェルでのバックアップ / リストア に関する処理で
よく使うTipsを纏めておく。

目次

【1】外部ファイル取り込み
【2】日付/日時を付加するには
【3】古いファイルを削除
【4】ディレクトリ内の指定した拡張子のファイル名を取得する
【5】その他事項
 1) Shebang「#!/bin/sh」「#!/bin/bash」

 【1】外部ファイル取り込み

. ./.db_info

echo "${MYSQL_USER} / ${MYSQL_PASSWORD}"
.db_info 
MYSQL_USER=root
MYSQL_PASSWORD=password

 【2】日付/日時を付加するには

echo `date "+%Y%m%d_%H%M%S"`

変数として利用するなら

NOW=$(date "+%Y%m%d_%H%M%S")

 【3】古いファイルを削除

 * findコマンドのmtimeオプションを使う
  => 「-type f」: ファイルに限定(ディレクトリではなく)

find /home/admin/backups -type f -mtime +7 -exec rm {} \;

 【4】ディレクトリ内の指定した拡張子のファイル名を取得する

for 【変数・ファイル名が格納】 in *.【拡張子】; {
  # 繰り返し処理
}

 ファイル名から拡張子なしを取り除く

【変数・拡張子なしのファイル名】=`basename 【ファイル名】 .【拡張子】`;

 【5】その他事項

1) Shebang「#!/bin/sh」「#!/bin/bash

* 詳細は、以下の関連記事を参照のこと

シェル ~ Shebang
https://dk521123.hatenablog.com/entry/2024/02/02/000000

関連記事

シェル ~入門編~
https://dk521123.hatenablog.com/entry/2014/10/23/005406
シェル ~ Shebang
https://dk521123.hatenablog.com/entry/2024/02/02/000000