无法进入带有空格的目录

无法进入带有空格的目录

我尝试了所有进入带有空格的目录的方法,但都不起作用。

mkdir "test folder"

尝试 #1

cd "test folder"

**bash: cd: test: No such file or directory**

尝试#2

cd 'test folder'

**bash: cd: test: No such file or directory**

尝试#3

cd test\ folder/

**bash: cd: test: No such file or directory**

尝试#4

TEST=test\ folder

echo $TEST
**test folder**

cd $TEST

**bash: cd: test: No such file or directory**

这是我的 bash 版本:GNU bash,版本 4.2.24(1)-发布(i686-pc-linux-gnu)。难道我的 出了什么问题.bashrc

答案1

目录名称中可能存在其他隐藏字符(除了空格......比如 TAB).....

尝试:

 cd *folder

或者

 cd test*

看看是否有效。

答案2

您可以使用以下ls开关来检测这些类型的问题:

   -b, --escape
          print C-style escapes for nongraphic characters

   -q, --hide-control-chars
          print ? instead of non graphic characters

   --show-control-chars
          show non graphic characters as-is (default unless program is `ls' and output is a terminal)

   -Q, --quote-name
          enclose entry names in double quotes

笔记:通常--show-control-chars默认开启。

例子:

% touch normal_file
% touch "spacy_file "
% touch "ctrl_file^[^\^]"

笔记:第三个文件是通过按下...创建的。

  • 按住Ctrl并按下V&3
  • 按住Ctrl并按下V&4
  • 按住Ctrl并按下V&5

-lb

% ls -lb
total 0
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 ctrl_file\033\034\035
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 normal_file
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 spacy_file\ 

-l

% ls -l
total 0
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 ctrl_file???
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 normal_file
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 spacy_file 

-q

% ls -q
ctrl_file???  normal_file  spacy_file 

-lq

% ls -lq
total 0
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 ctrl_file???
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 normal_file
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 spacy_file 

-lQ

% ls -lQ
total 0
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 "ctrl_file\033\034\035"
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 "normal_file"
-rw-rw-r-- 1 saml saml 0 Jan 13 21:22 "spacy_file "

相关内容