Куча говна / Говнокод #963 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
  69. 69
  70. 70
  71. 71
  72. 72
  73. 73
  74. 74
  75. 75
  76. 76
  77. 77
  78. 78
  79. 79
  80. 80
  81. 81
#!/bin/bash
function get_group()
{
rm ./group
gnc=`cat /etc/group | wc -l`
cn=1
while let "cn<=gnc"
do
gn=`cat /etc/group | head -n $cn | tail -n 1 | tr ':' '\n' | head -n 1 | grep [A-Za-z0-9].*`
gnl=`cat /etc/group | head -n $cn | tail -n 1`
echo $gnl
echo "Do you want add your to group "$gn
read as
if [ "$as" == "yes" ]; then
echo "yes"
c=`echo $gnl | wc -c`
let c--
ct=":"
echo $c
cn2=`echo $gnl | cut -c$c`
echo "cn2 "$cn2
if [ "$cn2" != ":" ]
then
echo no
gnl=$gnl","
gnl=$gnl"$1"
echo $gnl >> ./group
else
gnl=$gnl""$1
echo $gnl >> ./group
fi
echo $gnl
else
echo $gnl >> ./group
fi

let cn++
done
cp ./group /etc/group
}

if [ $# -lt 1 ]; then
echo -n "Enter username:"
read username
uid=1
puid=0
while :
do
uid=`echo ${RANDOM:0:3}`
puid=`cat /etc/passwd | tr ':' '\n' | grep ^[0-9].*$ | grep $uid`
if [ "$puid" == "" ];then
echo "uid = $uid"
echo "puid = $puid"
echo $username
groupadd $username
gid=`cat /etc/group | grep $username | tr ':' '\n' | grep ^[0-9].*$ | head -n 1 | tail -n 1`
echo "gid "$gid
echo -n "Enter shell:"
read ushell
echo -n "Enter your name:"
read rname
echo $username:x:$uid:$gid:$rname:/home/$username:$ushell >> /etc/passwd
echo $username:Jkirh5i3e/GqU:14318:0:99999:7:7:: >> /etc/shadow
echo "Your password www.yandex.ru"
mkdir /home/$username
chmod u+r+w+x /home/$username
chmod g+r+w+x /home/$username
chmod o+r+w+x /home/$username
get_group $username
exit 0
else
uid=`echo ${RANDOM:0:3}`
echo $uid
echo "puid "$puid
fi

done

fi
echo -n "script havnt command line arguments"
exit 0

Регистрирует пользователя в системе

Запостил: guest guest, (Updated )

Комментарии (11) RSS

  • Alice:
    Я этот скрипт сам использую напрактике непризнаю графические утилиты они для тупых юзеров и ламеров
    Ответить
  • Наплодят дебилов... якобы никсы знающих...
    Ответить
  • the:
    Alice, это вообще для кого?
    Ты посмотри на сущность скрипта, ЧУТЬ ЧУТЬ более широкими глазами.
    Ответить
  • Alice:
    Всмысле?Он работает правильно он реализует поставленную задачу.А дебилы якобы знающие юниксы скрипты такие непишут они используют пользовательские оконные приложения и в консоль нелезут и скрипты непишут.По крайней мере это программа не точто HTML. И решает конкретную практическую задачу.Я её для себя написал.
    Ответить
  • Alice:
    я это знаю но чтоб понять как всё это дело работает на низком уровне я решил написать скрипт
    Ответить
  • Alice, студент? только начал работать? энтузиазм через край? 🙂
    Ответить
  • Alice:
    был студентом выгнали на 4м курсе перед госом но юникс я здал
    Ответить
  • the:
    [quote=Alice]
    я это знаю но чтоб понять как всё это дело работает на низком уровне....
    [/quote]
    Чтоб понять как это работает на низком уровне, надо было не скрипт писать, а изучить как следует системные вызовы. И на асме все. Вот это низкий уровень, а то что ты написал - бред.
    Ответить
  • Год... два... и будешь сам коситься на тех, кто пишет такие скрипты (тратя время и деньги), только ради забавы и "низкоуровневых знаний". А там глядишь и на Windows GUI перейдёшь 🙂
    Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8