我知道在shell脚本中使用#会注释该行的其余部分。
我必须将变量从另一个文件传递给shell脚本。我正在使用“导出”来执行此操作。问题是变量的值在其中有一个#,因此我无法在shell脚本中获取该值。
我正在使用的脚本在下面给出
导出FILE_NAME =#gclfac * sched $
正如您所看到的,#在值的开头,我无法在shell脚本中获取任何内容。
如何在shell脚本中传递'#'值而不注释掉其余部分?任何帮助将不胜感激
答案 0 :(得分:0)
export FILE_NAME='#gclfac*sched$'
或
export FILE_NAME="#gclfac*sched$"
要执行的脚本:
#!/bin/bash
set -x
export FILE_NAME='#jfkslj**23948290$'
echo $FILE_NAME "_ $FILE_NAME"
将它放到test.sh使其可执行(chmod +x test.sh
)并以./test.sh
运行并在此处发布输出。
PS。你的shell bash
(如果不是,将第一个字符串中的#!/ bin / bash改为你的shell,并且不要忘记给我们写信)?
答案 1 :(得分:0)
将作业字符串放在双引号中。所以使用你的例子就是;
FILE_NAME="#gclfac*sched$"
export FILE_NAME