不确定标题是否准确。让我们说我有一个带字符串的变量:
var=C:\Windows\file.exe
我想打印它的价值,好像它是一个文字字符串,即我想在屏幕上看到这个:
C:\Windows\file.exe
但是,当然,打印变量的常用方法不会这样做:
echo $var
C:Windowsfile.exe
echo "$var"
C:Windowsfile.exe
echo '$var'
$var
有可能吗?
答案 0 :(得分:3)
问题是shell在定义时正在操作反斜杠,而不是在稍后评估变量时。您需要引用声明,即使用任何shell转义机制来转义\
。
以下是您正在做的事情:
$ var=C:\Windows\file.exe
$ echo "$var"
C:Windowsfile.exe
以下是您的需求:
$ var='C:\Windows\file.exe'
$ echo "$var"
C:\Windows\file.exe