您好,我有以下脚本,我正在学习 shell 脚本:
#! /bin/sh
gnome-terminal -- 'cd ~/DevSpace/AndroidStudio/arctic_fox/bin/ && ./studio.sh'
运行此程序后出现以下错误:
“cd ~/DevSpace/AndroidStudio/arctic_fox/bin/ && ./studio.sh”: Failed to execve: No such file or directory
如果我在终端上运行此命令,cd ~/DevSpace/AndroidStudio/arctic_fox/bin/ && ./studio.sh
它会正常工作。现在我想将其写为脚本,但似乎无法运行它。
该脚本的目的非常简单。cd 到所述文件夹然后运行./studio.sh
。非常简单,但我被难住了。
我遗漏了什么?我需要帮助查找这个简单脚本中的错误。
谢谢!
答案1
将您的脚本更改为:
#! /bin/sh
cd ~/DevSpace/AndroidStudio/arctic_fox/bin/ && ./studio.sh
您可能不需要使用gnome-terminal
。
您的脚本是一个 shell 脚本,它使用您系统安装的sh
作为其解释器。shell 脚本可以独立于任何终端运行。
要了解 shell 和终端之间的区别,可以考虑阅读以下答案“终端”、“shell”、“tty”和“控制台”之间到底有什么区别?(不过如果在这个阶段答案超出你的理解范围,也不要惊慌)。