pwd はフォルダスペースに「\」を追加します。

pwd はフォルダスペースに「\」を追加します。

Linuxでは、スペースを含むフォルダを使用しようとすると、cdその中に\を追加する必要があることがわかります。

たとえば、というフォルダがありますfolder one

出力しようとするとpwd

/home/user/folder one

私が望むのは、出力しようとpwdしている時です。

/home/user/folder\ one

どうすればいいですか?

答え1

特定のユースケースでは、上記のKusalalanandaのコメント(5)に同意しますが、誰かが値を印刷するときにシェル引用符を使用しようとしたときに質問に直接答えるには、書式設定printfディレクティブ%qを使用してください。

努力する:

$ alias mypwd='printf '\''%q\n'\'' "$PWD"'

使用法:

$ mkdir "/tmp/foo bar"
$ cd "/tmp/foo bar"
$ mypwd
/tmp/foo\ bar

bashこれはシェルの組み込み機能ですprintf/usr/bin/printf

関連情報