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

    +1

    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
    ~  cat test.sh
    #!/bin/bash
    
    for i in "$@"; do
    	echo $i
    done
    
    arglist="$@"
    
    for i in $arglist; do
    	echo $i
    done
    
     ~  sh test.sh 1 2 '3 4'
    1
    2
    3 4
    1
    2
    3
    4
     ~ 

    Застрял на отладке одного скрипта, как этим правильно пользоваться?

    vistefan, 01 Декабря 2021

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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    #!/usr/bin/env bash
    
    URL=https://foo.bar/baz.zip
    PATH=/home/foo/bar/baz.zip
    
    wget -O "$PATH" "$URL"

    И только потом до мена дошло…

    ISO, 26 Октября 2021

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

    −1

    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
    #!/bin/bash
    
    status=$(xinput list-props 11 | grep 'Device Enabled' | tail -c 2 | tr -d '\n')
    
    echo "Current TB status: $status"
    
    if [[ $status = "0" ]]
    then
        xinput enable 11
        echo "Enabled touchpad!"
    else
        xinput disable 11
        echo "Disabled touchpad!"
    fi

    Как вам мой скриптик?

    JloJle4Ka, 25 Октября 2021

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

    0

    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
    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
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    function error {
      printf "ERROR: $1\n" >&2 
    }
    
    function warning {
      printf "WARNING: $1\n"
    }
    
    function info {
      printf "INFO: $1\n"
    }
    
    function println {
      printf "$1\n"
    }
    
    function block {
      printf "\n$3\n$1 \t[$2]\n$3\n"
    }
    
    function fail {
      println "\n" 
      println "FAIL"$1
      println
    }
    
    function checkz {
      if [ -z $1 ]; then
        error "empty string"
        return 1
      fi  
      info "string \"$1\" \t[OK]"
      return 0
    }
    
    function checkx {
      if [ ! -x $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkb {
      if [ ! -b $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkc {
      if [ ! -c $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkf {
      if [ ! -f $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkd {
      if [ ! -d $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkd_mk {
      if [ ! -d $1 ]; then
        info "$1 \t[NOT FOUND]"
        info "$1 \t[MAKING...]"
        mkdir -p $1
        checkd $1
        return $?
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function sized {
      sized=($(ls $1))
      return ${#sized[@]}
    }

    Вспомогательные функции проверки файлов и директорий, а также вывода ошибок

    somebyte, 09 Сентября 2021

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

    0

    1. 1
    /bin/cat /bin/cat

    https://ideone.com/QSSlWV

    3_dar, 08 Сентября 2021

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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #!/bin/bash 
    # apt install jq w3m curl
    
    curl https://gcode.space/api/comments  \
    | jq -r 'map("-"*99+"<br>"+.user_name+" "+.posted+"<br>","<ul>"+.text+"</ul>") | reduce .[] as $item (""; . + $item) '  \
    |  w3m -T text/html -cols 99 -dump \
    | less -R

    Консольная читалка для стока ГК

    3.14159265, 08 Сентября 2021

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

    +2

    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
    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
    #!/bin/bash
    set -euo pipefail
    
    host() {
        echo "n${1}.local"
    }
    
    node() {
        echo "erl@$(host $1)"
    }
    
    build() {
        [ "${1}" -eq "1" ] && echo "build: ."
    }
    
    container() {
        cat <<EOF
      worker${1}:
        $(build $1)
        image: worker
        hostname: $(host $1)
        networks:
          backplane:
            aliases:
              - $(host $1)
    
        environment:
        - "NODE_NAME=$(node $1)"
        - ... прочая питушня
    EOF
    }
    
    main() {
        cat <<EOF
    version: '3.3'
    
    networks:
      backplane:
    
    services:
    $(node 1)
    
    $(node 2)
    
    ...
    EOF
    }
    
    main > docker-compose.yml
    docker-compose $@

    Как тебе такое, Helm?

    CHayT, 13 Августа 2021

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

    +4

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    #!/bin/sh
    
    count_roosters(){
        echo $1: `grep -c -P $1 gk_users.csv`
    }
    
    for rooster_name in nemyx_HoMep g0_14 Antibagor _daSome spooler ebebebeb assosin pdro alisher 14sun bot.number ,rss       
    do
        count_roosters $rooster_name
    done

    Выхлоп:

    nemyx_HoMep: 40817
    g0_14: 1434
    Antibagor: 1404
    _daSome: 1001
    spooler: 1000
    ebebebeb: 678
    assosin: 490
    pdro: 300
    alisher: 281
    14sun: 250
    bot.number: 131
    ,rss: 127

    3EHuTHblu_nemyx, 06 Августа 2021

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

    +1

    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
    @echo off
    wget https://dl.google.com/android/repository/build-tools_r25.0.3-windows.zip
    unzip -j build-tools_r25.0.3-windows.zip android*/lib/dx.jar 
    rem  --- Получаем уробороса ---
    dx --dex --output=dx-dexed.jar --min-sdk-version=24 dx.jar
    rem  +++  Уроборос получен  +++
    echo class nemyx                                                                                >nemyx.java
    echo {                                                                                         >>nemyx.java
    echo   public static void main(String[] args) throws java.lang.Exception                       >>nemyx.java
    echo   {                                                                                       >>nemyx.java
    echo     java.io.PrintStream nemyxStream = new java.io.PrintStream(System.out, true, "UTF-8"); >>nemyx.java
    echo     nemyxStream.printf("%%.2fдар идёт напитон.\n", Math.PI);                              >>nemyx.java
    echo   }                                                                                       >>nemyx.java
    echo }                                                                                         >>nemyx.java
    javac -encoding utf-8 -source 1.7 -target 1.7 nemyx.java 
    jar cf nemyx.jar nemyx.class
    adb push dx-dexed.jar /sdcard/Download/
    adb push nemyx.jar /sdcard/Download/
    adb shell "cd /sdcard/Download; dalvikvm -cp dx-dexed.jar com.android.dx.command.Main --dex --output nemyx-dexed.jar nemyx.jar"
    adb shell dalvikvm -cp /sdcard/Download/nemyx-dexed.jar nemyx

    Сон разума рождает чудовища.

    npopa6, 13 Июня 2021

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

    0

    1. 1
    $ find ~ -name .git -type d -prune -printf "***\n%p\n***\n" -exec git -C '{}/..' status  \;

    MAKAKA, 21 Февраля 2021

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