Bash : チルダ展開(tilde expansion)でホームディレクトリパスの指定を簡単に
初めにBashの展開について簡単に Bashでは 展開(expansion) という記法を用いることで、 複数のファイルを一括で指定 ファイル名を編集して指定 別のコマンドの出力を差し込む などといった処理が簡単に出来るようになります。 ワイルドカードを用いた記述 展開に用いられる記法はいくつか種類がありますが、よく使われるのはワイルドカード(*)を使った指定方法ですね。 例えば、 a.txt, b.txt, c.txt, 001.jpg, a002.png の5つのファイルからmvコマンドでtxtファイルだけをtextというフォルダに移動させる場合、 $ mv *.txt text と記述することが出来ます。ここではワイルドカードはパターンマッチングによりテキストファイル名に展開されます。ファイル3つだけなら全てファイル名を記述してもそう大差は無いですが、これがテキストファイル100個とか200個とかになるとワイルドカードを使うなどしないと手間がかかり過ぎてしまうでしょう。 チルダ展開とは さて今回紹介する チルダ展開 ですが、そもそも 「チルダとはなんぞや?」 という説明から始めていきましょう。 チルダとは チルダは英単語では tilde で、発音を区別するために用いられる記号。波ダッシュとも呼ばれています。そして数学やコンピュータ関係ではまた特別な意味を持った記号としても用いられます。 チルダはキーボードから入力すると「~」となります。 チルダ展開 コマンドでチルダを用いると、そのチルダはホームディレクトリのパスとして展開されます。これがチルダ展開。 例えば $ cd ~ とすると、~がホームディレクトリのパスとして展開されるのでこのcdコマンドでホームディレクトリに移動することが出来ます。チルダ展開がどう展開されているのか確かめるなら $ echo ~ とするといいでしょう。この場合は /home/foo と表示されます(fooは任意のユーザー名にでも読み替えて下さい)。 つまりは $ cd ~ $ cd /home/foo は同じことを表していることになるわけです。 チルダ1文字だけでホームディレクトリを指定出来るというのは便利です。 その他、ホームディレ...