1. bash / Говнокод #3262

    −132

    1. 1
    yes | rm -r /

    Так красивее :)

    Запостил: Tanger, 18 Мая 2010

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

    • [:|\|\|\|:]
      Ответить
    • показать все, что скрытоу вас ошибка
      должно быть
      yes | rm -rf /
      Ответить
    • [ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo "Жив"
      Русская рулетка для сисадмина :))
      Ответить
      • Я когда впервые встретил эту рулетку — ещё не понимал, что же она на самом деле делает. Думал, что она делает проверку на каждый файл — оставить ли его жить..
        А сейчас даже обидно, что это не так. Надо исправить:

        #!/bin/bash
        find / | \
        while read FILE 
        	if [ $[ $RANDOM % 6 ] == 0 ] ; then
        		rm -f ${FILE}
        		echo Удача не была благосклонна к ${FILE}
        	else
        		echo ${FILE} смог выжить!
        	fi
        done
        Ответить
        • А что этот код делает?
          Ответить
          • Ищет файлы рекурсивно в корне и по одному передает их на проверку. Там, если условие в генераторе случайных чисел совпадает, то файл удаляется, если не совпадает — файл остается.
            Ответить
            • Его запускают в день страшного суда?
              Ответить
              • Да, вероятно.
                Хотя я его при следующей смене дистра с радостью запущу, предварительно отмонтировав разделы с данными. Ну так, забавы ради. В последний раз просто забыл об этом…
                Ответить
                • Вы жёсткий пацанчик. :D
                  Ответить
                  • :-D Ну а что, мне всегда было интересно, как подобные вещи работают на практике. Поднимать виртуальную машину как-то не хочется, а восстанавливать устраивающую меня систему хочется ещё меньше.
                    А так я ничем не рискую, можно баловаться в своё удовольствие. :)
                    Ответить
        • Ах, вторая строка красива! (Баян напоминает:))
          Ответить
    • Не работает.
      sh: yes: not found.

      Потому что не posix, в отличие от каноничногоъ ключа -f.
      Ответить
      • ну можешь написать скриптик :)
        yes:
        #!/bin/sh
        while $1
        do
        echo y
        done

        и sh yes | rm -ri /*
        ___
        Если извратиться - любое извращение заработает...
        Ответить
        • hash magic тоже не posix. Бе-бе-бе!
          Ответить
          • А что это? (hash magic)
            Ответить
            • http://en.wikipedia.org/wiki/Shebang_%28Unix%29
              Согласен, правильнее было бы назвать именно так.
              Ответить

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