#1
|
|||
|
|||
Re: (no subject)
Serguei E. Leontiev написал(а) к Vladimir Fyodorov в Jul 15 13:53:32 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> Владимир, привет, Vladimir Fyodorov <Vladimir.Fyodorov@f15.n50.z2.fidonet.org> wrote: >>>> osascript -e 'display dialog "Нello World"' >>>> Из shell файла не запустилась? > Кстати, да, не запустилась. > > i-opera:Desktop opera$ osascript -e 'display dialog "Нello World"' > 0:28: execution error: No user interaction allowed. (-1713) А это в скрипте запущенном под Automator не работает или это руками под ssh или под другим пользователем (su или sudo)? Если под ssh или под другим пользователем, то ничего удивительного. >> Если мне не изменяет память, команда open на исполняемый файл - >> откроет Терминал и в нём запустит этот файл. Ну а можно и ручками окно >> Терминал-а открыть :) > Ничего не понял. Команда open - аналог клика мышкой в Finder на соотвествующий файл. > Имеется shell-скрипт, который выполняется в Терминале. В процессе выполнения в > окне Терминала виден ход выполнения скрипта. Хоть большинство операций > разглядеть в подробностях не успеваешь, но общее впечатление о том, какие > операции в данный момент выполняются, получить можно. Плюс видно, что ничего не > зависло. > > Теперь я хочу, чтобы сам скрипт в открытом виде нигде не светился, то есть > чтобы особо одарённые пользователи не могли его отредактировать простым > открытием в текстовом редакторе. Внутрь .app вряд ли кто-нибудь полезет, к тому А скажем права доступа настроить не будет ли достаточно: $ chown root my-sh-script $ chmod 755 my-sh-script -- Успехов, Сергей Леонтьев, <http://www.cryptopro.ru> (NewsTap) --- ifmail v.2.15dev5.4 |
#2
|
|||
|
|||
Re: (no subject)
Serguei E. Leontiev написал(а) к Serguei E. Leontiev в Jul 15 13:58:03 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> P.S. "Serguei E. Leontiev" <leo@sai.msu.ru> wrote: > А скажем права доступа настроить не будет ли достаточно: > > $ chown root my-sh-script > $ chmod 755 my-sh-script $ sudo chown root my-sh-script $ sudo chmod 755 my-sh-script -- Успехов, Сергей Леонтьев, <http://www.cryptopro.ru> (NewsTap) --- ifmail v.2.15dev5.4 |
#3
|
|||
|
|||
Re: (no subject)
Vladimir Fyodorov написал(а) к Serguei E. Leontiev в Jul 15 14:59:12 по местному времени:
Разнообразно приветствую тебя, Serguei! 24 Июля 2015, Serguei E. Leontiev писАл к Vladimir Fyodorov следующее: >> Кстати, да, не запустилась. >> i-opera:Desktop opera$ osascript -e 'display dialog "Нello World"' >> 0:28: execution error: No user interaction allowed. (-1713) SL> А это в скрипте запущенном под Automator не работает или это руками SL> под ssh или под другим пользователем (su или sudo)? Если под ssh или SL> под другим пользователем, то ничего удивительного. Под обычным пользователем, в Терминале на bash, без всяких ssh. Я могу у себя на компе сделать sudo, но предполагается, что скрипт будет работать и на других компах, а там у юзеров рута нету. >>> Если мне не изменяет память, команда open на исполняемый файл - >>> откроет Терминал и в нём запустит этот файл. Ну а можно и ручками >>> окно Терминал-а открыть :) >> Ничего не понял. SL> Команда open - аналог клика мышкой в Finder на соотвествующий файл. Это я знал. Непонятно, что мне это даёт. >> Теперь я хочу, чтобы сам скрипт в открытом виде нигде не светился, >> то есть чтобы особо одарённые пользователи не могли его >> отредактировать простым открытием в текстовом редакторе. SL> А скажем права доступа настроить не будет ли достаточно: SL> $ chown root my-sh-script SL> $ chmod 755 my-sh-script Если б я был султ^W^W админ, то, наверное, прокатило бы. А так смотри выше. Всяческих благ. Искренне Ваш, Vladimir Fyodorov, эсквайр. ... Слабый женский Poll ... --- GoldED+/OSX 1.1.5-b20150715 |
#4
|
|||
|
|||
Re: (no subject)
Serguei E. Leontiev написал(а) к Vladimir Fyodorov в Jul 15 15:56:03 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> Привет Владимир, От 24 июля 2015 г., 14:59:12 в fido7.ru.mac ты писал: ??>>> Кстати, да, не запустилась. ??>>> i-opera:Desktop opera$ osascript -e 'display dialog ??>>> "Нello World"' 0:28: execution error: No user ??>>> interaction allowed. (-1713) SL>> А это в скрипте запущенном под Automator не работает или SL>> это руками под ssh или под другим пользователем (su или SL>> sudo)? Если под ssh или под другим пользователем, то ничего SL>> удивительного. VF> Под обычным пользователем, в Терминале на bash, без всяких ssh. VF> Я могу у себя на компе сделать sudo, но предполагается, что VF> скрипт будет работать и на других компах, а там у юзеров рута VF> нету. Эк её заколбасило, что программа с пользователем взаимодействовать не может :) А что выдаёт команда: $ env ??>>>> Если мне не изменяет память, команда open на ??>>>> исполняемый файл - откроет Терминал и в нём ??>>>> запустит этот файл. Ну а можно и ручками окно ??>>>> Терминал-а открыть :) ??>>> Ничего не понял. SL>> Команда open - аналог клика мышкой в Finder на SL>> соотвествующий файл. VF> Это я знал. Непонятно, что мне это даёт. ??>>> Теперь я хочу, чтобы сам скрипт в открытом виде нигде ??>>> не светился, то есть чтобы особо одарённые пользователи ??>>> не могли его отредактировать простым открытием в ??>>> текстовом редакторе. SL>> А скажем права доступа настроить не будет ли достаточно: SL>> $ chown root my-sh-script SL>> $ chmod 755 my-sh-script VF> Если б я был султ^W^W админ, то, наверное, прокатило бы. А так VF> смотри выше. Ладно, можно ж и просто: $ chmod 555 my-sh-script -- Успехов, Сергей Леонтьев. E-mail: lse@CryptoPro.ru --- ifmail v.2.15dev5.4 |
#5
|
|||
|
|||
Re: (no subject)
Serguei E. Leontiev написал(а) к Vladimir Fyodorov в Jul 15 00:22:25 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> Привет Владимир, От 24 июля 2015 г., 8:54:04 в fido7.ru.mac ты писал: VF> весьма затруднительно. То есть вариант с запуском шелл-скрипта VF> из приложения, сделанного Автоматором, меня почти устраивает. VF> Одно но. Теперь не видно хода выполнения самого скрипта, лишь VF> крутится колёсико Автоматора в верхней строке меню Finder'а. VF> Поскольку скрипт может работать долго, то легко про него забыть VF> и, например, выключить компьютер. А если перед глазами будет VF> окошко, показывающее ход выполнения и то, что он не завис, было Макет такого решения, которое использует Терминал и файл псевдотерминала, на который перенаправляется stdout и stderr действующей части shell-скрипта можно взглянуть https://yadi.sk/d/S2PbOiO2iBoxQ Состоит из следующих действий: 1. AppleScript, который запускает или вытаскивает на передний план Терминал, создаёт в нём окошко, результат: имя псевдотерминала единственной вкладки этого окошка; 2. Shell-скрипт, который получает имя этого псевдотерминала в качестве аргумента. Полезную деятельность он выполняет в скобках с перенаправлением stdout и stderr на этот псевдотерминал. Результат: имя псевдотерминала; 3. AppleScript, который получает имя псевдотерминала на вход. Перечисляет все вкладки всех окон Терминала, находит окно вкладка которого имеет этот псевдотерминал и закрывает его. -- Успехов, Сергей Леонтьев. E-mail: lse@CryptoPro.ru --- ifmail v.2.15dev5.4 |
#6
|
|||
|
|||
Re: (no subject)
Vladimir Fyodorov написал(а) к Serguei E. Leontiev в Jul 15 12:51:18 по местному времени:
Разнообразно приветствую! VF>> весьма затруднительно. То есть вариант с запуском шелл-скрипта из VF>> приложения, сделанного Автоматором, меня почти устраивает. Одно VF>> но. Теперь не видно хода выполнения самого скрипта, лишь крутится VF>> колёсико Автоматора в верхней строке меню Finder'а. Поскольку VF>> скрипт может работать долго, то легко про него забыть и, VF>> например, выключить компьютер. А если перед глазами будет окошко, VF>> показывающее ход выполнения и то, что он не завис, было SE> Макет такого решения, которое использует Терминал и файл SE> псевдотерминала, на который перенаправляется stdout и stderr SE> действующей части shell-скрипта можно взглянуть SE> https://yadi.sk/d/S2PbOiO2iBoxQ Состоит из следующих действий: Спасибо, на словах очень похоже на то, что мне нужно. На следующей неделе постараюсь попробовать. -- Всяческих благ. Искренне Ваш, Vladimir Fyodorov, эсквайр. ... Пропала несущая? Заплатите налоги! --- Нotdoged/2.11/Android |
#7
|
|||
|
|||
Re: (no subject)
Vladimir Fyodorov написал(а) к Serguei E. Leontiev в Aug 15 14:33:12 по местному времени:
Разнообразно приветствую тебя, Serguei! 31 Июля 2015, Vladimir Fyodorov писАл к Serguei E. Leontiev следующее: SE>> Макет такого решения, которое использует Терминал и файл SE>> псевдотерминала, на который перенаправляется stdout и stderr SE>> действующей части shell-скрипта можно взглянуть SE>> https://yadi.sk/d/S2PbOiO2iBoxQ Состоит из следующих действий: VF> Спасибо, на словах очень похоже на то, что мне нужно. На следующей VF> неделе постараюсь попробовать. Попробовал, но что-то с пол-оборота не завелось. Псевдотерминал открывается, но ход выполнения скрипта он не отображает. Всё равно спасибо за интересную идею, наверняка, можно разобраться, почему у меня не пошло. Но я вернулся к предыдущей идее - спрятать файл со скриптом внутри приложения - и оно таки получилось! Рассказываю, как делал (больше для себя, чтобы потом смог вспомнить). Создал пустое приложение в Автоматоре, положил внутрь него скрипт по пути: ~/Desktop/Makearchive.app/Contents/MacOS/Makearchive Затем в том же Автоматоре указал: Get Specified Finder Items (ну и указал этот файл скрипта) Open Finder Items (Open with - выбрал Terminal) http://pics.rsh.ru/img/SSS_jmhtg7ek.jpg Сохранил приложение (при этом файл скрипта из него закономерно удалился) и заново положил внутрь свой скрипт. Работает! Всяческих благ. Искренне Ваш, Vladimir Fyodorov, эсквайр. ... Одним коннектом сыт не будешь --- GoldED+/OSX 1.1.5-b20150715 |