ShellCheck 0.9 āωāĻĒāϞāĻŦā§āϧ, āĻļ⧇āϞ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āĻŦāĻŋāĻļā§āϞ⧇āώāĻ•

ShellCheck 0.9 āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇āϰ āϰāĻŋāϞāĻŋāϜ āĻĒā§āϰāĻ•āĻžāĻļāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇, āĻļ⧇āϞ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟāϗ⧁āϞāĻŋāϰ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āĻŦāĻŋāĻļā§āϞ⧇āώāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ āϝāĻž bash, sh, ksh āĻāĻŦāĻ‚ āĻĄā§āϝāĻžāĻļ⧇āϰ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋāϕ⧇ āĻŦāĻŋāĻŦ⧇āϚāύāĻž āĻ•āϰ⧇ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟāϗ⧁āϞāĻŋāϤ⧇ āĻ¤ā§āϰ⧁āϟāĻŋ āϏāύāĻžāĻ•ā§āϤāĻ•āϰāĻŖāϕ⧇ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āϕ⧋āĻĄ Haskell āϞ⧇āĻ–āĻž āĻāĻŦāĻ‚ GPLv3 āϞāĻžāχāϏ⧇āĻ¨ā§āϏ⧇āϰ āĻ…āϧ⧀āύ⧇ āĻŦāĻŋāϤāϰāĻŖ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ Vim, Emacs, VSCode, Sublime, Atom āĻāĻŦāĻ‚ GCC- āϏāĻžāĻŽāĻžā§āϜāĻ¸ā§āϝāĻĒā§‚āĻ°ā§āĻŖ āĻ¤ā§āϰ⧁āϟāĻŋ āϰāĻŋāĻĒā§‹āĻ°ā§āϟāĻŋāĻ‚ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇ āĻāĻŽāύ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āĻĢā§āϰ⧇āĻŽāĻ“āϝāĻŧāĻžāĻ°ā§āϕ⧇āϰ āϏāĻžāĻĨ⧇ āĻāϕ⧀āĻ•āϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāĻžāĻĻāĻžāύāϗ⧁āϞāĻŋ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤


ShellCheck 0.9 āωāĻĒāϞāĻŦā§āϧ, āĻļ⧇āϞ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āĻŦāĻŋāĻļā§āϞ⧇āώāĻ•

āĻāϟāĻŋ āϕ⧋āĻĄā§‡ āωāĻ­āϝāĻŧ āϏāĻŋāύāĻŸā§āϝāĻžāĻ•ā§āϏ āĻ¤ā§āϰ⧁āϟāĻŋ āϏāύāĻžāĻ•ā§āϤ āĻ•āϰāϤ⧇ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇, āϝāĻž āϏāĻŽā§āĻĒāĻžāĻĻāύ⧇āϰ āϏāĻŽāϝāĻŧ āĻĻā§‹āĻ­āĻžāώ⧀ āĻāĻ•āϟāĻŋ āĻ¤ā§āϰ⧁āϟāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻ—āϤ āϏāĻŽāĻ¸ā§āϝāĻžāϗ⧁āϞāĻŋāϰ āĻĻāĻŋāϕ⧇ āĻĒāϰāĻŋāϚāĻžāϞāĻŋāϤ āĻ•āϰ⧇, āϝāĻžāϰ āĻ•āĻžāϰāϪ⧇ āϏāĻŽā§āĻĒāĻžāĻĻāύ āĻŦā§āϝāĻžāĻšāϤ āĻšāϝāĻŧ āύāĻž, āϤāĻŦ⧇ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āϰ āφāϚāϰāϪ⧇ āĻ…āϏāĻ™ā§āĻ—āϤāĻŋ āĻĻ⧇āĻ–āĻž āĻĻ⧇āϝāĻŧāĨ¤ āĻŦāĻŋāĻļā§āϞ⧇āώāĻ• āĻŦāĻžāϧāĻžāϗ⧁āϞāĻŋ, āĻ…-āĻ¸ā§āĻĒāĻˇā§āϟ āϏāĻŽāĻ¸ā§āϝāĻž āĻāĻŦāĻ‚ āĻ¤ā§āϰ⧁āϟāĻŋāϗ⧁āϞāĻŋ āϏāύāĻžāĻ•ā§āϤ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇ āϝāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĒāϰāĻŋāĻ¸ā§āĻĨāĻŋāϤāĻŋāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāϤāĻžāϰ āĻ•āĻžāϰāĻŖ āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āĻļāύāĻžāĻ•ā§āϤ āĻ•āϰāĻž āĻ¤ā§āϰ⧁āϟāĻŋāϰ āĻļā§āϰ⧇āĻŖā§€āϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇, āφāĻŽāϰāĻž āĻŦāĻŋāĻļ⧇āώ āĻ…āĻ•ā§āώāϰāϗ⧁āϞāĻŋ āĻāĻĄāĻŧāĻŋāϝāĻŧ⧇ āϝāĻžāĻ“āϝāĻŧāĻž āĻāĻŦāĻ‚ āωāĻĻā§āϧ⧃āϤāĻŋāϤ⧇ āϤāĻžāĻĻ⧇āϰ āĻĢā§āϰ⧇āĻŽāĻŋāĻ‚, āĻļāĻ°ā§āϤāϏāĻžāĻĒ⧇āĻ•ā§āώ āĻ…āĻ­āĻŋāĻŦā§āϝāĻ•ā§āϤāĻŋāϤ⧇ āĻ¤ā§āϰ⧁āϟāĻŋ, āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡āϰ āϭ⧁āϞ āĻŦā§āϝāĻŦāĻšāĻžāϰ, āϏāĻŽāϝāĻŧ āĻāĻŦāĻ‚ āϤāĻžāϰāĻŋāĻ– āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•āϰāϪ⧇ āϏāĻŽāĻ¸ā§āϝāĻž āĻāĻŦāĻ‚ āύāϤ⧁āύāĻĻ⧇āϰ āϜāĻ¨ā§āϝ āϏāĻžāϧāĻžāϰāĻŖ āĻŦāĻžāĻ•ā§āϝ āĻ—āĻ āύ⧇āϰ āĻ¤ā§āϰ⧁āϟāĻŋāϗ⧁āϞāĻŋ āύ⧋āϟ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, "[[$foo==0 ]]" āϤ⧁āϞāύāĻž āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻ¸ā§āĻĒ⧇āϏāϗ⧁āϞāĻŋāϰ āĻ…āύ⧁āĻĒāĻ¸ā§āĻĨāĻŋāϤāĻŋ, "var = 42" āĻ¸ā§āĻĒ⧇āϏāϗ⧁āϞāĻŋāϰ āωāĻĒāĻ¸ā§āĻĨāĻŋāϤāĻŋ āĻŦāĻž "$foo=42" āĻŦāϰāĻžāĻĻā§āĻĻ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ $ āϚāĻŋāĻšā§āύ⧇āϰ āχāĻ™ā§āĻ—āĻŋāϤ, āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻŦāϞ⧇āϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āωāĻĻā§āϧ⧃āϤāĻŋ āĻ›āĻžāĻĄāĻŧāĻžāχ "echo $1", "tr -cd '[a-zA-Z0-9]'"-āĻ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻŦāĻ°ā§āĻ—āĻžāĻ•āĻžāϰ āĻŦāĻ¨ā§āϧāύ⧀āϰ āχāĻ™ā§āĻ—āĻŋāϤ,

āωāĻĒāϰāĻ¨ā§āϤ⧁, āĻāϟāĻŋ āϕ⧋āĻĄ āĻļ⧈āϞ⧀āϰ āωāĻ¨ā§āύāϤāĻŋ, āĻŦāĻšāύāϝ⧋āĻ—ā§āϝāϤāĻž āϏāĻŽāĻ¸ā§āϝāĻž āĻĻā§‚āϰ āĻ•āϰāϤ⧇ āĻāĻŦāĻ‚ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟāϗ⧁āϞāĻŋāϰ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝāϤāĻž āĻŦāĻžāĻĄāĻŧāĻžāύ⧋āϰ āϜāĻ¨ā§āϝ āϏ⧁āĻĒāĻžāϰāĻŋāĻļ⧇āϰ āφāωāϟāĻĒ⧁āϟ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, "āχāϕ⧋ $[1+2]" āĻāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ "$((..))" āϏāĻŋāύāĻŸā§āϝāĻžāĻ•ā§āϏ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦ āĻ•āϰāĻž āĻšāĻŦ⧇, āύāĻŋāĻ°ā§āĻŽāĻžāĻŖ 'rm -rf "$STEAMROOT/"*' āĻ…āύāĻŋāϰāĻžāĻĒāĻĻ āĻšāĻŋāϏāĻžāĻŦ⧇ āϚāĻŋāĻšā§āύāĻŋāϤ āĻ•āϰāĻž āĻšāĻŦ⧇ āĻāĻŦāĻ‚ āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻŦāϞ $STEAMROOT āĻĒā§‚āĻ°ā§āĻŖ āύāĻž āĻšāϞ⧇ āϰ⧁āϟ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋ āĻŽā§āϛ⧇ āĻĢ⧇āϞāϤ⧇ āϏāĻ•ā§āώāĻŽ, āĻāĻŦāĻ‚ "echo {1..10}" āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻĄā§āϝāĻžāĻļ āĻāĻŦāĻ‚ sh āĻāϰ āϏāĻžāĻĨ⧇ āĻŦ⧇āĻŽāĻžāύāĻžāύ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻšāĻžāχāϞāĻžāχāϟ āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤

āύāϤ⧁āύ āĻŦāĻŋāĻļā§āĻŦ⧇:

  • 'āĻ¸ā§āĻĨāĻžāύ⧀āϝāĻŧ āĻĒāĻ āύāϝ⧋āĻ—ā§āϝ foo'-āĻāϰ āĻŽāϤ⧋ āĻ…āĻ­āĻŋāĻŦā§āϝāĻ•ā§āϤāĻŋāϰ āϜāĻ¨ā§āϝ āϏāϤāĻ°ā§āĻ•āϤāĻž āϝ⧁āĻ•ā§āϤ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • āĻ…āύ⧁āĻĒāϞāĻŦā§āϧ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āϏāϤāĻ°ā§āĻ•āϤāĻž āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇.
  • 'x=1 y=$x āĻ˜ā§‹āώāĻŖāĻž āĻ•āϰ⧁āύ'-āĻ āĻŦā§āϝāĻžāĻ•āϞāĻŋāĻ‚āĻ• āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āϏāϤāĻ°ā§āĻ•āϤāĻž āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • āϏāϤāĻ°ā§āĻ•āĻŦāĻžāĻ°ā§āϤāĻž āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ āϝāĻĻāĻŋ $? āχāϕ⧋, printf, [ ], [[ ]] āĻāĻŦāĻ‚ āĻĒāϰ⧀āĻ•ā§āώāĻžāϰ āϰāĻŋāϟāĻžāĻ°ā§āύ āϕ⧋āĻĄ āĻĒā§āϰāĻŋāĻ¨ā§āϟ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧāĨ¤
  • (..))inarray [((idx))]=val āϏāϰāĻžāύ⧋āϰ āϜāĻ¨ā§āϝ āϏ⧁āĻĒāĻžāϰāĻŋāĻļ āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • āĻĒāĻžāϟāĻŋāĻ—āĻŖāĻŋāϤ āĻĒā§āϰāϏāĻ™ā§āϗ⧇ āĻĄāĻŦāϞ āĻŦāĻ¨ā§āϧāύ⧀ āϏāĻ‚āϝ⧁āĻ•ā§āϤ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āϏ⧁āĻĒāĻžāϰāĻŋāĻļ āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • a[(x+1)]=val āĻ…āĻ­āĻŋāĻŦā§āϝāĻ•ā§āϤāĻŋāϤ⧇ āĻŦāĻ¨ā§āϧāύ⧀ āĻ…āĻĒāϏāĻžāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āϏ⧁āĻĒāĻžāϰāĻŋāĻļ āϝ⧁āĻ•ā§āϤ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤

āωāĻ¤ā§āϏ: opennet.ru

DDoS āϏ⧁āϰāĻ•ā§āώāĻž, VPS VDS āϏāĻžāĻ°ā§āĻ­āĻžāϰ āϏāĻš āϏāĻžāχāϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āĻ•āĻŋāύ⧁āύ đŸ”Ĩ DDoS āϏ⧁āϰāĻ•ā§āώāĻž āϏāĻš āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ āĻ“āϝāĻŧ⧇āĻŦāϏāĻžāχāϟ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āĻ•āĻŋāύ⧁āύ, VPS VDS āϏāĻžāĻ°ā§āĻ­āĻžāϰ | ProHoster