我知道在 Linux 上,当您尝试cd
使用包含空格的文件夹时,您必须在其中添加 \ 。
例如,我有一个名为 的文件夹folder one
。
当我尝试pwd
输出时:
/home/user/folder one
我想要的是当我尝试pwd
输出时:
/home/user/folder\ one
怎么做?
答案1
对于您的特定用例,我赞同 Kusalananda 上面的评论(好吧,第五次),但是为了直接回答您的问题,当有人试图在打印值时使用 shell 引用时,请使用 的printf
格式化%q
指令:
尝试:
$ alias mypwd='printf '\''%q\n'\'' "$PWD"'
用法:
$ mkdir "/tmp/foo bar"
$ cd "/tmp/foo bar"
$ mypwd
/tmp/foo\ bar
bash
请注意,这是shell 内置的功能printf
,在/usr/bin/printf
.