設定ファイル編集前にyyyymmdd付きでバックアップする際のコマンド

Bash

こんな書き方もできますよ、というレベルで。

.YYYYMMDD というファイルをサフィックス付きでファイルやディレクトリをバックアップするコマンド。

# file_to_backupというファイルが存在
$ ls
file_to_backup
# -a オプション付きでコピー
$ cp -a file_to_backup{,.$(date +%Y%m%d)}
# 年月日付きでファイルがバックアップされている
$ ls
file_to_backup  file_to_backup.20130420

以下のようなスクリプトを作るといい。

cpbk

#!/usr/bin/env bash
set -o errexit
set -o nounset
[ -f "${1}" ] \
  && cp -a "${1}"{,.$(date +%Y%m%d)}

使い方

$ cpbk file_to_backup

Bash

Posted by genzouw