[小ネタ][bash] ハイフンで始まる名前のファイルをmvする


皆さんこんにちは。よくコマンドの引数として「--hogehoge」なんてつけることがあるかと思いますが、知らない間にこの引数をファイルとしてブチまけてしまうことがたまにあります。なので私はホームディレクトリを汚さないよう、 ${HOME}/tmp みたいなブチまけてもよいディレクトリにcdして作業するクセをつけています。

さて、そんなある日、ブチマケを発見してしまいまして・・・

こんな風に、ハイフンで始まるファイルがあって名前を変更したくても・・・

そんな時は慌てず騒がず

mvコマンドの後に続くハイフンがコマンドラインオプションとして解釈されてしまうようです。なので、「./」をつけて絶対パスで指定してあげればファイル名だと解釈してくれます。

ね、簡単でしょう?

[小ネタ][bash] ハイフンで始まる名前のファイルをmvする”に関する1件のコメント

  1. なるほど、カレントディレクトリから指定すればええですね。
    私がいつもやってたのは、下記のように--でオプション打止め指定です。

    $ mv -- --hoge HOGE

    引数に--を使うと、オプションはここで終了の意味になるようです。C言語のgetopt関数を使ってオプションを処理してる場合は、--でオプション打ち止めが使えるんじゃないですかね。

コメントは受け付けていません。