我尝试创建一个执行“pwd”或“ls”命令之类的.sh文件。
当我执行.sh文件时,我的问题。
它似乎无法识别任务
我试着用echo
示例:echo 'lsApps'
或echo "lsApps"
但它打印任务的名称而不是执行命令
例如,我想执行一个生成pwd的.ssh文件
VAR_1=pwd
echo $VAR_1
但它会打印我pwd而不是当前路径 ... 有什么想法吗?
答案 0 :(得分:0)
echo
用于在屏幕上打印(man page reference)。如果你执行echo 'IsApps'
,它将把它作为一个字符串并打印出来。如果要执行命令,可以通过执行IsApps
(急性而不是引号,急性通常位于转义键下方)来执行。这将执行命令并在屏幕上显示输出。如果要将命令的输出存储在变量中,可以执行
<variable_name>=`IsApps`
这会将输出存储在变量中。请注意,变量名和命令之间没有空格。而且,这些不是引用,而是尖锐的。要在屏幕上打印变量,您可以通过执行echo $<variable_name>
如果您根本不想看到输出。你可以做到
IsApps > /dev/null
这将执行命令,但您不会在屏幕上看到任何标准输出。
就ssh而言,请ssh-keygen
然后ssh-copy-id user@remote_ip
设置ssh密钥,这样您就不必使用ssh输入密码。完成后,您可以在shell脚本中使用ssh user@remote_ip
。