"Debian 9 64x - LXDE"
Я пытаюсь создать скрипт установки в bash. Предположим, я хочу установить самбу. Из основного сценария я вызываю скрипт установки для samba \folder\samba.sh
. Сценарий samba.sh должен выполняться в новом окне терминала, поэтому я могу следить за ошибками установки.
Скрипт должен работать как описано ниже:
- Скрипт
/mainscript.sh
предоставляет только пользовательскую информацию, взаимодействие и выполняет несколько подписок (/folder/subscripts.sh
).
- Сценарий
/mainscript.sh
должен создать новое окно терминала, передать путь и имя subscript.sh
и выполнить их в новом окне терминала.
- Сценарий
/mainscript.sh
должен выполнять только один индекс (/folder/subscript.sh
) за раз! Если subscript.sh
работает, то сценарий должен ждать, пока новое окно терминала не закроется.
-
subscript.sh
выполняет некоторый код с привилегиями root.
Вопросы:
Как мне создать новое окно терминала, передать индекс и выполнить его в новом окне терминала?
Как я могу убедиться, что скрипт (mainscript.sh
) запускает только один индекс (subscript.sh
) за раз?
Пример:
* * Mainscript.sh тысяча сорок-девять
#!/bin/sh
# This is the content of the mainscript.sh
# subscript1 and subscript2 must not be executed at the same time!
# the mainscript needs to wait when a subscript gets executed!
echo "hello, this script runs in terminal window (((A)))"
xterm /opt/subscript1.sh
echo "samba - Installed"
xterm /opt/subscript2.sh
echo "samba - removed"
subscript1.sh
#!bin/sh
# This is the content of the subscript1
echo "This script runs in a new terminal window (((B)))"
apt-get install samba
# instructions done .... close the terminal window (((B))) now
subscript2.sh
#!bin/sh
# This is the content of the subscript2
echo "This script runs in a new terminal window (((C)))"
apt-get remove samba
# instructions done .... close the terminal window (((C))) now