Linux 如何在shell脚本中从命令行参数中检索值
我用shell脚本编写了两条语句,如下所示:-Linux 如何在shell脚本中从命令行参数中检索值,linux,shell,unix,command-line-arguments,Linux,Shell,Unix,Command Line Arguments,我用shell脚本编写了两条语句,如下所示:- str=$'cd /home \n mkdir $1' echo "$str" 当我执行上述脚本文件时,它会显示以下输出:- [root]# ./ScriptCheck.sh pravin cd /home mkdir $1 输出应在哪里:-> cd /home mkdir pravin 变量不能用单引号(“)展开为字符串。尝试使用双引号(“)代替 有关详细信息,请参阅。变量不会使用单引号(”)展开为字符串。请尝试使用双引号(“)代替 有关详
str=$'cd /home \n mkdir $1'
echo "$str"
当我执行上述脚本文件时,它会显示以下输出:-
[root]# ./ScriptCheck.sh pravin
cd /home
mkdir $1
输出应在哪里:->
cd /home
mkdir pravin
变量不能用单引号(
“
)展开为字符串。尝试使用双引号(“
)代替
有关详细信息,请参阅。变量不会使用单引号(
”
)展开为字符串。请尝试使用双引号(“
)代替
有关详细信息,请参阅。尝试更改:
str=$'cd /home ; mkdir $1'
echo "$str"
尝试更改:
str=$'cd /home ; mkdir $1'
echo "$str"
请注意,使用双引号时,
\n
将被视为两个文字字符,而不是新行。将-e
添加到对echo
的调用中,将导致echo
再次将该对解释为换行符。请注意,使用双引号时,\n
将被视为两个文字字符,而不是新行。将-e
添加到对echo
的调用中,将导致echo
再次将对解释为换行符。单引号不提供shell变量的输出。要获得确切的变量,您可能需要将其括在双引号内。单引号不提供shell变量的输出。为了得到准确的变量,您可能需要将其括在双引号内。