Здравствуйте. Подскажите, как запустить Linux-команды из wine (1.0.8 network). Точнее, написан скрипт получения и отправки данных на фтп-сервер. Данные по фтп и сам макрос написаны в .netrc. Проблема в том, что нужно скрипты запуска прописать в 1с, для обмена. Из самого линукса скрипты отрабатывают, а в вайне - бесполезно. Из проводника wine тоже не запустилось. Пробовал дать расширение файлам. Бесполезно.
Посоветуйте, как можно решить проблему.
Запуск Linux-команд из Wine
Модератор: Модераторы разделов
-
- Сообщения: 224
- ОС: Deep Style / Slackware
Re: Запуск Linux-команд из Wine
shtorm007 писал(а): ↑15.12.2008 20:55Здравствуйте. Подскажите, как запустить Linux-команды из wine (1.0.8 network). Точнее, написан скрипт получения и отправки данных на фтп-сервер. Данные по фтп и сам макрос написаны в .netrc. Проблема в том, что нужно скрипты запуска прописать в 1с, для обмена. Из самого линукса скрипты отрабатывают, а в вайне - бесполезно. Из проводника wine тоже не запустилось. Пробовал дать расширение файлам. Бесполезно.
Посоветуйте, как можно решить проблему.
А если наоборот?
Из линуксового скрипта запускать команды линукса в перемежку с командами Wine? В том числе и с bat файлами?
P.S. Рекомендую глянуть http://www.winehq.org/site/docs/wineusr-gu...nd-line-options
А может и дальше.
Registered Linux user number 436365
-
- Сообщения: 41
- ОС: Slackware 11
Re: Запуск Linux-команд из Wine
shtorm007 писал(а): ↑15.12.2008 20:55Здравствуйте. Подскажите, как запустить Linux-команды из wine (1.0.8 network). Точнее, написан скрипт получения и отправки данных на фтп-сервер. Данные по фтп и сам макрос написаны в .netrc. Проблема в том, что нужно скрипты запуска прописать в 1с, для обмена. Из самого линукса скрипты отрабатывают, а в вайне - бесполезно. Из проводника wine тоже не запустилось. Пробовал дать расширение файлам. Бесполезно.
Посоветуйте, как можно решить проблему.
Честно говоря не совсем понял сути проблемы. Если требуется запускать линукс-скрипт из виндоус приложения под wine, то скрипт должен быть исполняемым и размещаться в месте известном вайну. Далее его можно стартовать из виндоус приложений (я экспериментировал с 7-й 1С) стандартными средствами для запуска внешних приложений. Если наоборот, то в баше строка типа wine ~/wine_c/Program\ Files/1Cv77/BIN/1cv7s.exe таки прекрасно запустит туже самую 1С-ку (естественно только если "сеанс" запущен).
-
- Сообщения: 4
Re: Запуск Linux-команд из Wine
arahorn писал(а): ↑16.12.2008 02:09shtorm007 писал(а): ↑15.12.2008 20:55Здравствуйте. Подскажите, как запустить Linux-команды из wine (1.0.8 network). Точнее, написан скрипт получения и отправки данных на фтп-сервер. Данные по фтп и сам макрос написаны в .netrc. Проблема в том, что нужно скрипты запуска прописать в 1с, для обмена. Из самого линукса скрипты отрабатывают, а в вайне - бесполезно. Из проводника wine тоже не запустилось. Пробовал дать расширение файлам. Бесполезно.
Посоветуйте, как можно решить проблему.
Честно говоря не совсем понял сути проблемы. Если требуется запускать линукс-скрипт из виндоус приложения под wine, то скрипт должен быть исполняемым и размещаться в месте известном вайну. Далее его можно стартовать из виндоус приложений (я экспериментировал с 7-й 1С) стандартными средствами для запуска внешних приложений. Если наоборот, то в баше строка типа wine ~/wine_c/Program\ Files/1Cv77/BIN/1cv7s.exe таки прекрасно запустит туже самую 1С-ку (естественно только если "сеанс" запущен).
В том то и проблема, что скрипт исполняемый, права выставлены. Из MC все запускается, обмен с фтп проходит. А вот из 1с средствами запуска внешнего приложения ничего не получается. Директория со скриптами вайну известна - ~/wine_c/
-
- Сообщения: 41
- ОС: Slackware 11
Re: Запуск Linux-команд из Wine
забавно, завтра если к тому моменту не разберетесь скину работоспособный код с которым из 1С запускаю линуксовые скрипты, сегодня уже ухожу с работы
-
- Сообщения: 41
- ОС: Slackware 11
Re: Запуск Linux-команд из Wine
вот примеры
это примерный вызов из 1С 7.7 скрипта, примерный потому что код долго объяснять да и выуживать из него нецензурные комментарии и переменные лень
Код: Выделить всё
Параметр1 = "Параметр1";
Параметр2 = "Параметр2";
Параметр3 = "Параметр3";
СтрокаКоманды = КаталогИБ()+"synce-pls.ras "+Параметр1+" "+Параметр2+" "+Параметр3;
КомандаСистемы(СтрокаКоманды);
теперь текст скрипта synce-pls.ras
Код: Выделить всё
#!/bin/bash
PREFIX=~/.wine/dosdevices/
PIDFILE=${PREFIX}$3
echo $$ > $PIDFILE
synce-pls $1 | cut -b 46- > ${PREFIX}$2
rm $PIDFILE
скрипт естественно располагается в каталоге базы, расширение может быть произвольным, следует обращать внимание при написании подобного рода связок на три вещи:
1. регистр, то есть W:\katalogbazi\ если просто преобразовать не отслеживая регистр W во что то вроде /home/user/.wine/dosdevices/W:/katalogbazi то это почти наверняка не пройдет, мне пришлось преобразовывать регистр
2. естественно помнить что \ это в виндоус приложениях а / в линуксе
3. у меня возникли проблемы с тем что КомандаСистемы() запустившая башевский скрипт не дожидалась окончания его выполнения, пришлось делать костыль
а вот скрипт который запускает автообмены 7-й 1С-ки под вайном, естественно он работает только в случае если "запущен сеанс", ну то есть так или иначе графическая часть 7-й 1С-ки должна быть убеждена что на нее кто то может смотреть
Код: Выделить всё
#!/bin/bash
RABKATALOG=~/.tasks/complexall
LOCKFILE=$RABKATALOG/lock.pid
FTPSERVER=<adresftp>
REMOTECATALOG=/
FILENAMEVH=A010.zip
BASA1C=w:\\bases77\\complexall\\
BASA1CLIN=/mnt/sharecifs/bases77/complexall/
FILENAMEISH=${BASA1CLIN}Avtoobmen/A011.zip
NAMEFTP=<nameftp>
PASSWORDFTP=<passwordftp>
IMYA1C=<name1c>
PASSWORD1C=<pass1c>
if [ -e $LOCKFILE ]; then
echo predidushaya zadacha ne zavershilas
exit
fi
echo $$ > $LOCKFILE
ncftpget -E -Z -v -u $NAMEFTP -p $PASSWORDFTP $FTPSERVER ${BASA1CLIN}Avtoobmen/ $FILENAMEVH
wine ~/wine_c/Program\ Files/1Cv77/BIN/1cv7s.exe config /d$BASA1C /n$IMYA1C /p$PASSWORD1C /@${BASA1C}\\Avtoobmen\\complexall.txt
ncftpput -E -Z -v -u $NAMEFTP -p $PASSWORDFTP $FTPSERVER $REMOTECATALOG $FILENAMEISH
rm $LOCKFILE
P.S. совсем забыл, вызывая линуксовый скрипт из виндового приложения лучше указывать к нему полный регистрозависимый виндовый путь, а то мало ли что.
вроде все, может поможет
-
- Сообщения: 4
Re: Запуск Linux-команд из Wine
Интересный способ решения... Надо попробовать. О результатах отпишусь.