ぜんぶなんとかなる

ふしみの雑文

automatorで、ドロップされたフォルダを暗号化zipしてパスワードをコピーするアプリつくった

「暗号化zipで保存してメールで送り、次のメールでパスワードを送る」というよく分からない習慣がありとてもメンドくさいので、自動化したかった。「automatorで選択されたファイル一覧をARGVに受け取ったりしてシェルスクリプトとかrubyでいろいろ書きたいな」と思ってたら、先輩 (@chephes) に「できるよ!」って教えてもらったので作った。


def getRandomString (length = 10)
  source = ("a".."z").to_a + ("A".."Z").to_a + (0..9).to_a
  key = ""
  length.times{ key += source[rand(source.size)].to_s }
  return key
end

password = getRandomString

if ARGV.length == 1
	path = ARGV[0]
	path_a = path.split('/')
	filename = path_a.pop;
	dir = path_a.join('/')
	`cd #{dir}; zip -rvP #{password} #{filename}.zip "#{filename}" -x .DS_Store __MACOSX`
	puts password
else

end

複数ファイルを渡されたときはなにもしていない。同じ作り方でサービスにもできる (右クリックで圧縮)。