String bash读取字符串格式

String bash读取字符串格式,string,bash,rsync,String,Bash,Rsync,试图将用户输入分配给变量SRC 在文本编辑器中: 阅读-p“5.将包含您的短名称的文件夹拖放到此窗口中。将文件夹拖放到此处后按“返回”:“SRC” cd$SRC 在终端: /Volumes/Macintosh\HD\1/Users/fakeperson(此路径已分配给SRC) 但是,当我回显$SRC时,我得到以下结果: /Volumes/Macintosh HD 1/Users/fakeperson(HD后无反斜杠) 我不能 cd /Volumes/Macintosh HD 1/Users/f

试图将用户输入分配给变量
SRC

在文本编辑器中: 阅读-p“5.将包含您的短名称的文件夹拖放到此窗口中。将文件夹拖放到此处后按“返回”:“SRC” cd$SRC

在终端:
/Volumes/Macintosh\HD\1/Users/fakeperson
(此路径已分配给SRC)

但是,当我回显$SRC时,我得到以下结果:
/Volumes/Macintosh HD 1/Users/fakeperson
(HD后无反斜杠)

我不能

 cd /Volumes/Macintosh HD 1/Users/fakeperson 
最终,我希望这一行能起作用

rsync -raz --progress $SRC $HOME

有什么帮助吗?

反斜杠用作空格的转义字符。。如果要在
HD
之后使用反斜杠,则需要使用另一个
反斜杠来转义反斜杠,因此需要输入

/Volumes/Macintosh\HD\\\1/Users/fakeperson

将src指定为

/Volumes/Macintosh HD\1/Users/fakeperson

双引号中输入字符串总是一个好主意,双引号中有空格和特殊字符,比如
\
,而不是转义它们。您只需输入以下内容:

"/Volumes/Macintosh HD\ 1/Users/fakeperson"

这非常接近。但是,在将文件路径分配给SRC之后,我尝试进行最少的交互。是否有自动附加反斜杠的命令?@bskillets ok。。我明白你的意思。。没有自动分配反斜杠的命令。。。将变量
$SRC
放在脚本中使用的双引号下
cd“$src”
这将解决您的大部分问题。。