рд╕рд╛рдордЧреНрд░реА, рдЬрд┐рд╕рдХрд╛ рдЕрдиреБрд╡рд╛рдж рд╣рдо рдЖрдЬ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ рд▓рд┐рдирдХреНрд╕ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрд╕ рдЙрдкрдХрд░рдг рдХрд╛ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдмрд╣реБрдд рд╕рдордп рдмрдЪрд╛ рд╕рдХрддреА рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╣рдо рдпрд╣рд╛рдВ рдмреИрд╢ рд╢реЗрд▓ рдФрд░ 21 рдЙрдкрдпреЛрдЧреА рдХрдорд╛рдВрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ рд▓рдВрдмреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рддреЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдлрд╝реНрд▓реИрдЧ рдФрд░ рдмреИрд╢ рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВред
тЖТ
рд╢рд░реНрддреЗрдВ
рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдЖрдк рд▓рд┐рдирдХреНрд╕ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╕реАрдЦрддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рдХрдИ рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдБ рдорд┐рд▓реЗрдВрдЧреА рдЬреЛ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реЛрддреА рд╣реИрдВред рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ, рдЬреИрд╕реЗ "рд▓рд┐рдирдХреНрд╕" рдФрд░ "рдпреВрдирд┐рдХреНрд╕", рдпрд╛ "рд╢реЗрд▓" рдФрд░ "рдЯрд░реНрдорд┐рдирд▓", рдХрднреА-рдХрднреА рднреНрд░рдорд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдЖрдЗрдП рдЗрди рдФрд░ рдЕрдиреНрдп рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╢рдмреНрджреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВред
рдЕрдм рдЬрдм рд╣рдордиреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╢рдмреНрджреЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рддреЛ рдореИрдВ рдпрд╣ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдВ "рдмреИрд╢", "рд╢реЗрд▓" рдФрд░ "рдХрдорд╛рдВрдб рд▓рд╛рдЗрди" рд╢рдмреНрджреЛрдВ рдХрд╛ рдкрд░рд╕реНрдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛, рд╕рд╛рде рд╣реА "рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛" рдФрд░ "рдлрд╝реЛрд▓реНрдбрд░" рд╢рдмреНрджреЛрдВ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ред
рдорд╛рдирдХ stdin
), рдорд╛рдирдХ рдЖрдЙрдЯрдкреБрдЯ (рдорд╛рдирдХ рдЖрдЙрдЯрдкреБрдЯ, stdout
) рдФрд░ рдорд╛рдирдХ рддреНрд░реБрдЯрд┐ рдЖрдЙрдЯрдкреБрдЯ (рдорд╛рдирдХ рддреНрд░реБрдЯрд┐, stderr
).
рдпрджрд┐ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдХрдорд╛рдВрдб рдореЗрдВ рдЖрдкрдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдорд┐рд▓реЗрдЧрд╛ my_whatever
- рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЗрд╕ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдЖрдкрдХреА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо.
рдЕрдм, рдЙрди рдЖрджреЗрд╢реЛрдВ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рд╛рдордЧреНрд░реА рд╕рдорд░реНрдкрд┐рдд рд╣реИ, рдЖрдЗрдП рдЙрдирдХреА рд╕реВрдЪреА рдФрд░ рдЙрдирдХреЗ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред
21 рдмреИрд╢ рдХрдорд╛рдВрдб
тЦНрдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛
man
: рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЧрд╛рдЗрдб (рд╕рд╣рд╛рдпрддрд╛) рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИредpwd
: рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИредls
: рдХрд┐рд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИредps
: рдЖрдкрдХреЛ рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
тЦНрдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рд╣реЗрд░рдлреЗрд░
cd
: рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрджрд▓реЗрдВ.touch
: рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ.mkdir
: рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдПрдВ.cp
: рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЙрдкреА рдХрд░реЗрдВ.mv
: рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдпрд╛ рд╣рдЯрд╛рдирд╛.ln
: рдПрдХ рд▓рд┐рдВрдХ рдмрдирд╛рдПрдВ.
тЦНI/O рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдФрд░ рдкрд╛рдЗрдкрд▓рд╛рдЗрди
<
: рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рдиstdin
.>
: рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рдиstdout
.|
: рдПрдХ рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рджреВрд╕рд░реЗ рдХрдорд╛рдВрдб рдХреЗ рдЗрдирдкреБрдЯ рдореЗрдВ рдкрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ред
тЦНрдлрд╝рд╛рдЗрд▓реЗрдВ рдкрдврд╝рдирд╛
head
: рдлрд╝рд╛рдЗрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдкрдврд╝реЗрдВ.tail
: рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЕрдВрдд рдкрдврд╝реЗрдВ.cat
: рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝реЗрдВ рдФрд░ рдЙрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ, рдпрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░реЗрдВред
тЦНрдлрд╝рд╛рдЗрд▓реЗрдВ рд╣рдЯрд╛рдирд╛, рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд░реЛрдХрдирд╛
rm
: рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╣рдЯрд╛рдПрдБ.kill
: рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд░реЛрдХреЗрдВ.
тЦНрдЦреЛрдЬреЗрдВ
grep
: рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЦреЛрдЬреЗредag
: рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рдЙрдиреНрдирдд рдЖрджреЗрд╢.
тЦНрд╕рдВрдЧреНрд░рд╣
tar
: рдкреБрд░рд╛рд▓реЗрдЦ рдмрдирд╛рдирд╛ рдФрд░ рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ред
рдЖрдЗрдП рдЗрди рдХрдорд╛рдВрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрд╛рдд рдХрд░реЗрдВред
рдЯреАрдо рд╡рд┐рд╡рд░рдг
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдЗрдП рдЙрди рдЖрджреЗрд╢реЛрдВ рд╕реЗ рдирд┐рдкрдЯреЗрдВ рдЬрд┐рдирдХреЗ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рдкрддреНрд░ рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ stdout
. рдЖрдорддреМрд░ рдкрд░ рдпреЗ рдкрд░рд┐рдгрд╛рдо рдЯрд░реНрдорд┐рдирд▓ рд╡рд┐рдВрдбреЛ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВред
тЦНрдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛
man command_name
: рдХрдорд╛рдВрдб рдЧрд╛рдЗрдб, рдпрд╛рдиреА рд╕рд╣рд╛рдпрддрд╛ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВред
pwd
: рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдкрде рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВред рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рджреМрд░рд╛рди, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдХреНрд╕рд░ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдХрд┐ рд╡рд╣ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХрд╣рд╛рдВ рд╣реИред
ls
: рдХрд┐рд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВред рдЗрд╕ рдХрдорд╛рдВрдб рдХрд╛ рдкреНрд░рдпреЛрдЧ рднреА рдЕрдХреНрд╕рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ.
ls -a
: рдЫрд┐рдкреА рдлрд╝рд╛рдЗрд▓реЗрдВ рджреЗрдЦреЗрдВред рдпрд╣рд╛рдВ рдЭрдВрдбрд╛ рд▓рдЧрд╛рдпрд╛ рдЧрдпрд╛ -a
рдЖрджреЗрд╢реЛрдВ ls
. рдЭрдВрдбреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрджреЗрд╢реЛрдВ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред
ls -l
: рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВред
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЭрдВрдбреЛрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП - рдЗрд╕ рддрд░рд╣: ls -al
.
ps
: рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рджреЗрдЦреЗрдВред
ps -e
: рд╕рднреА рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ, рди рдХрд┐ рдХреЗрд╡рд▓ рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╢реЗрд▓ рд╕реЗ рдЬреБрдбрд╝реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рдЗрд╕ рдХрдорд╛рдВрдб рдХрд╛ рдкреНрд░рдпреЛрдЧ рдЕрдХреНрд╕рд░ рдЗрд╕реА рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
тЦНрдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рд╣реЗрд░рдлреЗрд░
cd my_directory
: рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЗрд╕рдореЗрдВ рдмрджрд▓реЗрдВ my_directory
. рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЯреНрд░реА рдореЗрдВ рдПрдХ рд╕реНрддрд░ рдКрдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ my_directory
рддреБрд▓рдирд╛рддреНрдордХ рдкрде ../
.
рд╕реАрдбреА рдХрдорд╛рдВрдб
touch my_file
: рдлрд╝рд╛рдЗрд▓ рдирд┐рд░реНрдорд╛рдг my_file
рджрд┐рдП рдЧрдП рдкрде рдХреЗ рд╕рд╛рде.
mkdir my_directory
: рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдВ my_directory
рджрд┐рдП рдЧрдП рдкрде рдХреЗ рд╕рд╛рде.
mv my_file target_directory
: рдлрд╝рд╛рдЗрд▓ рд▓реЗ рдЬрд╛рдПрдБ my_file
рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ target_directory
. рд▓рдХреНрд╖реНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдкрде рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдФрд░ рдХрд┐рд╕реА рдирд┐рд░реНрдорд╛рдг рдХреА рддрд░рд╣ рдирд╣реАрдВ)ред ../
).
рдЯреАрдо mv
рдлрд╝рд╛рдЗрд▓реЛрдВ рдпрд╛ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХрд╛ рдирд╛рдо рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:
mv my_old_file_name.jpg my_new_file_name.jpg
: рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреА рдПрдХ рдкреНрд░рддрд┐ рдмрдирд╛рдПрдБ
cp my_source_file target_directorymy_source_file
рдФрд░ рдЗрд╕реЗ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдбрд╛рд▓ рджреЗрдВ target_directory
.
ln -s my_source_file my_target_file
: рдПрдХ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд▓рд┐рдВрдХ рдмрдирд╛рдПрдВ my_target_file
рдкреНрд░рддрд┐ рдлрд╝рд╛рдЗрд▓ my_source_file
. рдпрджрд┐ рдЖрдк рд▓рд┐рдВрдХ рдмрджрд▓рддреЗ рд╣реИрдВ, рддреЛ рдореВрд▓ рдлрд╝рд╛рдЗрд▓ рднреА рдмрджрд▓ рдЬрд╛рдПрдЧреАред
рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ my_source_file
рддреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ my_target_file
рд░рд╣реЗрдВрдЧреЗред рдЭрдВрдбрд╛ -s
рдЖрджреЗрд╢реЛрдВ ln
рдЖрдкрдХреЛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдЕрдм рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ I/O рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдФрд░ рдкрд╛рдЗрдкрд▓рд╛рдЗрдиреЛрдВ рдХреАред
тЦНI/O рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдФрд░ рдкрд╛рдЗрдкрд▓рд╛рдЗрди
my_command < my_file
: рдорд╛рдирдХ рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ (stdin
) рдкреНрд░рддрд┐ рдлрд╝рд╛рдЗрд▓ my_file
. рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдХрдорд╛рдВрдб рдХреАрдмреЛрд░реНрдб рд╕реЗ рдХреБрдЫ рдЗрдирдкреБрдЯ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдпрд╣ рдбреЗрдЯрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЧрдпрд╛ рд╣реИред
my_command > my_file
: рдХрдорд╛рдВрдб рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рд╕рд╛рдорд╛рдиреНрдпрддрдГ рдХреНрдпрд╛ рд╣реЛрдЧрд╛ stdout
рдФрд░ рд╕реНрдХреНрд░реАрди рдкрд░ рдЖрдЙрдЯрдкреБрдЯ, рдлрд╝рд╛рдЗрд▓ рдореЗрдВ my_file
. рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ my_file
рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдирд╣реАрдВ рд╣реИ - рдпрд╣ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ. рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЗрд╕реЗ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж ls > my_folder_contents.txt
рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рдЬрд╛рдПрдЧреА рдЬрд┐рд╕рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ рдЗрд╕рдХреА рдПрдХ рд╕реВрдЪреА рд╣реЛрдЧреАред
рдпрджрд┐ рдкреНрд░рддреАрдХ рдХреЗ рд╕реНрдерд╛рди рдкрд░ >
рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ >>
, рдлрд┐рд░, рдмрд╢рд░реНрддреЗ рдХрд┐ рд╡рд╣ рдлрд╝рд╛рдЗрд▓ рдЬрд┐рд╕ рдкрд░ рдХрдорд╛рдВрдб рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореМрдЬреВрдж рд╣реИ, рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдбреЗрдЯрд╛ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛.
рдЖрдЗрдП рдЕрдм рдбреЗрдЯрд╛ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред
рдПрдХ рдХрдорд╛рдВрдб рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рджреВрд╕рд░реЗ рдХрдорд╛рдВрдб рдХреЗ рдЗрдирдкреБрдЯ рдореЗрдВ рдлреАрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдкрд╛рдЗрдк рдХреЛ рджреВрд╕рд░реЗ рдкрд╛рдЗрдк рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдЬреИрд╕рд╛ рд╣реИ
first_command | second_command
: рдХрдиреНрд╡реЗрдпрд░ рдкреНрд░рддреАрдХ, |
, рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рджреВрд╕рд░реЗ рдХрдорд╛рдВрдб рдкрд░ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд░реНрдгрд┐рдд рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рдпреАрдВ рдУрд░ рдХрд╛ рдЖрджреЗрд╢ рдХрд┐рд╕рдХреЛ рднреЗрдЬрддрд╛ рд╣реИ stdout
, рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ stdin
рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдкреНрд░рддреАрдХ рдХреЗ рджрд╛рдИрдВ рдУрд░ рдХрдорд╛рдВрдбред
рд▓рд┐рдирдХреНрд╕ рдкрд░, рдбреЗрдЯрд╛ рдХреЛ рдХрд┐рд╕реА рднреА рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдЕрдХреНрд╕рд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╕рдм рдХреБрдЫ рдПрдХ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╣реИред
рдЖрдк рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдкреНрд░рддреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХрд╛рдзрд┐рдХ рдХрдорд╛рдВрдб рдХреЛ рд╢реНрд░реГрдВрдЦрд▓рд╛рдмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ:
first_command | second_command | third_command
рдХрдИ рдХрдорд╛рдВрдбреЛрдВ рдХреА рдПрдХ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреА рддреБрд▓рдирд╛ рдПрдХ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╕реЗ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЬрдм рдХрдорд╛рдВрдб рдкреНрд░рддреАрдХ рдХреЗ рдмрд╛рдИрдВ рдУрд░ рд╣реЛ |
, рдХреБрдЫ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддрд╛ рд╣реИ stdout
, рд╡рд╣ рдЬреЛ рдЖрдЙрдЯрдкреБрдЯ рджреЗрддреА рд╣реИ рд╡рд╣ рддреБрд░рдВрдд рдЙрдкрд▓рдмреНрдз рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ stdin
рджреВрд╕рд░реА рдЯреАрдо. рдпрд╣реА рд╣реИ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐, рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╣рдо рдЖрджреЗрд╢реЛрдВ рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░ рдирд┐рд╖реНрдкрд╛рджрди рд╕реЗ рдирд┐рдкрдЯ рд░рд╣реЗ рд╣реИрдВред рдХрднреА-рдХрднреА рдЗрд╕рдХреЗ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдкрд░рд┐рдгрд╛рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдЕрдм рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреАред
тЦНрдлрд╝рд╛рдЗрд▓реЗрдВ рдкрдврд╝рдирд╛
head my_file
: рдлрд╝рд╛рдЗрд▓ рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдкрдврд╝рддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИред рдЖрдк рди рдХреЗрд╡рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдпрд╣ рднреА рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХрдорд╛рдВрдб рдХреНрдпрд╛ рдЖрдЙрдЯрдкреБрдЯ рджреЗрддрд╛ рд╣реИ stdin
рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рдЖрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред
tail my_file
: рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рд╕реЗ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдкрдврд╝рддрд╛ рд╣реИред рдЗрд╕ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╣реЗрдб (рд╕рд┐рд░) рд╕рд╛рдордиреЗ рд╣реИ рдФрд░ рдЯреЗрд▓ (рдкреВрдВрдЫ) рдкреАрдЫреЗ рд╣реИ
рдпрджрд┐ рдЖрдк рдкрд╛рдВрдбрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдХрдорд╛рдВрдб head
╨╕ tail
рдЖрдкрд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП. рдпрджрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдКрдкрд░ рджрд┐рдП рдЧрдП рдЪрд┐рддреНрд░ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ, рдФрд░ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рдпрд╛рдж рдХрд░ рд▓реЗрдВрдЧреЗред
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдЕрдиреНрдп рддрд░реАрдХреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рдХрдорд╛рдВрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ cat
.
рдЯреАрдо cat
рдпрд╛ рддреЛ рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рдПрдХрд╛рдзрд┐рдХ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреЙрд▓ рдХрд░рдиреЗ рдкрд░ рдЗрд╕ рдХрдорд╛рдВрдб рдХреЛ рдХрд┐рддрдиреА рдлрд╛рдЗрд▓реЗрдВ рдкрд╛рд╕ рдХреА рдЬрд╛рддреА рд╣реИрдВред
рдмрд┐рд▓реНрд▓реА рдХреА рдЖрдЬреНрдЮрд╛
cat my_one_file.txt
: рдЬрдм рдХреЛрдИ рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдЗрд╕ рдХрдорд╛рдВрдб рдХреЛ рдкрд╛рд╕ рдХреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдпрд╣ рдЗрд╕реЗ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддрд╛ рд╣реИ stdout
.
рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рджреЛ рдлрд╝рд╛рдЗрд▓реЗрдВ рдпрд╛ рдЕрдзрд┐рдХ рдлрд╝рд╛рдЗрд▓реЗрдВ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИред
cat my_file1.txt my_file2.txt
: рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдХрдИ рдлрд╝рд╛рдЗрд▓реЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдХрдорд╛рдВрдб рдЙрдирдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдХреНрдпрд╛ рд╣реБрдЖ stdout
.
рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рд╕рдВрдпреЛрдЬрди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдПрдХ рдирдИ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ >
:
cat my_file1.txt my_file2.txt > my_new_file.txt
рдЕрдм рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдХреИрд╕реЗ рд╣рдЯрд╛рдПрдВ рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдХреИрд╕реЗ рд░реЛрдХреЗрдВред
тЦНрдлрд╝рд╛рдЗрд▓реЗрдВ рд╣рдЯрд╛рдирд╛, рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд░реЛрдХрдирд╛
rm my_file
: рдлрд╝рд╛рдЗрд▓ рдирд╖реНрдЯ рдХрд░реЗрдВ my_file
.
rm -r my_folder
: рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рд╣рдЯрд╛рддрд╛ рд╣реИ my_folder
рдФрд░ рдЗрд╕рдореЗрдВ рдореМрдЬреВрдж рд╕рднреА рдлрд╝рд╛рдЗрд▓реЗрдВ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ред рдЭрдВрдбрд╛ -r
рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрджреЗрд╢ рдкреБрдирд░рд╛рд╡рд░реНрддреА рдореЛрдб рдореЗрдВ рдЪрд▓реЗрдЧрд╛ред
рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╣рдЯрд╛рдП рдЬрд╛рдиреЗ рдкрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рд╣рд░ рдмрд╛рд░ рдкреБрд╖реНрдЯрд┐рдХрд░рдг рдорд╛рдВрдЧрдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рдзреНрд╡рдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ -f
.
kill 012345
: рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд░реЛрдХрддрд╛ рд╣реИ, рдЗрд╕реЗ рд╢рд╛рд▓реАрдирддрд╛рдкреВрд░реНрд╡рдХ рдмрдВрдж рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рджреЗрддрд╛ рд╣реИред
kill -9 012345
: рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЬрдмрд░рди рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдЭрдВрдбрд╛ рджреЗрдЦреЗрдВ -s SIGKILL
рдЗрд╕рдХрд╛ рдЕрд░реНрде рдзреНрд╡рдЬ рдХреЗ рд╕рдорд╛рди рд╣реИ -9
.
тЦНрдЦреЛрдЬреЗрдВ
рдЖрдк рдбреЗрдЯрд╛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ - grep
, ag
╨╕ ack
. рдЖрдЗрдП рдЗрди рдЖрджреЗрд╢реЛрдВ рд╕реЗ рдЕрдкрдирд╛ рдкрд░рд┐рдЪрдп рдЖрд░рдВрдн рдХрд░реЗрдВ grep
. рдпрд╣ рдПрдХ рд╕рдордп-рдкрд░реАрдХреНрд╖рдгрд┐рдд, рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдХрдорд╛рдВрдб рд╣реИ, рдЬреЛ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рджреВрд╕рд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдзреАрдорд╛ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдЙрддрдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реИ рдЬрд┐рддрдирд╛ рд╡реЗ рд╣реИрдВред
рдЧреНрд░реЗрдк рдХрдорд╛рдВрдб
grep my_regex my_file
: рдЦреЛрдЬреЗрдВ my_regex
╨▓ my_file
. рдпрджрд┐ рдХреЛрдИ рдорд┐рд▓рд╛рди рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкреНрд░рддреНрдпреЗрдХ рдорд┐рд▓рд╛рди рдХреЗ рд▓рд┐рдП рдкреВрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реМрдЯрд╛ рджреА рдЬрд╛рддреА рд╣реИред рдЧрд▓рддреА рдХрд░рдирд╛ my_regex
рдЗрд╕реЗ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред
grep -i my_regex my_file
: рдЦреЛрдЬ рдХреЗрд╕-рдЕрд╕рдВрд╡реЗрджрдирд╢реАрд▓ рддрд░реАрдХреЗ рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИред
grep -v my_regex my_file
: рдЙрди рд╕рднреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ my_regex
. рдЭрдВрдбрд╛ -v
рдЗрд╕рдХрд╛ рдорддрд▓рдм рдЙрд▓рдЯрд╛ рд╣реИ, рдпрд╣ рдСрдкрд░реЗрдЯрд░ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ NOT
, рдХрдИ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
grep -c my_regex my_file
: рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд╛рдП рдЧрдП рдЦреЛрдЬреЗ рдЧрдП рдкреИрдЯрд░реНрди рдХреЗ рдорд┐рд▓рд╛рди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд▓реМрдЯрд╛рддрд╛ рд╣реИред
grep -R my_regex my_folder
: рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдЙрд╕рдореЗрдВ рдиреЗрд╕реНрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рдкреБрдирд░рд╛рд╡рд░реНрддреА рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реИред
рдЕрдм рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдЯреАрдо рдХреА ag
. рд╡рд╣ рдмрд╛рдж рдореЗрдВ рдЖрдИ grep
, рдпрд╣ рддреЗрдЬрд╝ рд╣реИ, рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред
рдПрдЬреА рдХрдорд╛рдВрдб
ag my_regex my_file
: рдкрдВрдХреНрддрд┐ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдФрд░ рд╕реНрд╡рдпрдВ рдЙрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдЬрд┐рдирдХреЗ рд╕рд╛рде рдорд┐рд▓рд╛рди рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ my_regex
.
ag -i my_regex my_file
: рдЦреЛрдЬ рдХреЗрд╕-рдЕрд╕рдВрд╡реЗрджрдирд╢реАрд▓ рддрд░реАрдХреЗ рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИред
рдЯреАрдо ag
рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдВ .gitignore
рдФрд░ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдпрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЬреЛ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЙрд╕реЗ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рдЖрд░рд╛рдорджрд╛рдпрдХ рд╣реИред
ag my_regex my_file -- skip-vcs-ignores
: рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА (рдЬреИрд╕реЗ .gitignore
) рдХреЛ рдЦреЛрдЬ рдореЗрдВ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЯреАрдо рдХреЛ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП ag
рдЬрд┐рд╕ рдлрд╝рд╛рдЗрд▓ рдкрде рдХреЛ рдЖрдк рдЦреЛрдЬ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрд╕ рдкрд░ рдЖрдк рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ .agignore
.
рдЗрд╕ рдЕрдиреБрднрд╛рдЧ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╣рдордиреЗ рдХрдорд╛рдВрдб рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдерд╛ ack
. рдЯреАрдореЗрдВ ack
╨╕ ag
рдмрд╣реБрдд рд╕рдорд╛рди, рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ 99% рд╡рд┐рдирд┐рдореЗрдп рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЯреАрдо ag
рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕реАрд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рд╣реИред
рдЕрдм рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреАред
тЦНрд╕рдВрдЧреНрд░рд╣
tar my_source_directory
: рдХрд┐рд╕реА рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ my_source_directory
рдПрдХ рдПрдХрд▓ рдЯрд╛рд░рдмреЙрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВред рдРрд╕реА рдлрд╝рд╛рдЗрд▓реЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдмрдбрд╝реЗ рд╕реЗрдЯ рдХреЛ рдХрд┐рд╕реА рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрддреА рд╣реИрдВред
рдЯрд╛рд░ рдХрдорд╛рдВрдб
рдЗрд╕ рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдЯрд╛рд░рдмреЙрд▓ рдлрд╝рд╛рдЗрд▓реЗрдВ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ .tar
(рдЯреЗрдк рдЖрд░реНрдХрд╛рдЗрд╡)ред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╢рдмреНрдж "рдЯреЗрдк" (рдЯреЗрдк) рдХрдорд╛рдВрдб рдХреЗ рдирд╛рдо рдореЗрдВ рдФрд░ рдЗрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдирд╛рдо рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдореЗрдВ рдЫрд┐рдкрд╛ рд╣реБрдЖ рд╣реИ, рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрдорд╛рдВрдб рдХрд┐рддрдиреЗ рд╕рдордп рд╕реЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реИред
tar -cf my_file.tar my_source_directory
: рдирд╛рдордХ рдПрдХ рдЯрд╛рд░рдмреЙрд▓ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИ my_file.tar
рдлрд╝реЛрд▓реНрдбрд░ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде my_source_directory
. рдЭрдВрдбрд╛ -c
рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ "рдХреНрд░рд┐рдПрдЯ" (рд╕реГрдЬрди), рдФрд░ рдЭрдВрдбрд╛ -f
"рдлрд╝рд╛рдЗрд▓" (рдлрд╝рд╛рдЗрд▓) рдХреЗ рд░реВрдк рдореЗрдВред
рд╕реЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП .tar
-рдлрд╝рд╛рдЗрд▓, рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ tar
рдЭрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде -x
("рдирд┐рдХрд╛рд▓рдирд╛", рдирд┐рд╖реНрдХрд░реНрд╖рдг) рдФрд░ -f
("рдлрд╝рд╛рдЗрд▓", рдлрд╝рд╛рдЗрд▓).
tar -xf my_file.tar
: рд╕реЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ my_file.tar
рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП.
рдЕрдм рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХрдВрдкреНрд░реЗрд╕ рдФрд░ рдбреАрдХрдВрдкреНрд░реЗрд╕ рдХреИрд╕реЗ рдХрд░реЗрдВ .tar
-filesред
tar -cfz my_file.tar.gz my_source_directory
: рдпрд╣рд╛рдБ рдзреНрд╡рдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ -z
("рдЬрд╝рд┐рдк", рд╕рдВрдкреАрдбрд╝рди рдПрд▓реНрдЧреЛрд░рд┐рджрдо) рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП gzip
(рдЬреАрдПрдирдпреВрдЬрд╝рд┐рдк)ред рдРрд╕реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╕рдордп рдлрд╝рд╛рдЗрд▓ рд╕рдВрдкреАрдбрд╝рди рдбрд┐рд╕реНрдХ рд╕реНрдерд╛рди рдмрдЪрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рддреЛ рдпрд╣ рдРрд╕реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рддреЗрдЬрд╝ рдбрд╛рдЙрдирд▓реЛрдб рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрддрд╛ рд╣реИред
рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВ .tar.gz
рдЖрдк рдПрдХ рдЭрдВрдбрд╛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ -z
рд╕рд╛рдордЧреНрд░реА рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рдЖрджреЗрд╢ рдХреЗ рд▓рд┐рдП .tar
-рдлрд╝рд╛рдЗрд▓реЗрдВ, рдЬрд┐рдирдХреА рд╣рдордиреЗ рдКрдкрд░ рдЪрд░реНрдЪрд╛ рдХреАред рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ:
tar -xfz my_file.tar.gz
рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЯреАрдо tar
рдФрд░ рднреА рдХрдИ рдЙрдкрдпреЛрдЧреА рдЭрдВрдбреЗ рд╣реИрдВ.
рдЙрдкрдирд╛рдореЛрдВ рдХреЛ рдмреИрд╢ рдХрд░реЗрдВ
рдмреИрд╢ рдЙрдкрдирд╛рдо (рдЬрд┐рд╕реЗ рдЙрдкрдирд╛рдо рдпрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрддреАрдХрд░рдг рднреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ) рдХреЛ рдХрдорд╛рдВрдб рдпрд╛ рдЙрдирдХреЗ рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреЗ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рдирдХреЗ рдирд┐рдпрдорд┐рдд рдХрдорд╛рдВрдб рдХреЗ рдмрдЬрд╛рдп рдЙрдкрдпреЛрдЧ рд╕реЗ рдХрд╛рдо рдореЗрдВ рддреЗрдЬреА рдЖрддреА рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЙрдкрдирд╛рдо рд╣реИ bu
, рдЬреЛ рдХрдорд╛рдВрдб рдХреЛ рдЫреБрдкрд╛рддрд╛ рд╣реИ python setup.py sdist bdist_wheel
, рддреЛ рдЗрд╕ рдХрдорд╛рдВрдб рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдРрд╕рд╛ рдЙрдкрдирд╛рдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдЬреЛрдбрд╝реЗрдВ ~/.bash_profile
:
alias bu="python setup.py sdist bdist_wheel"
рдпрджрд┐ рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИ ~/.bash_profile
, рддреЛ рдЖрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ touch
. рдЙрдкрдирд╛рдо рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЯрд░реНрдорд┐рдирд▓ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЖрдк рдЗрд╕ рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рджреЛ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдЗрдирдкреБрдЯ рдХрдорд╛рдВрдб рдХреЗ рддреАрди рджрд░реНрдЬрди рд╕реЗ рдЕрдзрд┐рдХ рд╡рд░реНрдгреЛрдВ рдХреЗ рдЗрдирдкреБрдЯ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЗрд░рд╛рджрд╛ рд╣реИ
╨Т ~/.bash_profile
рдЖрдк рдХрд┐рд╕реА рднреА рдмрд╛рд░-рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рдЙрдкрдирд╛рдо рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
тЦНрдкрд░рд┐рдгрд╛рдо
рдЗрд╕ рдкреЛрд╕реНрдЯ рдореЗрдВ, рд╣рдордиреЗ 21 рд▓реЛрдХрдкреНрд░рд┐рдп рдмреИрд╢ рдХрдорд╛рдВрдб рдХреЛ рдХрд╡рд░ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдХрдорд╛рдВрдб рдЙрдкрдирд╛рдо рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ -
рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рдХреНрдпрд╛ рдЖрдк рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рдХреМрди рд╕реЗ рдХрдорд╛рдВрдб рдЙрди рдХрдорд╛рдВрдбреЛрдВ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВрдЧреЗ рдЬрд┐рди рдкрд░ рдЗрд╕ рдЖрд▓реЗрдЦ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдереА?
рд╕реНрд░реЛрдд: www.habr.com