1KB 未満のファイルを移動

$ mkdir -p ~/trash
$ find . -size -1024c -exec mv -b {} ~/trash \;

ファイルの重複検出

fdupes を利用したファイルの重複を検出

  1. インストール

    $ sudo apt-get install fdupes
  2. 検出

    $ fdupes -r <TARGET_DIR>
  3. 最初以外を移動

    $ mkdir -p ../trash/ && fdupes -fr . | xargs mv ../trash/

先頭1MB のMD5 ハッシュで重複ファイルを検出

  1. スクリプト

    ~/test.sh
    #!/bin/sh
    cp /dev/null /tmp/list0.txt
    find . -type f -exec dd if={} bs=1024 count=1000 of=/tmp/work.bin \; -exec md5sum /tmp/work.bin >> /tmp/list0.txt \; -exec du {} >> /tmp/list0.txt \;
    sed ':loop; N; $!b loop; ;s/\/tmp\/work.bin\n//g' /tmp/list0.txt > /tmp/list1.txt
    sort /tmp/list1.txt | uniq -D -w 32 > /tmp/list2.txt
    rm /tmp/work.bin /tmp/list0.txt
  2. 実行

    $ cd /PATH/TO/TARGET
    $ time ~/test.sh
  3. 結果

出力されるファイル 内容
/tmp/list1.txt 全ファイルのハッシュ, サイズ, パス
/tmp/list2.txt 重複ファイルのハッシュ, サイズ, パス

~/.bash_aliases

~/.bash_aliases
alias update='sudo apt-get update'
alias upgrade='sudo apt-get upgrade'
alias dist-upgrade='sudo apt-get dist-upgrade'
alias autoremove='sudo apt-get autoremove'
alias en='export LC_ALL=en_US.UTF8'
alias ja='export LC_ALL=ja_JP.UTF8'