尝试编写脚本以在进入ssh的深层目录中运行命令

时间:2017-11-26 18:32:41

标签: bash macos ssh

所以我试着编写一个脚本,让我运行一个命令来初始化一些东西。更具体地说,让我说我从我的主目录开始,但要运行此命令,我希望我必须在目录中的三个文件夹深入主目录。

我的脚本看起来像这样。

    #!/bin/sh
    cd home/path/to/final/directory/
    command

现在通常,当我cd到这个目录时,我可以在命令行上运行命令,一切正常。

当我尝试使用脚本执行此操作时,命令行会抛出一个错误,指出该命令未被识别,就像计算机不知道在哪里查找一样。

我使用的临时修复程序是指向我想要的目录的符号链接但是我希望有人可以帮助我,这样当我ssh到这个节点时,这个脚本可以立即运行所以我不必深入了解目录,运行命令并再次离开。

1 个答案:

答案 0 :(得分:1)

尝试定义完整路径,例如:

#!/bin/sh    
cd $HOME/path/to/final/directory && /path/to/your/command

在这种情况下,它会尝试将cd放入您定义的目录中,但是如果它找不到dir则不会运行该命令,这是因为&&

要在运行命令之前进行测试,您可以执行ls,例如:

cd $HOME/path/to/final/directory && ls