|
Запуск файлов *.sh в самой 1с. Как запрограммировать | ☑ | ||
---|---|---|---|---|
0
Nataliabel
16.03.15
✎
10:59
|
Добрый день
есть файлик на сервере linux test.sh. 1с 8.3 Бухгалтерия 3.0 можно ли сделать в 1с кнопку, по нажатию на которую 1с запустит этот файл? если да, то как |
|||
1
ДенисЧ
16.03.15
✎
11:01
|
КомандаСистемы() ?
|
|||
2
Остап Сулейманович
16.03.15
✎
11:01
|
(0) ЗапуститьПриложение() или КомандаСистемы(). Правда как оно на линухе себя чувствует - хз?
|
|||
3
User_Agronom
16.03.15
✎
11:02
|
Только, наверное нужно /bin/bash /путь/test.sh
|
|||
4
Nataliabel
16.03.15
✎
11:21
|
КомандаСистемы расчитана на windows, а здесь сервер на linux
ЗапуститьПриложение("/home/belousova_n/testscript.sh) не выполняется |
|||
5
ДенисЧ
16.03.15
✎
11:21
|
(4) Вызывает на исполнение команду операционной системы, как если бы она была введена в командной строке.
где тут хоть слово про винду: |
|||
6
Жан Пердежон
16.03.15
✎
11:48
|
(5) в примечании
|
|||
7
Fragster
гуру
16.03.15
✎
11:50
|
командасистемы работает на линукс сервере начиная с 8.2.17, чтоли...
|
|||
8
Nataliabel
16.03.15
✎
11:55
|
(7) КомандаСистемы работает тольок на тонком или толстом клиенте.
в моем случае сама рабочая станция на Windows, а сервер LInux |
|||
9
Biker
16.03.15
✎
11:57
|
(8) файлик создавай со статусом и по крону читай
|
|||
10
Nataliabel
16.03.15
✎
12:01
|
(9) немного не поняла
|
|||
11
Fragster
гуру
16.03.15
✎
12:03
|
(8) ну, значит, ЗапуститьПриложение
Процедура Пауза() Экспорт Инфо = Новый СистемнаяИнформация(); Если Инфо.ТипПлатформы = ТипПлатформы.Windows_x86 ИЛИ Инфо.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда ЗапуститьПриложение("ping -n 2 127.0.0.1", , Истина); // windows Иначе ЗапуститьПриложение("ping -c 2 127.0.0.1", , Истина); // linux КонецЕсли; КонецПроцедуры |
|||
12
Biker
16.03.15
✎
12:14
|
(10) из платформы записываешь текстовый файл status.txt
делаешь скрипт sh который смотрит есть ли status.txt и если есть делает нужные тебе дела и потом удаляет status.txt. ну и пихаешь этот скрипт в cron с запуском каждые 5 мин, например |
|||
13
Nataliabel
16.03.15
✎
12:35
|
(11) возник вопрос, под каким пользователем 1с стучится на серевер linux?
у меня просто не срабатывает ЗапуститьПриложение("/home/belousova_n/testscript.sh) |
|||
14
ДенисЧ
16.03.15
✎
12:40
|
(13) под тем, под которым работает служба (сервис, демон) сервера 1с на линухе
|
|||
15
Nataliabel
16.03.15
✎
13:41
|
а какие еще могут быть причины, почему не работает этот оператор
|
|||
16
Fragster
гуру
16.03.15
✎
13:45
|
(15) chmod +x, ну, или (3)
|
|||
17
Fragster
гуру
16.03.15
✎
13:45
|
или ошибка в самом файле
|
|||
18
ДенисЧ
16.03.15
✎
13:49
|
(15) у юзверя, под которым работает сервер 1с, нет прав на доступ к тому каталогу, где лежит скрипт.
Или (16) |
|||
19
vlandev
16.03.15
✎
13:54
|
(15) Еще одна причина указана в (3) , т.е. надо запускать интерпретатор и параметром ему передавать путь со скриптом.
|
|||
20
Nataliabel
16.03.15
✎
13:57
|
ЗапуститьПриложение("/bin/bash -c ""/var/lib/pgsql/testscript.sh""", , Истина); // linux
правильно? |
|||
21
Nataliabel
16.03.15
✎
13:58
|
(18) права проверила,файл рабочий, если его запускать через libux, то работает
|
|||
22
ДенисЧ
16.03.15
✎
14:00
|
(21) попробуй sudo -U <имялинухпольователяподкоторымработаетсервер> /var/lib/pgsql/testscript.sh
|
|||
23
ansh15
16.03.15
✎
16:13
|
(21) В скрипте первая строка #!/bin/sh есть?
В командной строке без нее скрипт выполняется, а как в этом случае - неизвестно... Или пути к каким-то командам в скрипте не находятся. |
|||
24
User_Agronom
16.03.15
✎
16:31
|
(16) chmod 777 /var/lib/pgsql/testscript.sh
Бить тяжёлой артиллерией)) А то в (22) полумеры по моему. |
|||
25
eklmn
гуру
16.03.15
✎
16:48
|
(21) "если его запускать через libux, то работает"
ну всего-то, надо научится через виндовс запускать |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |