ばぐばぐわーるど

Pythonなどなど

【Windows】いかにしてファイルを隠すか

あなたはちょっとPCを貸してって言われた時困りませんか?
困らずに貸せたら気持ちがいいですよね。

逆に貸し渋ってる人を見ると、見られたくないものがあるんだろうなー
きっとあんなものやこんなものだろうなーと邪推してしまうものです。

やっぱり人には見られたくないファイルはあります。
ただ人に見られる、貸すときもあるので、そんなときのために僕がどうやってファイルを隠してきたかを書きます。

またブックマークや履歴なんかも見られたくないですね。それらについても書きましょう。

1. 見られたくないファイルは外付けHDDやUSBメモリ

一番てっとり早い方法です。普通はこれで問題ないと思います。ただ僕はUSBをつなぐことやHDDを隠す?のが面倒くさいのであまりすきじゃないです。あとファイルの閲覧するとPC側にファイル名の履歴等が残ったりもしますからね。

Dropbox等、クラウド上で管理するという手もありますが、僕はあまり個人情報をクラウドサービスに預けまくるのが好きじゃないので却下です。

2. 仮想マシンで見られたくないファイルを管理

若干面倒ですが有効な方法です。一時期これが最強だと思ってました。Linuxかなんかの仮想マシンに見られたくないファイル全部ぶち込んで、その中でブラウジングすれば見られたくない情報はすべて隠せます。

もちろん、その気になれば暗号化されてるわけでもないので(たぶん)情報は完全に隠せてるというわけではないと思いますが、他人のPCを一時的に借りるときにそんな失礼なことする人はいないです。

ただやはりいちいち仮想マシンを立ち上げるのが面倒なのと普段使いするには重いのが欠点です。

3. 隠しファイル+隠しフォルダ+Cygwin

現在の僕の方法です。問題は多々あると思いますけど、上記2つの方法に比べて楽なのが良いです。

やり方 (Cygwinインストール済みが前提)

1.見られたくないファイルをまとめます
2. 見られたくないファイルを隠しファイル化

フォルダを右クリック、プロパティから隠しファイル、変更をこのフォルダー、サブフォルダーおよびファイルに対して適用をします
これによってエクスプローラや検索によって見つからないようにします。

3. Cygwinの.bshrcや.zshrcに適当な設定を書く

一番面倒なところですが、これが重要です。
まずエイリアスでopenコマンドを用意します。

alias open='cygstart'
alias o='cygstart'
alias o.='o .'

僕のopen周りはこんな感じです。面倒なのでoでファイルを開けるようにしてます。ほかにもよく使うのはアルファベット1文字で設定してます。o(スペース).でカレントディレクトリを開きますが、o.と打ち間違えるのでo.で定義しています。

エイリアスを追加しまくります。

alias secret='cd ~/secret/'

こんな風にで移動したいファイル名でcdできるようにしておきます。

alias chrome='open chrome'
alias c='open chrome'

Chromeを私的な目的で使う用にする場合こんな感じのエイリアスを用意しておきます。
そしてデスクトップ、ホーム等のChromeという単語の出てくるあらゆるものを削除します。代わりにデスクトップのわかりやすいところにFirefoxでも置いときましょう。

4. Cygwin上から隠しファイルにアクセス

ターミナルからlsをすれば隠しファイルは見ることができるので、そのファイルを

open ファイル名

とかで開けばOKです。

この方法の問題点は勝手にCygwinのターミナルを開いて、人の.bshrcや.zshrcを勝手に覗くような不躾な輩に使わせると一貫の終わりということでしょうか。ただたくさん設定書いとけば大丈夫でしょう。わーたくさん書いてるなーくらいの感想で終わってくれるはずです。

あとはファイルを追加する際、いちいち隠しファイル化するのが面倒ということでしょうか。これはそのうちなんとかしたいですね。隠しフォルダにいれたら自動で隠しファイルにする設定とか無いんでしょうか。

個人的にターミナル上でVimを普段使いしたいのでこの方法はかなり気に入ってます。最初に設定を書くところは面倒ですけど、出来上がったらかなり楽です。


全然関係ないけどCygwin+Pythonの設定

そんなこんなで最近の僕はターミナル上で色々操作しているんですが、一応PythonブログなのでPythonの設定に触れときます。
Cygwin上でPython動かそうとすると、Cygwinに内蔵されてるPythonが動作します。

Python 2.7.5 (default, Oct  2 2013, 22:34:09)
[GCC 4.8.1] on cygwin
Type "help", "copyright", "credits" or "license" for more information.

こんな感じで。on cygwinってなってますね。
これでどうやってWindowsの方にインストールしたPythonを動かせばいいかちょっと悩みました。

結論を言うと以下のエイリアスを追加すればOKです。

alias py='/cygdrive/c/Python33/python.exe'
alias ipy='/cygdrive/c/Python33/Scripts/ipython3.exe qtconsole --pylab'
alias pynote='/cygdrive/c/Python33/Scripts/ipython3.exe notebook --pylab inline'

pyでpython33 on windowsが実行できるようになります。
ipyはqtconsoleでのipython、pynoteはipython notebookです。