我尝试写一个小ksh
脚本:
fDestExists (){
cd /tmp
read vANSWER?" >> Do you want to create a repository in pwd ? Type YES or NO"
echo " |----> $(fGetDatum) You typed: " $vANSWER
if [ "$vANSWER" = "YES" ]; then
read vANSWER2?" >> Type your repository's name."
mkdir -p $vANSWER2
cd $vANSWER2
echo " |----> Logs will be coped in pwd."
elif [ "$vANSWER" = "NO" ]; then
echo " |----> Logs will be coped in pwd."
else
echo " |----> You typed a wrong answer; exiting."
exit 1
fi
pwd #return
}
这里有几个问题。
如何在 echo 中使用 pwd 的值?
为了返回值,我读到在最后一行使用 echo [yourValue] 是可行的。然后在调用该函数的地方,我想我可以使用:$?。那么我怎样才能对 pwd 做同样的行为呢?
答案1
1:可以直接使用PWD变量,eg:
echo " |----> Logs will be coped in $PWD."
2:$?
用于检索最后一个命令的返回值,该值是数字。这里无法传递字符串,返回值应该是 0 表示成功,或者其他值表示失败。如果您想获取该信息,请使用return 0
或。return -1
当您修改脚本当前目录时,$PWD
无论如何它都将在调用方可用。