GNU/Linux >> Linux の 問題 >  >> Linux

名前がマイナスにすぎないディレクトリを入力する方法は?

lessnをウェブサーバーにダウンロードして解凍しました。

-という名前のフォルダが含まれています 。私はそれに対処する方法を知っていると思いましたが、私は知りません。

cd -- -を試しました 、しかしそれは望ましい効果をもたらしません。引用符を使用しても影響はないようです。無駄に、いたるところにスラッシュを入れました。

このフォルダに変更する適切な方法は何ですか?

承認された回答:

あなたはそれがパラメータになるのを避けたいので、私たちはそれに何かを追加しようとします。現在のディレクトリには、.でアクセスできます。 、したがって、サブフォルダー- 代わりに./-でアクセスできます 。

cd ./-

cd -- -の理由 rmを比較すると、実装が異なるため、機能しません。 (man rmを参照してください )to cdman bashを参照してください またはman cd )、cd -を見る別の解釈があります パラメータとして(man bashを参照) またはman cd

cdにも注意する必要があります この回答で読むことができるように、はシェルビルトイン関数です:

cd は外部コマンドではありません–シェルビルトイン関数です。これは現在のシェルのコンテキストで実行され、外部コマンドのように、別のプロセスとしてfork/execされたコンテキストでは実行されません。

これは、BashとCoreutilsが2つの異なるものであるため、実装が異なる理由を説明しています。

あなたがこれを信じないだろうと仮定しましょう、どうやってそれを確認しますか? whichを使用します およびtype

 $ which cd && type cd
which: no cd in (/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.7.2:/usr/games/bin
cd is a shell builtin
 $ which rm && type rm
/bin/rm
/bin/rm is /bin/rm


Linux
  1. 自分のディレクトリにR3.3.1をインストールする方法は?

  2. Bashスクリプトのインスタンスを1つだけ実行するようにするにはどうすればよいですか?

  3. Linuxでスレッドに名前を付ける方法は?

  1. ディレクトリへのリンクを作成する方法

  2. Nautilus で現在のディレクトリのみを検索する方法 (古い動作を復元する)

  3. lsof - 出力を物理ファイルのみに制限する - どのように?

  1. Linuxでディレクトリの名前を変更する方法

  2. Linuxでディレクトリをgzipで圧縮する方法

  3. サブディレクトリではなく現在のディレクトリのみで「find」コマンドを実行する方法