трабл со скриптом

Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
hammer68
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-10-25 16:52:17
Откуда: tambov это в России
Контактная информация:

трабл со скриптом

Непрочитанное сообщение hammer68 » 2007-11-19 13:36:21

Код: Выделить всё

#!/bin/sh
for i in 1
do
apg
done
есть вот такой скрипт вопрос почему он выводит 6 паролей ???

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35456
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение Alex Keda » 2007-11-19 15:15:14

прям такой?
Убей их всех! Бог потом рассортирует...

hammer68
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-10-25 16:52:17
Откуда: tambov это в России
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение hammer68 » 2007-11-19 15:23:41

ну такой просто если и переменную сделать типа

Код: Выделить всё

i=`apg`
echo $i
то все равно 6 паролей выводит как я понимаю за 1 цикл он почемуто 6 раз дает пароль почему не пойму

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35456
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение Alex Keda » 2007-11-19 15:28:17

Код: Выделить всё

lissyara$ cat test.1.sh
#!/bin/sh
for i in 1
do
echo apg
done

lissyara$   
Убей их всех! Бог потом рассортирует...

hammer68
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-10-25 16:52:17
Откуда: tambov это в России
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение hammer68 » 2007-11-19 15:36:46

lissyara писал(а):

Код: Выделить всё

lissyara$ cat test.1.sh
#!/bin/sh
for i in 1
do
echo apg
done

lissyara$   
а что это вывод *apg* на экран
а мне надо чтобы генерировались пароли и выводились на экран типа этого

Код: Выделить всё

#!/bin/sh
for i in `cat users.txt`
do
#echo "$i"
#echo "/home/$i"
useradd $i
j=`apg`
$j>>passwd.txt
done
но проблема вся в том что почемуто пароли генерируется некоторое заданное в users.txt количество раз партиями по 6 штук почему я не понимаю
а мне тупо надо чтобы для каждого нового пользователя был сгенерен пароль (1 пароль)

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение schizoid » 2007-11-19 17:10:37

Код: Выделить всё

# apg -h

apg   Automated Password Generator
        Copyright (c) Adel I. Mirzazhanov

apg   [-a algorithm] [-r file]
      [-M mode] [-E char_string] [-n num_of_pass] [-m min_pass_len]
      [-x max_pass_len] [-c cl_seed] [-d] [-s] [-h] [-y] [-q]

-M mode         new style password modes
-E char_string  exclude characters from password generation process
-r file         apply dictionary check against file
-b filter_file  apply bloom filter check against filter_file
                (filter_file should be created with apgbfm(1) utility)
-p substr_len   paranoid modifier for bloom filter check
-k              apply cracklib ckeck
-a algorithm    choose algorithm
                 1 - random password generation according to
                     password modes
                 0 - pronounceable password generation
-n num_of_pass  generate num_of_pass passwords
-m min_pass_len minimum password length
-x max_pass_len maximum password length
-s              ask user for a random seed for password
                generation
-c cl_seed      use cl_seed as a random seed for password
-d              do NOT use any delimiters between generated passwords
-l              spell generated password
-t              print pronunciation for generated pronounceable password
-y              print crypted passwords
-q              quiet mode (do not print warnings)
-h              print this help screen
-v              print version information

eugene .ssh # apg -n 1
noucGarpav
eugene .ssh # apg -n 2
mefMuvWu
Shetfophy
eugene .ssh # apg -n 6
glukdedvi
BochevLu
kloHedwa
libUshab
NeOvKodli
Kelmyiem

думаю ясно :)
ядерный взрыв...смертельно красиво...жаль, что не вечно...

hammer68
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-10-25 16:52:17
Откуда: tambov это в России
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение hammer68 » 2007-11-19 17:13:51

пнятно мля надо маны читать :)

hammer68
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-10-25 16:52:17
Откуда: tambov это в России
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение hammer68 » 2007-11-19 18:03:40

собственно надо было вот что

Код: Выделить всё

#!/bin/sh
rm -rf passwd.txt
rm -rf newuser.txt
for i in `cat useradd.txt`
do
        #echo "$i"
        #echo "/home/$i"
        useradd $i
        j=`apg -n 1`
        echo $j
        echo $j # >>passwd.txt
        echo $i
        passwd $i --stdin<$j
        echo $i>>newuser.txt
        echo $j>>newuser.txt
done
тока опять чето не работает грит вот что

Код: Выделить всё

useradd: user 54321 exists
tofnifDo
tofnifDo
54321
useradd.sh: line 13: tofnifDo: No such file or directory
пароль чето он не присваивает может че с переменными намудрил не знаю

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение schizoid » 2007-11-19 18:08:41

проверяю sh -x script.sh
а че низзя просто

Код: Выделить всё

passwd $i $j
вместо

Код: Выделить всё

passwd $i --stdin<$j
?
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение schizoid » 2007-11-19 18:09:52

а , не, так не пойдет. перевод строки нуно
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение schizoid » 2007-11-19 18:15:35

ядерный взрыв...смертельно красиво...жаль, что не вечно...

hammer68
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-10-25 16:52:17
Откуда: tambov это в России
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение hammer68 » 2007-11-19 19:15:39

конечно мало что там понял но мне вот че интересно почему ж мой скрипт не пашет веть если самому из консоли делать то нормально пароли присваивает а скриптом не хочет

hammer68
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-10-25 16:52:17
Откуда: tambov это в России
Контактная информация:

Re: трабл со скриптом

Непрочитанное сообщение hammer68 » 2007-11-22 14:27:26

вот наконецто сделал
выкладываю рабочий вариант скрипта

Код: Выделить всё

#!/bin/sh
#rm -rf passwd.txt
rm -rf newuser.txt
a=0
for i in `cat useradd.txt`
do
        #echo "$i"
        #echo "/home/$i"
        useradd $i
        j=`apg -n 1`
        echo $j
        echo $j # >>passwd.txt
        a=$(expr $a + 1)
        echo $j>>tmp$a.txt
        passwd $i --stdin <tmp$a.txt
        rm -rf tmp$a.txt
        echo $i>>newuser.txt
        echo $j>>newuser.txt
done
cd /var/yp/
make
cd /root/