ืืืื ืืึธื ืึทืืขืืขื.
ืืืึทื ื, Python ืืื ืืืื ืขืจ ืคืื ืื ืืขืจืกื ืืขืืืืื ื ืฉืคึผืจืึทืื ืืื ืื ืคืขืื ืคืื ืงืจืืืืืื ื ื ืื ืืืืื ืืืืืืืืืจื ืคึผืจืึธืืืงืื ืืื, ืึธืืขืจ ืืืื ืคึผืจืึทืืืืืืื ื ืืืืขืจ ืื ืคืจืึทืกืืจืึทืงืืฉืขืจ. ืืื ืึท ืจืขืืืืืึทื, ืืึธืื ืคืืืข ืืขืืืึธืคึผืก, ืฆื ืืื ืืืืขืจ ืืืืื ืึธืืขืจ ืงืขืื ืืื, ืืขืืืื ืืขืจื ืขื ืึท ื ืืึทืข ืฉืคึผืจืึทื ืคึฟืึทืจ ืฉืคึผืขืืขืจ ื ืืฆื ืืื ืึท ืืขืกืึธืคืข ืฆื ืื ืืื ืึทืื ืืึทืฉ ืฉืจืืคื. ืึธืืขืจ, Bash ืืื Python ืืืืืื ืคืึทืจืฉืืืขื ืข ืึทืคึผืจืึธืืืฉืื ืฆื ืฉืจืืืื ืงืึธื ืืื ืืึธืื ืืืืขืจ ืคึฟืขืึดืงืืืื, ืืืึทืืฉ ืึทื ืคึผืึธืจืืื ื ืืึทืฉ ืกืงืจืืคึผืก ืฆื ืื "ืฉืืึทื ื ืฉืคึผืจืึทื" ืืื ืืืจื ืก ืืืืก ืฆื ืืืื ืึท ืืืืึทืืืืง ืืื ืืืืึทื ืคืื ื ืืฉืืืง ืึทืจืืขื.
ืฆื ืืึทืื ืืขืื ืืจืื ืืขืจ ืคึฟืึทืจ ืืขืืืึธืคึผืก, ืคืืืข ื ืืฆืืง ืืืืืจืขืจืื ืืื ืืืืืืึทืืื ืืื ืคึผืืืืึธื ืืขื ืขื ืืืฉืืคื ืืื ืคืึธืจืืขืฆื ืฆื ืืืื ืืืฉืืคื. ืืขืจ ืึทืจืืืงื ืืืฉืจืืืื ืฆืืืื ื ืืึทืข ืืืืืจืขืจืื ืืืฉืืคื ืืืจื ืืขื ืืืืจ ืคืื ืืขื ืคึผืึธืกืื -
ืืืขืจ ืขืก ืื ืืื ืืขืจืขืกืืจื, ืืืืข ืืขื ืงืึทืฅ.
ื ืืืข "ืืืกืืงืืขืก"?
ืขืก ืืืึธืื ืืืกืงืืืขื, ืืืึธืก ืืึทืื ื ืืึท ืคึผืึทืงืึทืืืฉืึทื ืคึฟืึทืจ ืคืขืจืื ืคึผืจืึธืกื ืึทืคึผืขืจืืืฉืึทื ื? ืืืึธืก ืคึผืจืืืืขื ืฅ ืืืจ ืคืื ื ืืฆื ืึธืก.ืขื ืืืืจืึธื ืืื ืกืืืคึผืจืึธืกืขืกืก.<ืืขืืึธื ืึธืืขืจ ืงืืึทืก ืคืื ืืืื ืืจืืจื> ืืืืึทื?
ืืื ืืืขื ืืขืื ืขืืืช ืืื ืืืืืืข ืคืื โโืืขืืขืจ ืคืื ืื ืืืืืืึธืืขืง ืืึทืืื ืืขืจ.
ืกืืึทืจื-ืขื ืื ืืืืืืึธืืขืง
ืืืืืขืจ ืฉืจืืืื ืืืื ืืืืืขื ืข ืืจืืื ืืฉืืืื, ืขืก ืืื ื ืืฆืืง ืฆื ืืืื ืึธื ืืืื ืืื ืืืื ืคึฟืึทืจ ืคืึทืจืืืง ืกืึทืืืฉืึทื ื. ืคืื ืงืืจืก, ืขืก ืืื ืึท ืจืืืืงืืจื ืคืื ื ืื ืืขืคึฟืื ืขื ืืืึธืก ืืืจ ืืึทืจืคึฟื, ืึธืืขืจ ืืึธืก ืืื ืืึทื ืฅ ืึท "ืคืึทืจืืืืขืจืื ื ืืขืฉืขืขื ืืฉ". ืืื ืึท ืืขืจืฉื, ืืขื ืฆืืืึทื ื ืึทืจืืขื ืืื ืกืึทืืืขืก ืึท ืคึผืืึทืฅ ืคืื ืฆืืื ืืื ืื.
ืืืื ืื ืจืขืืืืืึทืื
- ืขืก ืืขื ืขื ืคึผืึทืงืึทืืืฉืึทื ืืืึธืก ืึทืงืฉืื ืืึทื ืืืืงืืขื ืงืึทืืืก ืฆื os.environ, ืึธืืขืจ ืืื ืืขืจ ืืขืืืืงืขืจ ืฆืืึทื ืืึทืจืคื ืึท ืืื ืื ืคืื ืืืกืืจืึทืงืืื ื ืึทืงืฉืึทื ื (ืฉืืคื ืึท ืืืึทืฉืคึผืื ืคืื ืึท ืงืืึทืก, ืกืคึผืขืฆืืขื ืคึผืึทืจืึทืืขืืขืจืก ืืื ืงืึทืืืก, ืืื"ื ื);
- ืขืก ืืขื ืขื ืืื ืคึผืึทืงืึทืืืฉืึทื, ืืืึธืก, ืึธืืขืจ, ืืขื ืขื ืฉืืจืขื ื ืืืื ืฆื ืึท ืกืคึผืขืฆืืคืืฉ ืืงืึธืืกืืกืืึทื (ืืขืจ ืืืืคึผื ืืืขื ืคืจืึทืืขืืืึธืจืงืก ืืื ืืืืฉืึทื ืืึธ) ืืื ืืขืจืืืขืจ ืืขื ืขื ื ืืฉื ืื ืืืืขืจืกืึทื ืึธื ืึท ืืขืงืข;
- ืขืก ืืขื ืขื ืืขืืื ืคืจืืืื ืฆื ืืึธื ืขืคึผืขืก ื ืืึท. ืืืฉื,
ืืืืื ืืืืคึผืื ื ืืื ืืคืืจืืฉ ืคึผืึทืจืก ืืืึทืืขืืืืืง ืืืึทืืืขืก ืืืจื ืคืึทื ืืขืืืึธืืก ืืืget_<typename>(var_name)
ืึธืืขืจ ืืึธ
ืืืื ืขืจ ืืขืจ ืืืืืื ื , ืืืึธืก, ืึธืืขืจ, ืฉืืืฆื ื ืืฉื ืื ืืืฆื ืฉืึทื ื ืคึผืืืืึธื 2 (ืืืึธืก, ืืจืึธืฅืืึทืึทืืืขืจ RIP , ืขืก ืืขื ืขื ื ืึธื ืืขืจื ืคืื ืืขืฉืจืืื ืงืึธื ืืื ืืึทื ืฅ ืืงืึธืืกืืกืืึทืื); - ืขืก ืืขื ืขื ืฉืืืข-ืกืืืืขื ื ืงืจืึทืคืก ืืืึธืก, ืคึฟืึทืจ ืขืืืขืืข ืืืืืึทืงืึทื ื ืกืืื, ืขื ืืืงื ืืื ืืื ืื ืึทืคึผืกืืจืื PyPI ืืื ืืืืื ืืึทืื ืคึผืจืึธืืืขืืก ืืื ืื ื ืึทืืื ื ืคืื ื ืืึทืข ืคึผืึทืงืึทืืืฉืึทื (ืืื ืืึทืืื ืืขืจ, ืื ื ืึธืืขื "ืกืืึทืจื-ืขื ืื" ืืื ืึท ื ืืืืืง ืืึธืก).
ืืื ืืขื ืจืฉืืื ืงืขื ืขื ืคืึธืจืืขืฆื ืคึฟืึทืจ ืึท ืืึทื ื ืฆืืึทื. ืึธืืขืจ, ืื ืืืืื ืืืืืื ืืขื ืขื ืืขื ืื ืฆื ืืึทืงืืืขื ืืืจ ืืงืกืืืืึทื ืืืขืื ืืขื ืืขืืึทื ืง ืคืื ืืึทืื ืขืคึผืขืก ืืึทืงืืืขื ืืื ืื ืืืืขืจืกืึทื.
ืจืขืงืืืืจืขืืขื ืฅ ืืืึธืก ืืขื ืขื ืืึทืฉืืืื ืืืืืขืจ ืฉืจืืืื smart-env:
- ืื ืืขืจืกื ืคึผืฉืื ื ืืฆื ืกืืขืืข
- ืืจืื ื ืงืึทื ืคืืืืขืจืึทืืึทื ืืึทืื ืืืืคึผืื ื ืฉืืืฆื
- Python 2.7 ืงืึทืืคึผืึทืืึทืืึทื
- ืืื ืงืึธื ืงืึทืืืขืจืืืืฉ ืืืจื ืืขืกืฅ
ืืขืกืึธืฃ, ืึทืืข ืืขื ืืื ืืขืืืขื ืืืื ืืขืืขื. ืืึธ ืืื ืึท ืืืืฉืคึผืื ืคืื ื ืืฆื:
from smart_env import ENV
print(ENV.HOME) # Equals print(os.environ['HOME'])
# assuming you set env variable MYVAR to "True"
ENV.enable_automatic_type_cast()
my_var = ENV.MY_VAR # Equals boolean True
ENV.NEW_VAR = 100 # Sets a new environment variable
ืืื ืืืจ ืงืขื ืขื ืืขื ืคึฟืื ืืขื ืืืึทืฉืคึผืื, ืฆื ืึทืจืืขืื ืืื ืึท ื ืืึทืข ืงืืึทืก, ืืืจ ื ืึธืจ ืืึทืจืคึฟื ืฆื ืึทืจืืึทื ืคืืจ ืขืก (ืืืจ ืืึธื ื ืื ืืึทืจืคึฟื ืฆื ืฉืึทืคึฟื ืึท ืืืึทืฉืคึผืื - ืืื ืืก ืื ืขืงืกืืจืข ืงืึทืืฃ). ืึทืงืกืขืก ืฆื ืงืืื ืกืืืืืืข ืืืึทืืขืืืืืง ืืื ืึทืืฉืืืื ืืืจื ืจืืคืขืจืื ื ืฆื ืขืก ืืื ืึท ืืืขืจืืึทืืึทื ืคืื ืื ENV ืงืืึทืก, ืืืึธืก, ืืื ืคืึทืงื, ืืืื ืืขื ืงืืึทืก ืึท ืื ืืืึทืืืื ืจืึทืคึผืขืจ ืคึฟืึทืจ ืื ืืขืืืืจื ืกืืกืืขื ืกืืืืืืข, ืืื ืกืืืืึทืืืืื ืืึทืกืื ืืืขื ืื ืขืก ืืื ืึท ืืขืืืขื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืืืคืขืฅ ืคึฟืึทืจ ืึผืืขื ืงืืื ืกืืกืืขื ( ืึท ืขื ืืขื ืฆืืืึทื ื, ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืื ืึทืืฉืืืื ืืื Django , ื ืึธืจ ืืึธืจื ืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืืืคืขืฅ ืืื ืื ืกืขืืืื ืืก ืืึธืืืืข / ืคึผืขืงื ืืื).
ืืขืื / ืืืกืืืืึทื ืื ืึธืืึทืืึทืืืง ืืืืคึผืื ื ืฉืืืฆื ืืึธืืข ืืื ืึทืืฉืืืื ืืื ืฆืืืื ืืขืืืึธืืก - enable_automatic_type_cast () ืืื disable_automatic_type_cast (). ืืึธืก ืงืขื ืืืื ืืึทืงืืืขื ืืืื ืื ืื ืืืืืจืึทื ืืขื ืึทื ืืืึทืืขืืืืืง ืึผืืื ืึท ืกืืจืืึทืืืืื JSON-ืืื ืืืืคืขืฅ ืึธืืขืจ ืืคืืื ื ืึธืจ ืึท ืืึธืึธืืขืึทื ืงืขืกืืืืขืจืืืง (ืืคืืจืืฉ ืืึทืฉืืขืืืงื ืื DEBUG ืืืึทืืขืืืืืง ืืื Django ืืืจื ืงืึทืืคึผืขืจืื ื ืื ืกืืืืืืข ืืืึทืืขืืืืืง ืืื "ืืืืืืง" ืกืืจืื ืืก ืืื ืืืื ืขืจ ืคืื ืื ืืขืจืกื ืคึผืจืึธืกื ืงืึทืกืขืก). ืืืขืจ ืืืฆื ืขืก ืืื ื ืื ืืึทืจืคึฟื ืฆื ืืคืืจืืฉ ืืขืจ ืกืืจืื ืืก - ืจืืึฟ ืคืื ืื ื ืืืืืง ืึทืงืฉืึทื ื ืืขื ืขื ืฉืืื ืขืืืขืืื ืืื ืื ืืืคืขื ืืฉื ืคืื ืืขืจ ืืืืืืึธืืขืง ืืื ื ืึธืจ ืืืืจืื ืคึฟืึทืจ ืึท ืกืืื ืึทื ืฆื ืฉืคึผืืื. ๐ ืืื ืึทืืืขืืืื, ืืืืคึผืื ื ืึทืจืืขื ืืจืึทื ืกืคึผืขืจืึทื ื ืืื ืฉืืืฆื ืึผืืขื ืึทืืข ืื ืืืฆื ืืขืืืื-ืืื ืืึทืื ืืืืคึผืก (ืคืจืึธืืขื ืกืขื, ืงืึธืืคึผืืขืงืก ืืื ืืืืขืก ืืขื ืขื ื ืืฉื ืืขืกืืขื).
ืื ืคืึธืืขืจืื ื ืฆื ืฉืืืฆื Python 2 ืืื ืืืคึผืืึทืืขื ืึทื ืืื ืึผืืขื ืงืืื ืงืจืื ืืช (ืื ืคืึทืจืืึธืื ืคืื ืืืืคึผืื ื ืืื ืขืืืขืืข ืคืื โโโโืื "ืฆืืงืขืจ ืงืึทื ืืื" ืคืื ืื ืืขืฆืืข ืืืขืจืกืืขืก ืคืื Python 3), ืกืคึผืขืฆืืขื ืืึทื ืง ืฆื ืื ืืืขืืืืืง ืืขืงืก (ืฆื ืกืึธืืืืข ืื ืคึผืจืึธืืืขืืก ืคืื ื ืืฆื ืืขืืึทืงืืึทืกืก) ).
ืึธืืขืจ ืขืก ืืขื ืขื ืขืืืขืืข ืจืืกืืจืืงืฉืึทื ื:
- ืฉืืืฆื ืคึฟืึทืจ Python 3 ืืืื ืืืขืจืกืืข 3.5 ืืื ืืขืืขืจ (ืืืืขืจ ืืืึทืืืึทื ืืื ืืืื ืคึผืจืืืขืงื ืืื ืืขืจ ืจืขืืืืืึทื ืคืื ืคืืืืงืืึทื ืึธืืขืจ ืคืขืื ืคืื ื ืืื ืคึฟืึทืจ ืืืคึผืจืืืืืึทื ืฅ, ืืืืึทื ืขืก ืืื ืฉืืืขืจ ืฆื ืืขืคึฟืื ืขื ืึทื ืึธืืืขืงืืืื ืกืืื ืืืึธืก ืืืจ ืืขื ื ื ืึธื ืืืืฃ 3.4);
- ืืื Python 2.7, ืื ืืืืืืึธืืขืง ืฉืืืฆื ื ืืฉื ืืขืกืืจืืึทืืืืืืฉืึทื ืคืื ืฉืืขืื ืืืืขืจืึทืื. ืืึทืฉืจืืึทืืื ื
ืืึธ . ืืืขืจ ืืืื ืืืขืจ ืขืก ืื ืืืื ืฆื ืื ืกืืจืืืขื ื ืขืก, ืืืจ ืืขื ื ืืึทืืจืืกื :);
ืื ืืืืืืึธืืขืง ืืืื ืืื ืึท ืืืกื ืขื ืืขืงืึทื ืืืึทื ืืื ืคืึทื ืคืื ืคึผืึทืจืกืื ื ืขืจืจืึธืจืก. ืืืื ืื ืฉืืจืืงื ืงืขื ื ืืฉื ืืืื ืื ืขืจืงืขื ื ืืืจื ืงืืื ืคืื ืื ืื ืืืฆื ืึทื ืึทืืืืขืจื, ืื ืืืขืจื ืืืืืื ืึท ืฉืืจืืงื (ืืื, ืคึฟืึทืจ ืงืึทื ืืืื ืืึทื ืก ืกืืืืช ืืื ืฆืืจืืง ืงืึทืืคึผืึทืืึทืืืืึทืื ืืื ืื ืืขืืืืื ืืืขื ืืึธืืืง ืคืื ืืื ืืืขืจืืึทืืึทืื ืึทืจืืขื ืืื ืืึทืฉ).
ืคึผืืืืึธื-ืฉืึธื ืืืืืืึธืืขืง
ืืืฆื ืืื ืืืขื ืืึธืื ืืืจ ืืืขืื ืื ืจืืข ืืืืืืึธืืขืง (ืืื ืืืขื ืคืึทืจืืึธืื ืื ืืึทืฉืจืืึทืืื ื ืคืื ืื ืฉืึธืจืืงืึธืืื ืืก ืคืื ืื ืืืืืกืืื ื ืึทื ืึทืืึธืืืขืก - ืขืก ืืื ืขื ืืขื ืฆื ืื ืืืกืงืจืืืื ืคึฟืึทืจ ืกืืึทืจื-ืขื ืื ืึทื ืึทืืึธืืืขืก -
ืืื ืึทืืืขืืืื, ืืขืจ ืืขืืึทื ืง ืคืื ืืืคึผืืึทืืขื ืืืืฉืึทื ืืื ืื ืจืขืงืืืืจืขืืขื ืฅ ืคึฟืึทืจ ืขืก ืืขื ืขื ืขื ืืขื ืฆื ืื ืืืกืงืจืืืื ืคึฟืึทืจ ืกืืึทืจื-ืขื ืื, ืืื ืงืขื ืขื ืืืื ืืขืืขื ืคึฟืื ืืขื ืืืึทืฉืคึผืื:
from python_shell import Shell
Shell.ls('-l', '$HOME') # Equals "ls -l $HOME"
command = Shell.whoami() # Equals "whoami"
print(command.output) # prints your current user name
print(command.command) # prints "whoami"
print(command.return_code) # prints "0"
print(command.arguments) # prints ""
Shell.mkdir('-p', '/tmp/new_folder') # makes a new folder
ืืขืจ ืืขืืึทื ืง ืืื ืืึธืก:
- ืืืื ืงืืึทืก ืืืึธืก ืจืขืคึผืจืึทืืขื ืฅ ืืึทืฉ ืืื ืืขืจ ืคึผืืืืึธื ืืืขืื;
- ืืขืืขืจ ืืึทืฉ ืืึทืคึฟืขื ืืื ืืขืจืืคื ืืื ืึท ืคึฟืื ืงืฆืืข ืคืื โโืื ืฉืขื ืงืืึทืก;
- ืื ืคึผืึทืจืึทืืขืืขืจืก ืคึฟืึทืจ ืืขืืขืจ ืคึฟืื ืงืฆืืข ืจืืคื ืืขื ืขื ืืขืืึธืื ืืืจืืืขืืื ืืขื ืืื ืื ืงืึธืจืึทืกืคึผืึทื ืืื ื ืืึทืฉ ืืึทืคึฟืขืื ืจืืคื;
- ืืขืืขืจ ืืึทืคึฟืขื ืืื ืขืงืกืึทืงืืืืึทื "ืืึธ ืืื ืืืฆื" ืืื ืืขื ืืึธืืขื ื ืขืก ืืื ืืขืจืืคื, ื.ื. ืืขืจ ืกืื ืืฉืจืึธื ืึธืืก ืฆืืืึทื ื ืึทืจืืขื;
- ืขืก ืืื ืืขืืืขื ืฆื ืึทืงืกืขืก ืื ืจืขืืืืืึทื ืคืื ืึท ืืึทืคึฟืขื ืืื ืกืืืึธืื, ืืื ืืขืืื ื ืืื ืืืื ืฆืืจืืงืงืขืจ ืงืึธื;
- ืืืื ืื ืืึทืคึฟืขื ืืื ื ืืฉื ืืื ืื ืกืืกืืขื, ืึท ืืืกื ืขื ืืื ืืจืื ืืขืืืืจืคื.
ืืื ืืื ืกืืึทืจื-ืขื ืื, ืขืก ืืื ืฉืืืฆื ืคึฟืึทืจ Python 2 (ืืึธืืฉ ืึท ืืืกื ืืขืจ ืกืึทืงืจืึทืคืืฉืึทื ืืืื ืืื ืคืืจืืื ืื) ืืื ืงืืื ืฉืืืฆื ืคึฟืึทืจ Python 3.0-3.4.
ืืืืืืึธืืขืง ืึทื ืืืืืงืืื ื ืคึผืืึทื ื
ืืืจ ืงืขื ืขื ื ืืฆื ืื ืืืืืจืขืจืื ืืืฆื: ืืืืืข ืืขื ืขื ืึทืจืืึทื ืืขืฉืืงื ืืืืฃ ืืขืจ ืืึทืึทืืืขืจ PyPI. ืงืืืืื ืืขื ืขื ืืืจืขืืืืื ืืืืฃ Github (ืืขื ืืืืืืขืจ).
ืืืืืข ืืืืืจืขืจืื ืืืขื ืืืื ืืขืืืขืืึธืคึผืขื ืืื ืื ืืึทืืขืจืงืื ืืขื ืืขืืืืื ืคืื ืื ืืื ืืขืจืขืกืืจื. ืืื ืืืื ืขืก ืงืขื ืืืื ืฉืืืขืจ ืฆื ืงืืืขื ืึทืจืืืฃ ืืื ืึท ืคืึทืจืฉืืืื ืงืืึทื ืคืื ื ืืึทืข ืคึฟืขืึดืงืืืื ืืื ืกืืึทืจื-ืขื ืื, ืืขืืึธืื ืืื ืคึผืืืืึธื-ืฉืึธื ืขืก ืืื ืืืฉืืืื ืขืคึผืขืก ืึทื ืืขืจืฉ ืฆื ืืืืื:
- ืฉืืืฆื ืคึฟืึทืจ ื ืื-ืืืึทืงืื ื ืงืึทืืืก;
- ืืขืืืขืืงืืื ืคืื ืื ืืขืจืึทืงืืืื ืงืึธืืื ืืงืึทืฆืืข ืืื ืื ืืึทื ืฉืึทืคึฟื (ืืจืืขืื ืืื ืกืืืื);
- ืึทืืื ื ื ืืึท ืคึผืจืึธืคึผืขืจืืืขืก (ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืคืึทืจืืึธื ืฆื ืืึทืงืืืขื ืคึผืจืึธืืืงืฆืืข ืคืื โโืกืืืขืจืจ);
- ืืืคึผืืึทืืขื ืืืืฉืึทื ืคืื ืึท ืืืขืืืืืึทืืขืจ ืคืื ืื ืืืฆื ืงืึทืืึทื ืื (ืคึฟืึทืจ ื ืืฆื ืืื ืื ืืืจ () ืคึฟืื ืงืฆืืข);
- ืืื"ื ื
ืจืขืคึฟืขืจืขื ืฆื
- smart-env ืืืืืืึธืืขืง:
ืืืืืื ะธืคึผืคึผื - ืคึผืืืืึธื-ืฉืขื ืืืืืืึธืืขืง:
ืืืืืื ะธืคึผืคึผื ืืขืืขืืจืึทื ืงืึทื ืึทื ืืืืืืึธืืขืง ืืขืจืืืึทื ืืืงืื ืืขื
UPD 23.02.2020/XNUMX/XNUMX:
* ืจืืคึผืึทืืึทืืึธืจืื ืืขื ืขื ืืจืืืขืจืืขืคืืจื, ืงืึธืจืึทืกืคึผืึทื ืืื ื ืคึฟืึทืจืืื ืืื ืืขื ืืขื ืขื ืืขืจืืืึทื ืืืงื
* ืืืขืจืกืืข python-shell==1.0.1 ืืื ืืจืืื ืคึฟืึทืจ ืืขืืืื ื ืืืืฃ 29.02.2020/XNUMX/XNUMX. ืขื ืืขืจืื ืืขื ืึทืจืืึทื ื ืขืืขื ืฉืืืฆื ืคึฟืึทืจ ืึทืืืึธืงืึธืืคึผืืขืืข ืืึทืคึฟืขืื ืืื ืื ืืืจ (ืฉืขื) ืืึทืคึฟืขื, ืคืืืกื ืืืง ืงืึทืืึทื ืื ืืื ืึท ืคืึทืจืงืจืืคึผืื ืคึผืืืืึธื ืืืืขื ืึทืคืืื ืืื ืืฉืืง ืคืืงืกืื.
ืืงืืจ: www.habr.com