Помилка
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, це хороший кандидат).
Я припускаю, що ви можете покласти на робочий стіл посилання, яке виконує термінал і змінює стартову поведінку. Від допомоги гнома
Виберіть Правка ference Налаштування профілю ▸ Назва та команда.
Поставте прапорець Запустити власну команду замість моєї оболонки.
У текстовому полі введіть команду або потрібну оболонку.
Команда буде передана терміналу саме так, як ви її записуєте, включаючи будь-які вказані вами аргументи. Змінні середовища будуть успадковані від терміналу, оскільки це дочірній процес терміналу.
Відкрийте нову вкладку або вікно терміналу, щоб побачити, як виконується власна оболонка або команда
cdце не команда.