pwd 在文件夹空间中添加“\”

pwd 在文件夹空间中添加“\”

我知道在 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.

相关内容