>
>Да и тут нет ковычки после "$td
>if [ "$td -eq "$str1" ] > if [ "$td" -eq "$str1" ]Пасиб, это я уже поправил, сейчас это всё выглядит так, отрабатывает без ошибок, но вывод тестовых значений пустой:
1 #!/bin/bash
2 #
3 #
4 ########environment declaration
5 ufile=/tmp/incom
6 td="" #add or del
7 field= #первое поле
8 ulogin= #user login
9 upass="" #user pass
10 ugroups="" #user groups
11 strnum=1 #nomer stroki poiska
12 str="" #string
13 str1="add" #string1
14 str2="del" #string2
15 dels="" #number of first string of del section
16 filend="" #number of last string
17 uopt="" #option of del sect. that define delete homedir of usr or not
18 n=1 # Счётчик
19 field=1
20 #end of declaration
21 #
22 #Проверка наличия файла
23 if [ -e $ufile ]
24 then
25 dels=`cat /tmp/incom -n|grep "#delete" -i|awk '{print $1}'`
26 filend=`cat /tmp/incom -n|grep end -i|awk '{print $1}'`
27 else
28 echo "File not faund"
29 exit 0
30 fi
31 #
32 echo $dels
33 echo $filend
34 echo $strnum
35 #for field in $(awk 'BEGIN{FS="|"}{print $1}' < "$ufile" )
36
37
38
39 for ((n=1; n <= filend; n++))
40 do
41 #echo "qwerty"
42 td=`sed -n '/^$n/ p' $ufile| grep add |awk 'BEGIN {FS = "|"};{print $1}'`
43 #Проверка на добавление
44 echo $td
45 if [ "$td" == "$str1" ]
46 then
47 # polu4aem dannie uchetki
48 ulogin=`sed -n '/^$n/p' $ufile| grep add |awk 'BEGIN {FS = "|"};{print $2}'`
49 ugroups=`sed -n '/^$n/p' $ufile| grep add |awk 'BEGIN {FS = "|"};{print $3}'`
50 upass=`sed -n '/^$n/p' $ufile| grep add |awk 'BEGIN {FS = "|"};{print $4}'`
51 #тест
52 echo "добавлен пользователь login= $ulogin, group= $ugroups, pass= $upass"
53 #тест
54 useradd "$ulogin" -G "$ugroups" -m -p "$upass" #dobavlaem usera s sozdaniem homedir #Добавляем юзера
55 echo "useradd "$ulogin" -G "$ugroups" -m -p "$upass""
56 fi
57 #
58 if [ "$td" == "$str2" ] #proverka na udalenie
59 then
60 ulogin=`sed -n '/^$n/p' $ufile| grep add |awk 'BEGIN {FS = "|"};{print $2}'`
61 uopt=`sed -n '/^$n/p' $ufile| grep add |awk 'BEGIN {FS = "|"};{print $3}'`
62 userdel --$uopt $ulogin
63 echo "userdel --$uopt $ulogin"
64 #тест
65 echo "удалён пользователь login= $ulogin, op= $uoupt"
66 #тест
67 fi
68 done
69 exit