EncFSのマウントの引数が長くなりがちで面倒なので、エイリアス的に使えるスクリプトを書いてみた。githubで公開している。

#!/usr/bin/zsh

# This script needs encfs
if ! type encfs /dev/null
then
print "Encfs is no found." > 2
fi

typeset -A encmap # name, path, mountpoint mapping assoc.

# Check configuration file.
if [[ ! -f ~/.yek/encmap ]]
then
print "No mapping file." > 2
exit 1
fi

# Read the configuration file.
while read name epath dest
do
encmap[$name]="$epath::$dest"
done ~/.yek/encmap

# Decryption.
encfs ${encmap[$1]%::*} ${encmap[$1]#*::}

結構丁寧なコメントがついているので分かりやすいだろう。

EncFSディレクトリとマウントポイントをとる必要があり、しかも名前でアクセスするようにしたかったため、3要素となり多重配列の扱えないZshではやや難しい。2つの要素を::でつなぐことにより${…#…}${…%…}で取り出せるようにした。

コマンドやファイルについて検証もするため私としては丁寧なスクリプトだ。もちろん、公開のために配慮した。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください