Ошибка
Failed to execute child process "cd" (No such file or directory)
возникает потому, что cdэто один из SHELL BUILTIN COMMANDSисполняемых файлов, а не исполняемый файл, который вы физически найдете на жестком диске.
Чтобы запустить его или другие built-inкоманды в вашем скрипте, вам нужно передать всю строку на bashвызов
gnome-terminal -e '/bin/bash -c "cd ~/Desktop/CCA/; ./Adventure" '
Если нет другой внутренней команды, которую вы должны выполнить, вы можете установить рабочий каталог для gnome terminal, как только что ответил здесь :
gnome-terminal --working-directory=/home/username/Desktop/CCA/ -e './Adventure'
До тошноты : есть несколько альтернатив:
Если вы просто в терминале, вы можете сделать
aliasкак
alias Star_My_Game="cd ~/Desktop/CCA; ./Adventure "
и положить его в .bashrcили ~/.bash_aliasesтак , что вы будете иметь возможность работать с одной командой Start_My_Gameв каждой оболочке вы будете (Это уютнее выбрать простой / короткое имя , чем Start_My_Game ...)
или скрипт, который вы можете сделать выполняемым ( chmod u+x MYscript) и вставить в него path(как правило ~/bin, это хороший кандидат).
Я полагаю, вы можете разместить на своем рабочем столе ссылку, которая запускает терминал и изменяет поведение при запуске. От помощи гнома
Выберите «Правка» ▸ «Настройки профиля» ▸ «Заголовок и команда».
Установите флажок Выполнить пользовательскую команду вместо моей оболочки.
В текстовом поле введите команду или желаемую оболочку.
Команда будет передана в терминал точно в том виде, в котором вы ее написали, включая все заданные вами аргументы. Переменные среды будут унаследованы от терминала, поскольку это дочерний процесс терминала.
Откройте новую вкладку или окно терминала, чтобы увидеть, как выполняется пользовательская оболочка или команда
cdэто не команда.