Извините за мой, вероятно, очень наивный вопрос.
То, что я имею в виду: как создать исполняемый файл сценария/удара, который выполнил бы более сложные команды, команды, которые должны обычно помещаться в терминал?
А именно, я обращаюсь к следующим командам:
DRI_PRIME=1 glxgears -info
Это запустилось бы glxgears
и помещенный в работу ATI дискретная карта. Затем я могу контролировать его температуру и т.д. Но когда я выполняю его от терминала, я получаю это:
В то время как, когда я выполняю его со сценарием
#!/bin/bash
DRI_PRIME=1 glxgears -info
только окно механизмов видимо, не другое с текстом.
Я хотел бы смочь использовать файл удара и иметь первый результат и затем петлять от средства запуска.
Рассмотрение этой страницы на aria2
и webgui-aria2
, aria2
запускается в том контексте путем выполнения в терминале долгой команды:
touch /path/to/download/folder/session.txt && aria2c --enable-rpc --rpc-listen-all --save-session=/path/to/download/folder/session.txt --input-file=/path/to/download/folder/session.txt -x16 -s16 -k1M --dir=/path/to/download/folder
Как выполнить это со сценарием (что я затем выполнился бы от средства запуска), и имейте тот же результат, ту же информацию?
Сценарий как так (адаптированный к моей папке загрузки)
#!/bin/bash
touch /home/cip/Downloads/aria2/session.txt && aria2c --enable-rpc --rpc-listen-all --save-session=/home/cip/Downloads/aria2/session.txt --input-file=/home/cip/Downloads/aria2/session.txt -x16 -s16 -k1M --dir=/home/cip/Downloads/aria2
ничего не дает, в то время как thhe программы запускаются.
(Я нахожусь в Xubuntu 14.04).
Считайте этот сценарий (сохраненным как /home/muru/test.sh
):
#! /bin/bash
DRI_PRIME=1 glxgears -info
А основное средство запуска для этого было бы похоже (скажите, сохраните его как /home/muru/test.desktop
):
[Desktop Entry]
Type=Application
Terminal=true
Name=glx-gears-info
Exec=/home/muru/test.sh
Делают их обоих исполняемым файлом:
chmod +x test.sh test.desktop
Теперь у Вас должны быть эти две записи в Вашей домашней папке:
Уведомление, как имя glx-gears-info
даже при том, что имя файла средства запуска test.desktop
. Можно дважды щелкнуть по нему для запуска сценария:
Для сценария как (говорят, расположенный в /home/muru/start-aria.sh
):
#!/bin/bash
touch /home/cip/Downloads/aria2/session.txt && \
aria2c --enable-rpc --rpc-listen-all \
--save-session=/home/cip/Downloads/aria2/session.txt \
--input-file=/home/cip/Downloads/aria2/session.txt -x16 -s16 -k1M \
--dir=/home/cip/Downloads/aria2
(я разделил команду на несколько строк для удобочитаемости) файл средства запуска будет похож (скажите /home/muru/start-aria.desktop
):
[Desktop Entry]
Type=Application
Terminal=false
Name=Start Aria2
Exec=/home/muru/start-aria.sh
можно установить Terminal=false
здесь, поскольку для этой команды, вероятно, не нужен терминал.
Для получения окна терминала при использовании средств запуска Xfce отсчитайте 'Выполненный в Терминале'.
А вторая команда, которая была бы близкий aria2, может быть добавлена в том же средстве запуска Xfce: pkill aria2c
Также:
путем добавления их в единственное средство запуска,
расширенные свойства установки как в изображении ниже
(а именно, 'шоу в последний раз используемый объект' и 'в кнопке'),
средство запуска будет всегда отображать текущий статус aria2: выполнение или закрытый .
Быстрый ответ, попробуйте это:
#!/bin/bash
DRI_PRIME=1
xfce4-terminal --window -H -x glxgears -info
не знают, необходимы ли все переключатели, но это работало.