Re: bash скрипты и expect(empty )
Aleksey Cheusov пишет: Да, годится. Но с expect--ом тоже хотелось бы разобраццо.. Чем большэ тибе хочиццца разабраццо, тем меньше шансафф, что тибе атветят в следущий рас! Два простейших примера для expect-а [skip] На всякий случай, для тех, кто не в курсе в пакете expect-dev есть /usr/bin/expect_autoexpect. Очень помогает при создании скриптов. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: bash скрипты и expect(empty)
> Да, годится. Но с expect--ом тоже хотелось бы разобраццо.. Чем большэ тибе хочиццца разабраццо, тем меньше шансафф, что тибе атветят в следущий рас! Два простейших примера для expect-а expect_putftp - копирует файлы на ftp сервер. #!/usr/bin/env expect # usage: expect_ftpput host username password files set timeout 20 set host [lindex $argv 0] set user [lindex $argv 1] set password [lindex $argv 2] set files [lindex $argv 3] spawn ftp -n $host expect "ftp> " send "user\n" expect "(username)" send "$user\n" expect "Password:" send "$password\n" expect "ftp> " send "cd ~\n" expect "ftp> " send "mput $files\n" expect "mput " send "a\n" expect "ftp> " expect_runcmd - запускает команду по telnet-у. #!/usr/bin/env expect # usage: expect_runcmd host username password cmd set timeout 20 set name [lindex $argv 0] set user [lindex $argv 1] set password [lindex $argv 2] set command [lindex $argv 3] spawn telnet $name expect "login:" send "$user\n" expect "Password:" send "$password\n" expect "prompt>" send "$command\n" expect "prompt>" -- Best regards, Aleksey Cheusov. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: bash скрипты и expect(empty)
Alexander GQ Gerasiov -> debian-russian@lists.debian.org @ Mon, 13 Apr 2009 00:18:53 +0400: >> > Задача - взять из параметров ком.строки значение и скормить >> > его пару раз dovecotpw (генерилка пасвордов для dovecot). Вывод >> > генерилки записать в некий файлик. [...] >> Судя по исходнику в этом файле когда в параметре -p передан пароль >> dovecotpw его ест, и с STDIN не запрашивает. Смотрите в своей версии, >> но скорее всего достаточно в скрипте сказать >> dovecotpw -p $password -s $scheme -u $user AGG> Это не секьюрно, такой пароль видно в /proc Так у него постановка задачи такая. Потом, знаешь, на своем ноуте я обычно довольно спокойно показываю пароль в /proc. У всех, кто может на нем в этот самый /proc заглянуть, sudo есть и так... -- Вам правду резать или кусочком? Кнышев -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: bash скрипты и expect(empty)
Да, годится. Но с expect--ом тоже хотелось бы разобраццо.. с dovecotpw это как частный случай привел.. 12.04.09, dima написал(а): > On Sun, Apr 12, 2009 at 04:47:55PM +0300, Shabanov Paul wrote: >> Задача - взять из параметров ком.строки значение и скормить >> его пару раз dovecotpw (генерилка пасвордов для dovecot). Вывод >> генерилки записать в некий файлик. > > === dovecot-1.1.6/src/util/dovecotpw.c > usage(const char *s) > { > fprintf(stderr, > "usage: %s [-l] [-p plaintext] [-s scheme] [-u user] [-V]\n", s); > fprintf(stderr, "%s\n%s\n%s\n%s\n%s\n", > "-lList known password schemes", > "-p plaintext New password", > "-s scheme Password scheme", > "-u user Username (if scheme uses it)", > "-VInternally verify the hash"); > > exit(1); > } > > Судя по исходнику в этом файле когда в параметре -p передан пароль > dovecotpw его ест, и с STDIN не запрашивает. Смотрите в своей версии, > но скорее всего достаточно в скрипте сказать > dovecotpw -p $password -s $scheme -u $user > > WBR > Dmitri Ivanov > > > -- > To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org > with a subject of "unsubscribe". Trouble? Contact > listmas...@lists.debian.org > > -- С уважением, Павел Шабанов.
Re: bash скрипты и expect(empty)
На Sun, 12 Apr 2009 18:48:34 +0400 dima записано: > On Sun, Apr 12, 2009 at 04:47:55PM +0300, Shabanov Paul wrote: > > Задача - взять из параметров ком.строки значение и скормить > > его пару раз dovecotpw (генерилка пасвордов для dovecot). Вывод > > генерилки записать в некий файлик. > > === dovecot-1.1.6/src/util/dovecotpw.c > usage(const char *s) > { > fprintf(stderr, > "usage: %s [-l] [-p plaintext] [-s scheme] [-u user] > [-V]\n", s); fprintf(stderr, "%s\n%s\n%s\n%s\n%s\n", > "-lList known password schemes", > "-p plaintext New password", > "-s scheme Password scheme", > "-u user Username (if scheme uses it)", > "-VInternally verify the hash"); > > exit(1); > } > > Судя по исходнику в этом файле когда в параметре -p передан пароль > dovecotpw его ест, и с STDIN не запрашивает. Смотрите в своей версии, > но скорее всего достаточно в скрипте сказать > dovecotpw -p $password -s $scheme -u $user Это не секьюрно, такой пароль видно в /proc -- Best regards, Alexander GQ Gerasiov Contacts: e-mail:g...@cs.msu.su Jabber: g...@jabber.ru Homepage: http://gq.net.ru ICQ: 7272757 PGP fingerprint: 0628 ACC7 291A D4AA 6D7D 79B8 0641 D82A E3E3 CE1D -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
bash скрипты и expect(empty)
Добрый день! Хочу написать простенький скрипт на bash. Задача - взять из параметров ком.строки значение и скормить его пару раз dovecotpw (генерилка пасвордов для dovecot). Вывод генерилки записать в некий файлик. Путем гугления выяснил, что надо юзать empty или expect для этого, но сколько не бился - не выходит каменный цветок. Может кто поможет, или подскажет толковое руководство по empty, в баше я не силен, а ман похоже что программер для программера писал - непонятно многое... -- С уважением, Павел Шабанов.
Re: bash скрипты и expect(empty)
On Sun, Apr 12, 2009 at 04:47:55PM +0300, Shabanov Paul wrote: > Задача - взять из параметров ком.строки значение и скормить > его пару раз dovecotpw (генерилка пасвордов для dovecot). Вывод > генерилки записать в некий файлик. === dovecot-1.1.6/src/util/dovecotpw.c usage(const char *s) { fprintf(stderr, "usage: %s [-l] [-p plaintext] [-s scheme] [-u user] [-V]\n", s); fprintf(stderr, "%s\n%s\n%s\n%s\n%s\n", "-lList known password schemes", "-p plaintext New password", "-s scheme Password scheme", "-u user Username (if scheme uses it)", "-VInternally verify the hash"); exit(1); } Судя по исходнику в этом файле когда в параметре -p передан пароль dovecotpw его ест, и с STDIN не запрашивает. Смотрите в своей версии, но скорее всего достаточно в скрипте сказать dovecotpw -p $password -s $scheme -u $user WBR Dmitri Ivanov -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org