Я не уверен, являются ли это одна или две проблемы здесь:
файл /usr/bin/line1
wine /home/aiao/.wine/drive_c/Program\ Files\ \(x86\)/LINE/Line.exe > /dev/null 2>&1
файл /usr/bin/line2
!#/usr/bin/bash
wine /home/aiao/.wine/drive_c/Program\ Files\ \(x86\)/LINE/Line.exe > /dev/null 2>&1
Сама винная команда хорошо работает, но когда я работаю /usr/bin/line1
, Я добираюсь:
: ambiguous redirect1: 1
И когда я работаю /usr/bin/line2
, Я добираюсь:
wine: bad interpreter: No such file or directory
Как может я команда выполнения через сценарий удара? Что продолжается здесь?
Для начинающих Вам нужна допустимая хижина. Ваш второй файл [почти 115] имеют один, но эти !#
неправильный путь вокруг. Второй Вам нужен допустимый интерпретатор! Ни одна из моих систем не имеет /usr/bin/bash
, это всего /bin/bash
. Вы могли даже просто использовать /bin/sh
. Это очень немного легче.
следующее должно работать:
#!/bin/sh
wine /home/aiao/.wine/drive_c/Program\ Files\ \(x86\)/LINE/Line.exe > /dev/null 2>&1
В первом файле можно перенаправить вывод просто с помощью > /dev/null
или &> /dev/null
, который перенаправит stdout
и stderr
так никакая потребность в 2>&1
.
Во втором файле, я полагаю, что корректный интерпретатор #!/bin/bash
.
дескрипторы файлов 1 и 2 (stdout & stderr), может быть закрыт вином, потому что это не использует их и может даже освободить 0 (stdin), как только это установило обработчик клавиатур. Также это было бы более справедливо к окнам, поскольку все дескрипторы файлов доступны, как это отчасти ожидает в новом экземпляре программы.
В первую очередь: Вы используете Wine
, который в этом случае, возможно, должен воссоздать что-то, что подражает среде выполнения командного процессора Windows (cmd.exe).
, Поскольку Вы не сказали, какой drive_c/Program\ Files\ \(x86\)/LINE/Line.exe
, нет никакого способа сказать его требования.
Теперь : ambiguous redirect1: 1
взгляды как возможный вывод или от Вина или от cmd.exe.
май быть Вами должен гарантировать, что ТОЛЬКО ВИНО затронуто перенаправлениями стиля Linux. Вы, возможно, должны изучить то, что Вино ожидает, и как защитить/разделить его параметры от пойманных ударом и наоборот.
Вещи попробовать:
, Поскольку это работает от попытки командной строки удара source line2
для начинающих.
, Если это работает, возможно, попытка вариант как это - из сценария:
bash <<EOF wine /home/aiao/.wine/drive_c/Program\ Files\ (x86)/LINE/Line.exe > /dev/null 2>&1 EOF
еще один...
start
инструмент командной строки Windows, который применяет те же задачи как двойной щелчок по, например, ссылка или файл, так попытка:
wine start /home/aiao/.wine/drive_c/Program\ Files\ \(x86\)/LINE/Line.exe
Примечание: БЕЗ перенаправления, если это работает для фактического имения прогона программы, то - если Вам все еще нужен он, Вы могли бы попытаться добавить >/dev/null 2>&1
(или безотносительно из других ответов) для Вина.