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

    −110

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    GetDSFInstallPath()
    {
    	DSF_INSTALL_PATH=`defaults read "/Library/Preferences/com.ubisoft.${PRODUCT_PREF_NAME}.GameUpdate" execPath | sed -n 's/\(.*\)\/.*/\1/p'`
    
    	# Convert from Unicode codes
    	LOC_IN_STR=${DSF_INSTALL_PATH}
    	LOC_CODES=`echo "${LOC_IN_STR}" | grep -oE [\\\\]u[[:xdigit:]]{4} | sort -u | grep -oE [[:xdigit:]]+`
    	if [ -n "${LOC_CODES}" ]; then
    	 if [ `php -v >/dev/null  2>/dev/null; echo $?` -eq 0 ]; then
    		for LOC_CODE_I in ${LOC_CODES}; do 
    			LOC_CHAR=`php -r "echo(mb_convert_encoding(pack('H*','$LOC_CODE_I'),'UTF-8','UTF-16'));"`
    			LOC_IN_STR=`echo "$LOC_IN_STR" | sed "s/[\\\\]u$LOC_CODE_I/$LOC_CHAR/g"`
    		done
    		DSF_INSTALL_PATH="${LOC_IN_STR}"
    		else
    		 echo "Warning: Game path is undefined: ${DSF_INSTALL_PATH}. Please, remove it manualy."
    	 fi
    	fi
    }

    Фрагмент скрипта uninstall`a от Ubisoft на макинтоше. mb_convert_encoding pack вот для чего нужен этот пхп, который кстати идет в комплекте с игрушкой

    stasyan, 08 Апреля 2013

    Комментарии (3)
  2. bash / Говнокод #12767

    −123

    1. 1
    if ps ax | grep -v grep | grep keydispatcher > /dev/null

    no comments. но блин, даже "работает". т.е. без этого grep -v grep лажает, а с ним - нет (видимо потому что второй греп не успевает запуститься пока ps ax отрабатывает). однако...

    Pencioner, 18 Марта 2013

    Комментарии (18)
  3. bash / Говнокод #12731

    −133

    1. 1
    yum remove python

    Еще один способ "отпилить ветку под собой"
    http://www.linux.org.ru/forum/admin/8946020

    Elvenfighter, 12 Марта 2013

    Комментарии (53)
  4. bash / Говнокод #12698

    −116

    1. 1
    pattern=hidden; find . | grep -e ".*\.java$" | xargs sh -ac 'for arg in $@; do cat -n $arg | grep -e "$pattern" > /dev/null && echo $arg && cat -n $arg | grep -e "$pattern"; done'

    Нужно было поискать юзаджи по коду.
    Вот такое вот наворотил.
    Каюсь...

    myzone, 06 Марта 2013

    Комментарии (19)
  5. bash / Говнокод #12440

    −113

    1. 1
    http://lab.madscience.nl/oo.sh.txt

    ООП-фаги, набигайте!

    byss, 17 Января 2013

    Комментарии (8)
  6. bash / Говнокод #12229

    −127

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    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
    #!/bin/bash
    set -e
    
    KEHU_FILE=kehu_ruikemei
    
    echo "*************"
    echo "rm logo_linux_clut224"
    echo "*************"
    find drivers/video/logo/ -name logo_linux_clut224.o -exec rm -f {} \;
    find drivers/video/logo/ -name logo_linux_clut224.c -exec rm -f {} \;
    find drivers/video/logo/ -name logo_linux_clut224.ppm -exec rm -f {} \;
    
    echo "***********************"
    echo "copy logo_linux_clut224.ppm"
    echo "***********************"
    cp $KEHU_FILE/logo_linux_clut224.ppm drivers/video/logo/
    
    echo "***********************"
    echo "make kernel.img"
    echo "***********************"
    make kernel.img -j4
    
    echo "***********************"
    echo "return origin files"
    echo "***********************"
    find drivers/video/logo/ -name logo_linux_clut224.o -exec rm -f {} \;
    find drivers/video/logo/ -name logo_linux_clut224.c -exec rm -f {} \;
    git checkout -- drivers/video/logo/logo_linux_clut224.ppm
    
    echo "return origin files success!!!"

    Скрипт в корне исходников ядра linux для Rockchip RK3066.

    Necromant, 30 Ноября 2012

    Комментарии (14)
  7. bash / Говнокод #12198

    −108

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    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
    # For bash and ksh, we can use faster builtin routines to do manipulation,
    # otherwise (ash) fall back to slower method using `expr'.
    # The extra level of indirection using `eval' is necessary a) for ksh, and
    # b) to get past ash.
    
    if [ "$RANDOM" != "$RANDOM" ]
    then
        math () {
            eval echo "\$(($*))"
        }
        index () {  # index string c
            eval "I=\${1%$2*}"
            eval echo "\${#I}"
        }
        ...
    else
        math () {
            expr "$@"
        }
        index () {  # index string c
            expr $1 : ".*$2" - 1
        }
        ...
    fi

    Отличный способ определения шелла из старослакварского /dev/MAKEDEV.

    bormand, 26 Ноября 2012

    Комментарии (10)
  8. bash / Говнокод #11918

    −117

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    MAXJOBS=20
    for i in `seq 1 $MAXJOBS` ; do nice -n 19 gzip -c /dev/zero > /dev/null & done
    
    while true
    do
     LA=`</proc/loadavg` && LA=${LA// */}
     H=$(date +%M) && H=${H/0/}
     G=`echo "(${MAXJOBS}/2)*(s(2*3.14159*${H}/60) +1 ) <= ${LA}" | bc -l`
     test ${G} -lt 1 && for i in `seq 1 $MAXJOBS` ; do  kill -SIGCONT %$i  ; done  || for i in `seq 1 $MAXJOBS` ; do  kill -SIGSTOP %$i; done
     sleep 1
    done

    Генерирует load average, и поддерживает её в форме синусоиды, с периодом в час.

    на графике выглядит как-то так:
    http://i.piccy.info/i7/108cbdd61801da0ed805ecf41ecbc9e3/4-47-114/35579895/localhost_load.png

    bliznezz, 12 Октября 2012

    Комментарии (6)
  9. bash / Говнокод #11773

    −105

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if [ `which which` ]; then
      ...
    else
      ...
    fi

    gongled, 14 Сентября 2012

    Комментарии (6)
  10. bash / Говнокод #11752

    −109

    1. 1
    cd /root/jbot; java -jar jimbot.jar 2> /dev/null 1> /dev/null &

    Я тихонечко это тут положу...
    А вот по скромному мнению автора, что делают эти строки:

    Вот выбрал систему Ubuntu (прим: видимо речь идет о VPS/VDS дай бог что не в виртуалбоксе под виндой). Администратирование веду через программу PuTTy.
    В даный момен я тестирую ICQ чат. Для этого надо включить java. В моем случае это так:
    cd /root/jbot; java -jar jimbot.jar 2> /dev/null 1> /dev/null &
    “Убить” процес:
    sudo killall -9 java
    cd – значит что выбрать из дериктории /root/jbot; и с дериктории java -jar jimbot.jar значок запустить 2>/dev/null так же второй скрипт 1> /dev/null и значок завершение &

    Исходник тута: http://zvlad.com/3-zapusk-icq-chata-v-ubuntu.html

    deep, 12 Сентября 2012

    Комментарии (15)