0
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

テキストエディタを開くときにできる一時ファイルを再帰的に削除するスクリプト

はじめに

Linuxのエディタ(vim,emacs)などでは、デフォルトの設定だとファイルを開いたときに、バックアップ用として末尾に~(チルダ)がついたファイルが自動的に作成されます。

diffコマンド実行時に、チルダファイルが差分として出てしまい不便だったので、差分とならないように当該フォルダでチルダファイルを再帰的に削除するスクリプトを作成しました。

実行環境

  • OS: CentOS 7.0

免責事項

スクリプトの実行は自己責任でお願いします。
このスクリプトを使って何らかの損害が発生しても、作者は責任を負いません。

スクリプト

rec_clean.sh
#!/bin/sh

function sub_func {

    \rm -f ${1}/*~
}

function rec {

    sub_func ${1}

    for FNAME in `ls ${1}`
    do
        local FPATH=${1}/${FNAME}

        if [ -d ${FPATH} ]; then
            rec ${FPATH}
        fi
    done
}

# main

rec `pwd`

使い方

実行したいディレクトリへ移動し、スクリプトを実行する。

$ cd 実行したいディレクトリ
$ ./rec_clean.sh

拡張案

sub_funcに対象コマンドを追加すれば、合わせて削除できます。
例えば、末尾に.bakが付いたファイルはsub_funcへ下記のコマンドを追加すれば実現できます。

 \rm -f ${1}/*.bak
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
0
Help us understand the problem. What are the problem?