Ответ 1
Я считаю, что вы имеете в виду что-то вроде xterm -e your.sh &
Не забывайте окончательный &
Я пишу ksh script, и мне нужно запустить исполняемый файл в отдельном окне командной строки.
Я считаю, что вы имеете в виду что-то вроде xterm -e your.sh &
Не забывайте окончательный &
xdg-open
- аналогичное приложение командной строки в Linux.
см. https://superuser.com/questions/38984/linux-equivalent-command-for-open-command-on-mac-windows для получения подробной информации об использовании.
возможно, это не отдельное окно, которое запускается, но вы можете запускать некоторые исполняемые файлы в фоновом режиме, используя "&"
например.
./myexecutable &
означает, что ваш script не будет ждать, пока myexecutable завершится, но начнется немедленно. возможно, это то, что вы ищете. рассматривает
xdg-open является хорошим эквивалентом команды запуска командной строки MS-окон: xdg-open файл открывает этот файл или URL-адрес с помощью приложения по умолчанию xdg-open. открывает папку с исправлением в файловом менеджере по умолчанию
Одной из наиболее полезных программ сеанса терминала является экран.
screen -dmS title executable
Вы можете перечислить все сеансы экрана, запустив
screen -ls
И вы можете подключиться к созданному сеансу экрана (также разрешая несколько одновременных/синхронизированных сеансов), запустив
screen -x title
Это откроет эмулированный терминал в текущем окне, где выполняется executable
. Вы можете отсоединить сеанс экрана, нажав C-a C-d, и может повторно подключаться столько раз, сколько пожелаете.
Если вы действительно хотите, чтобы ваша программа запускалась в новом окне терминала, вы можете сделать что-то вроде этого: xterm yourtextmodeprogram или gnome-terminal -e yourtextmodeprogram или konsole -e mc
Проблема заключается в том, что вы не можете рассчитывать на определенный эмулятор терминала, поэтому (опять же: если вы действительно этого хотите), вам нужно будет искать общие, а затем выполнить первый из них.
Как сказал Йоахим: Нормальный способ сделать это - фоновая команда (читайте о контроле над работой оболочки где-нибудь, если вы хотите углубиться глубже).
Также есть случаи, когда вы хотите запустить постоянную оболочку, то есть сеанс оболочки, который живет при закрытии окна терминала. Существует два способа сделать это:
Если вы хотите новые окна, просто запустите новый экземпляр вашего приложения терминала: в kde это
konsole -e whatever
Я уверен, что терминал Gnome имеет похожие параметры
Некоторые из них рекомендовали запустить его в фоновом режиме с помощью &, но остерегайтесь того, что он все равно отправит весь консольный вывод из приложения, которое вы запускаете, на терминал, с которого вы его запустили. Кроме того, если вы закроете исходный терминал, программа, которую вы загрузили, закончится.
Если вы используете настольную среду, такую как KDE или GNOME, я бы проверял запуск приложений alt + f2 (gnome-open - это тот, который предназначен для GNOME, я не знаю названия приложения KDE) и вижу если вы можете передать им команду для запуска в качестве аргумента.
Кроме того, если вы намерены запустить демон, вы должны проверить документацию nohup.