рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рднрд╛рдЧ 2: рд▓реВрдкреНрд╕
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рднрд╛рдЧ 3: рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╡рд┐рдХрд▓реНрдк рдФрд░ рд╕реНрд╡рд┐рдЪ
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рднрд╛рдЧ 4: рдЗрдирдкреБрдЯ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рднрд╛рдЧ 5: рд╕рд┐рдЧреНрдирд▓, рдкреГрд╖реНрдарднреВрдорд┐ рдХрд╛рд░реНрдп, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рдмрдВрдзрди
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕, рднрд╛рдЧ 6: рдлрд╝рдВрдХреНрд╢рдВрд╕ рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕, рднрд╛рдЧ 7: рд╕реЗрдб рдФрд░ рд╡рд░реНрдб рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рднрд╛рдЧ 8: awk рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рднрд╛рд╖рд╛
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рднрд╛рдЧ 9: рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рднрд╛рдЧ 10: рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЙрджрд╛рд╣рд░рдг
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рднрд╛рдЧ 11: рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рди

рдЖрдЬ рд╣рдо рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред рдпрд╣ - рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдмреИрд╢ рд╢реЗрд▓ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред zsh, tcsh, ksh рдЬреИрд╕реЗ рдЕрдиреНрдп рд╢реЗрд▓ рднреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдмреИрд╢ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВрдЧреЗред рдпрд╣ рд╕рд╛рдордЧреНрд░реА рд╕рднреА рдХреЗ рд▓рд┐рдП рд╣реИ, рдПрдХрдорд╛рддреНрд░ рд╢рд░реНрдд рдЗрд╕рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд▓рд┐рдирдХреНрд╕ред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд

рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрдиреНрд╣реАрдВ рдХрдорд╛рдВрдбреЛрдВ рдХрд╛ рд╕рдВрдЧреНрд░рд╣ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдХреАрдмреЛрд░реНрдб рд╕реЗ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рдПрдХрдЬреБрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЯреАрдореЛрдВ рдХреЗ рдХрд╛рдо рдХреЗ рдкрд░рд┐рдгрд╛рдо рдпрд╛ рддреЛ рд╕реНрд╡рддрдВрддреНрд░ рдореВрд▓реНрдп рдХреЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЕрдиреНрдп рдЯреАрдореЛрдВ рдХреЗ рд▓рд┐рдП рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрд╛рд░-рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рддрд░реАрдХрд╛ рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд

рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рд╣рдо рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЖрдкрдХреЛ рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЧрдП рджрд░реНрдЬ рдХрд░рдХреЗ рдПрдХ рд╕рд╛рде рдХрдИ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ:

pwd ; whoami

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ рдЕрдкрдиреЗ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЖрдЬрд╝рдорд╛рдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреА рдкрд╣рд▓реА рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬрд┐рд╕рдореЗрдВ рджреЛ рдХрдорд╛рдВрдб рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдкрд╣рд▓реЗ рд╣реА рд▓рд┐рдЦреА рдЬрд╛ рдЪреБрдХреА рд╣реИред рдпрд╣ рдЗрд╕ рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЯреАрдо рдкрд╣рд▓реЗ pwd рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛, рдлрд┐рд░ рдХрдорд╛рдВрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ whoamiрдЬрд┐рд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдк рд▓реЙрдЧ рдЗрди рд╣реИрдВ рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджрд┐рдЦрд╛рддрд╛ рд╣реИред

рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЬрд┐рддрдиреА рдЪрд╛рд╣реЗрдВ рдЙрддрдиреА рдХрдорд╛рдВрдб рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХрдорд╛рддреНрд░ рд╕реАрдорд╛ рддрд░реНрдХреЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЖрдк рдирд┐рдореНрди рдЖрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рд╕реАрдорд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

getconf ARG_MAX

рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдПрдХ рдмреЗрд╣рддрд░реАрди рдЯреВрд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рд╣рд░ рдмрд╛рд░ рдЬрд░реВрд░рдд рдкрдбрд╝рдиреЗ рдкрд░ рдЗрд╕рдореЗрдВ рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╣рдордиреЗ рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд▓рд┐рдЦрд╛ рд╣реЛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╕ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рд╣реЛ? рджрд░рдЕрд╕рд▓, рд╣рдо рдЬрд┐рд╕ рдлрд╛рдЗрд▓ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЙрд╕реЗ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ

рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЦрд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ touch. рдЗрд╕рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ рдпрд╣ рдмрддрд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рд╣рдо рдХрд┐рд╕ рд╢реЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рд╣рдо рдЗрд╕рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ bash, рддреЛ рдлрд╝рд╛рдЗрд▓ рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рд╣реЛрдЧреА:

#!/bin/bash

рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреА рдЕрдиреНрдп рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдЙрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрд╢ рдкреНрд░рддреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╢реЗрд▓ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рд╣реИ, рдЗрд╕рдореЗрдВ рдПрдХ рд╡рд┐рд╕реНрдордпрд╛рджрд┐рдмреЛрдзрдХ рдЪрд┐рд╣реНрди рдХреЗ рдмрд╛рдж рдПрдХ рд╣реИрд╢ рд╣реЛрддрд╛ рд╣реИ (рдЗрд╕ рдХреНрд░рдо рдХреЛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ) рдХреБрдЯрд┐рдпрд╛) рдФрд░ рдкрде bash, рдЙрд╕ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрдирд╛рдИ рдЧрдИ рдереА bash.

рд╢реЗрд▓ рдХрдорд╛рдВрдб рдХреЛ рдПрдХ рд▓рд╛рдЗрди рдлрд╝реАрдб рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╣реИрд╢ рдЪрд┐рд╣реНрди рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╣реИ рдЬреЛ рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИ:

#!/bin/bash
# This is a comment
pwd
whoami

рдпрд╣рд╛рдВ, рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреА рддрд░рд╣, рдЖрдк рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рд╕реЗ рдЕрд▓рдЧ рд╣реЛрдХрд░ рдПрдХ рд▓рд╛рдЗрди рдкрд░ рдХрдорд╛рдВрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдкрд░ рдХрдорд╛рдВрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╢реЗрд▓ рдЙрдиреНрд╣реЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдЧрд╛ред

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╕реЗрдЯ рдХрд░рдирд╛

рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рдирд╛рдо рджреЗрдХрд░ рд╕рд╣реЗрдЬреЗрдВ myscript, рдФрд░ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдХрд╛ рдХрд╛рдо рд▓рдЧрднрдЧ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ рд╣реИред рдЕрдм рдмрд╕ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдирд╛ рдмрд╛рдХреА рд╣реИ, рдЕрдиреНрдпрдерд╛, рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВрдЧреЗ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝реЗрдЧрд╛ Permission denied.

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреА рдЧрдИ рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ

рдЖрдЗрдП рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдПрдВ:

chmod +x ./myscript

рдЖрдЗрдП рдЕрдм рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:

./myscript

рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕рдм рдХреБрдЫ рд╡реИрд╕реЗ рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдЙрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЪрд▓ рд░рд╣реА рд╣реИ

рд╕рдВрджреЗрд╢ рдЖрдЙрдЯрдкреБрдЯ

рд▓рд┐рдирдХреНрд╕ рдХрдВрд╕реЛрд▓ рдкрд░ рдЯреЗрдХреНрд╕реНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ echo. рдЖрдЗрдП рдЗрд╕ рддрдереНрдп рдХреЗ рдЬреНрдЮрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ, рдЗрд╕рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рдЖрдЙрдЯрдкреБрдЯ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдореЗрдВ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдЬреЛрдбрд╝реЗрдВ:

#!/bin/bash
# our comment is here
echo "The current directory is:"
pwd
echo "The user logged in is:"
whoami

рдЕрджреНрдпрддрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╣реА рд╣реЛрддрд╛ рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдХрд┐рд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рд╕рдВрджреЗрд╢ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдирд╛

рдЕрдм рд╣рдо рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡реНрдпрд╛рдЦреНрдпрд╛рддреНрдордХ рдиреЛрдЯреНрд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ echo. рдпрджрд┐ рдЖрдк рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ Linux рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХреИрд╕реЗ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рдпрд╛ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рдХрдорд╛рдВрдб рдирд╣реАрдВ рджреЗрдЦреА рд╣реИ echo, рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ рдпрд╣ рд╕рд╛рдордЧреНрд░реАред

рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

рд╡реЗрд░рд┐рдПрдмрд▓ рдЖрдкрдХреЛ рдЕрдиреНрдп рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрдорд╛рдВрдб рдХреЗ рдкрд░рд┐рдгрд╛рдоред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЖрджреЗрд╢реЛрдВ рдХреЛ рдЙрдирдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдмрд┐рдирд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХреБрдЫ рднреА рдЧрд▓рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЕрдкрдиреА рдХреНрд╖рдорддрд╛рдУрдВ рдореЗрдВ рдХрд╛рдлреА рд╕реАрдорд┐рдд рд╣реИред

рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡реЗрд░рд┐рдПрдмрд▓ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

  • рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░
  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░

рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░

рдХрднреА-рдХрднреА рд╢реЗрд▓ рдХрдорд╛рдВрдб рдХреЛ рдХреБрдЫ рд╕рд┐рд╕реНрдЯрдо рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рд╣реЛрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдХреИрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдЗрд╕рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

#!/bin/bash
# display user home
echo "Home for the current user is: $HOME"

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╣рдо рдПрдХ рд╕рд┐рд╕реНрдЯрдо рд╡реЗрд░рд┐рдПрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ $HOME рджреЛрд╣рд░реЗ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдореЗрдВ, рдпрд╣ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЗрд╕реЗ рдкрд╣рдЪрд╛рдирдиреЗ рд╕реЗ рдирд╣реАрдВ рд░реЛрдХреЗрдЧрд╛ред рдпрджрд┐ рдЖрдк рдЙрдкрд░реЛрдХреНрдд рдкрд░рд┐рджреГрд╢реНрдп рдЪрд▓рд╛рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдпрд╣реА рдорд┐рд▓рддрд╛ рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдХрд┐рд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

рдпрджрд┐ рдЖрдкрдХреЛ рд╕реНрдХреНрд░реАрди рдкрд░ рдбреЙрд▓рд░ рдЪрд┐рд╣реНрди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рдЪрд▓реЛ рдпрд╣ рдХрд░рдХреЗ рджреЗрдЦреЗрдВ:

echo "I have $1 in my pocket"

рд╕рд┐рд╕реНрдЯрдо рдЙрджреНрдзреГрдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдПрдХ рдбреЙрд▓рд░ рдЪрд┐рд╣реНрди рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдЧрд╛ рдФрд░ рдорд╛рди рд▓реЗрдЧрд╛ рдХрд┐ рд╣рдордиреЗ рдПрдХ рдЪрд░ рдХрд╛ рд╕рдВрджрд░реНрдн рджрд┐рдпрд╛ рд╣реИред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдЪрд░ рдХрд╛ рдорд╛рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧреА $1. рдпрд╣ рд╡рд╣ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХреНрдпрд╛ рдХрд░реЗрдВ?

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдбреЙрд▓рд░ рдЪрд┐рд╣реНрди рд╕реЗ рдкрд╣рд▓реЗ рдПрд╕реНрдХреЗрдк рдХреИрд░реЗрдХреНрдЯрд░, рдмреИрдХрд╕реНрд▓реИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреА:

echo "I have $1 in my pocket"

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдм рд╡рд╣реА рдЖрдЙрдЯрдкреБрдЯ рджреЗрдЧреА рдЬреЛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдбреЙрд▓рд░ рдЪрд┐рд╣реНрди рдореБрджреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрд╕реНрдХреЗрдк рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░

рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдкрдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЪрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдРрд╕реЗ рд╡реЗрд░рд┐рдПрдмрд▓ рдХрд╛ рддрдм рддрдХ рдорд╛рди рд░рд╣рддрд╛ рд╣реИ рдЬрдм рддрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рдкреВрд░рд╛ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ред

рд╕рд┐рд╕реНрдЯрдо рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреА рддрд░рд╣, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЛ рдбреЙрд▓рд░ рдЪрд┐рд╣реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
TNW-CUS-FMP - рд╣рдорд╛рд░реА рд╕реЗрд╡рд╛рдУрдВ рдкрд░ 10% рдЫреВрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдореЛ рдХреЛрдб, 7 рджрд┐рдиреЛрдВ рдХреЗ рднреАрддрд░ рд╕рдХреНрд░рд┐рдпрдг рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИ

#!/bin/bash
# testing variables
grade=5
person="Adam"
echo "$person is a good boy, he is in grade $grade"

рдРрд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╣реА рд╣реЛрддрд╛ рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХрд╕реНрдЯрдо рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕

рдЖрджреЗрд╢ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрдорд╛рдВрдб рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓рдиреЗ рдФрд░ рдЗрд╕реЗ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрд╣реАрдВ рднреА рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕реЗ рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

  • рдмреИрдХрдЯрд┐рдХ "`" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
  • рдбрд┐рдЬрд╛рдЗрди рджреНрд╡рд╛рд░рд╛ $()

рдкрд╣рд▓реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВ рдХрд┐ рдмреИрдХрдЯрд┐рдХ рдХреЗ рд╕реНрдерд╛рди рдкрд░ рдПрдХ рднреА рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрди рд╢рд╛рдорд┐рд▓ рди рдХрд░реЗрдВред рдХрдорд╛рдВрдб рдХреЛ рдРрд╕реЗ рджреЛ рдЖрдЗрдХрди рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:

mydir=`pwd`

рджреВрд╕рд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рднреА рдпрд╣реА рдмрд╛рдд рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд▓рд┐рдЦреА рдЧрдпреА рд╣реИ:

mydir=$(pwd)

рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддреА рд╣реИ:

#!/bin/bash
mydir=$(pwd)
echo $mydir

рдЗрд╕рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рджреМрд░рд╛рди, рдХрдорд╛рдВрдб рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ pwdрдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ mydir, рдЬрд┐рд╕рдХреА рд╕рд╛рдордЧреНрд░реА, рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ echo, рдХрдВрд╕реЛрд▓ рдкрд░ рдЬрд╛рдпреЗрдЧрд╛ред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛ рдХрд┐рд╕реА рдХрдорд╛рдВрдб рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрддреА рд╣реИ

рдЧрдгрд┐рддреАрдп рд╕рдВрдХреНрд░рд┐рдпрд╛рдПрдБ

рдХрд┐рд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЧрдгрд┐рддреАрдп рд╕рдВрдЪрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЬреИрд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ $((a+b)):

#!/bin/bash
var1=$(( 5 + 5 ))
echo $var1
var2=$(( $var1 * 2 ))
echo $var2

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЧрдгрд┐рддреАрдп рд╕рдВрдХреНрд░рд┐рдпрд╛рдПрдБ

рдпрджрд┐-рддрдм рдирд┐рдпрдВрддреНрд░рдг рдирд┐рд░реНрдорд╛рдг

рдХреБрдЫ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдореЗрдВ, рдЖрдкрдХреЛ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдХреЛрдИ рдирд┐рд╢реНрдЪрд┐рдд рдорд╛рди рдкрд╛рдБрдЪ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛, рджреВрд╕рд░реАред рдпрд╣ рдХрдИ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдпрд╣рд╛рдВ рдирд┐рдпрдВрддреНрд░рдг рд╕рдВрд░рдЪрдирд╛ рд╣рдорд╛рд░реА рдорджрдж рдХрд░реЗрдЧреА if-then. рдЕрдкрдиреЗ рд╕рд░рд▓рддрдо рд░реВрдк рдореЗрдВ рдпрд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рджрд┐рдЦрддрд╛ рд╣реИ:

if ╨║╨╛╨╝╨░╨╜╨┤╨░
then
╨║╨╛╨╝╨░╨╜╨┤╤Л
fi

рдпрд╣рд╛рдВ рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

#!/bin/bash
if pwd
then
echo "It works"
fi

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдпрджрд┐ рдЖрджреЗрд╢ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ pwdрд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдХрдВрд╕реЛрд▓ рдореЗрдВ "рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ" рдЯреЗрдХреНрд╕реНрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрдЧрд╛ред

рдЖрдЗрдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдореМрдЬреВрдж рдЬреНрдЮрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдПрдХ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреЗрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдореЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдвреВрдВрдврдирд╛ рд╣реИ /etc/passwd, рдФрд░ рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдвреВрдВрдврдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реЗ, рддреЛ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рдореМрдЬреВрдж рд╣реИред

#!/bin/bash
user=likegeeks
if grep $user /etc/passwd
then
echo "The user $user Exists"
fi

рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╣реА рд╣реЛрддрд╛ рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдареАрдХ рд╣реИ

рдпрд╣рд╛рдВ рд╣рдордиреЗ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ grepрдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП /etc/passwd. рдпрджрд┐ рдЯреАрдо grepрдЖрдкрдХреЗ рд▓рд┐рдП рдЕрдкрд░рд┐рдЪрд┐рдд, рдЗрд╕рдХрд╛ рд╡рд┐рд╡рд░рдг рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрд╣рд╛рдВ.

рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧреАред рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрд╛ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣рдореЗрдВ рдХреБрдЫ рднреА рдмрддрд╛рдП рдмрд┐рдирд╛ рд╣реА рдирд┐рд╖реНрдкрд╛рджрди рдкреВрд░рд╛ рдХрд░ рджреЗрдЧреАред рд╣рдо рдЪрд╛рд╣реЗрдВрдЧреЗ рдХрд┐ рд╡рд╣ рд╣рдореЗрдВ рднреА рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдПрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдХреЛрдб рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░реЗрдВрдЧреЗред

рдпрджрд┐-рддрдм-рдЕрдиреНрдпрдерд╛ рдирд┐рдпрдВрддреНрд░рдг рдирд┐рд░реНрдорд╛рдг

рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд╕рдлрд▓ рдЦреЛрдЬ рдФрд░ рд╡рд┐рдлрд▓рддрд╛ рджреЛрдиреЛрдВ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ if-then-else. рдпрд╣ рдРрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

if ╨║╨╛╨╝╨░╨╜╨┤╨░
then
╨║╨╛╨╝╨░╨╜╨┤╤Л
else
╨║╨╛╨╝╨░╨╜╨┤╤Л
fi

рдпрджрд┐ рдкрд╣рд▓рд╛ рдХрдорд╛рдВрдб рд╢реВрдиреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЗрд╕реЗ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рд╕реНрдерд┐рддрд┐ рд╕рддреНрдп рд╣реЛрдЧреА рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝реЗрдЧрд╛ else. рдЕрдиреНрдпрдерд╛, рдпрджрд┐ рд╢реВрдиреНрдп рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдФрд░ рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рдлрд▓рддрд╛, рдпрд╛ рдЧрд▓рдд рдкрд░рд┐рдгрд╛рдо рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрдЧрд╛, рддреЛ рдЗрд╕рдХреЗ рдмрд╛рдж рдЖрджреЗрд╢ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ else.

рдЖрдЗрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреЗрдВ:

#!/bin/bash
user=anotherUser
if grep $user /etc/passwd
then
echo "The user $user Exists"
else
echo "The user $user doesnтАЩt exist"
fi

рдЙрд╕рдХреА рдлрд╛рдВрд╕реА рдмреЗрдХрд╛рд░ рдЪрд▓реА рдЧрдпреА else.

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдпрджрд┐-рддрдм-рдЕрдиреНрдпрдерд╛ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдирд╛

рдЦреИрд░, рдЖрдЗрдП рдЖрдЧреЗ рдмрдврд╝реЗрдВ рдФрд░ рдЦреБрдж рд╕реЗ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫреЗрдВред рдпрджрд┐ рдЖрдкрдХреЛ рдПрдХ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдХрдИ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрджрд┐ рдХреЛрдИ рдЕрдиреНрдп рд╢рд░реНрдд рдкреВрд░реА рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рджреВрд╕рд░рд╛ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрддреНрдпрд╛рджрд┐ред рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдиреЗрд╕реНрдЯреЗрдб рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рд╣рдорд╛рд░реА рдорджрдж рдХрд░реЗрдВрдЧреАред рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ:

if ╨║╨╛╨╝╨░╨╜╨┤╨░1
then
╨║╨╛╨╝╨░╨╜╨┤╤Л
elif ╨║╨╛╨╝╨░╨╜╨┤╨░2
then
╨║╨╛╨╝╨░╨╜╨┤╤Л
fi

рдпрджрд┐ рдкрд╣рд▓рд╛ рдХрдорд╛рдВрдб рд╢реВрдиреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕рдХреЗ рд╕рдлрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рддреЛ рдкрд╣рд▓реЗ рдмреНрд▓реЙрдХ рдореЗрдВ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ then, рдЕрдиреНрдпрдерд╛, рдпрджрд┐ рдкрд╣рд▓реА рд╢рд░реНрдд рдЧрд▓рдд рд╣реИ рдФрд░ рдпрджрд┐ рджреВрд╕рд░рд╛ рдХрдорд╛рдВрдб рд╢реВрдиреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рддреЛ рдХреЛрдб рдХрд╛ рджреВрд╕рд░рд╛ рдмреНрд▓реЙрдХ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

#!/bin/bash
user=anotherUser
if grep $user /etc/passwd
then
echo "The user $user Exists"
elif ls /home
then
echo "The user doesnтАЩt exist but anyway there is a directory under /home"
fi

рдРрд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдирдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ useradd, рдпрджрд┐ рдЦреЛрдЬ рд╕реЗ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рдорд┐рд▓реЗ, рдпрд╛ рдХреБрдЫ рдФрд░ рдЙрдкрдпреЛрдЧреА рдХрд░реЗрдВред

рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЖрдк рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рдиреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдиреАрдЪреЗ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдЖрджреЗрд╢реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИред

n1 -eq n2рдпрджрд┐ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ n1 рд╣реИ n2.
n1 -ge n2 рдпрджрд┐ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ n1рдЕрдзрд┐рдХ рдпрд╛ рдмрд░рд╛рдмрд░ n2.
n1 -gt n2рдпрджрд┐ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ n1 рдмреЗрд╣рддрд░ n2.
n1 -le n2рдпрджрд┐ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ n1рдХрдо рдпрд╛ рдмрд░рд╛рдмрд░ n2.
n1 -lt n2рдпрджрд┐ n1 рд╕реЗ рдХрдо рд╣реИ рддреЛ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ n2.
n1 -ne n2рдпрджрд┐ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ n1рдирд╣реАрдВ рдХреЗ рдмрд░рд╛рдмрд░ n2.

рдЙрджрд╛рд╣рд░рдг рдХреЗ рддреМрд░ рдкрд░, рдЖрдЗрдП рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдЖрдЬрд╝рдорд╛рдПрдБред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реИред

#!/bin/bash
val1=6
if [ $val1 -gt 5 ]
then
echo "The test value $val1 is greater than 5"
else
echo "The test value $val1 is not greater than 5"
fi

рдпрд╣ рдХрдорд╛рдВрдб рдпрд╣реА рдЖрдЙрдЯрдкреБрдЯ рджреЗрдЧрд╛.

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рд▓рд┐рдкрд┐рдпреЛрдВ рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛

рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдорд╛рди val15 рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдиреЗ рдкрд░ рд╢рд╛рдЦрд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛ рдЬрд╛рддреА рд╣реИ thenрддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрджреЗрд╢ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИред

рд╕реНрдЯреНрд░рд┐рдВрдЧ рддреБрд▓рдирд╛

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдорд╛рдиреЛрдВ рдХреА рддреБрд▓рдирд╛ рднреА рдХрд░ рд╕рдХрддреА рд╣реИрдВред рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░ рдХрд╛рдлреА рд╕рд░рд▓ рджрд┐рдЦрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реНрдЯреНрд░рд┐рдВрдЧ рддреБрд▓рдирд╛ рдСрдкрд░реЗрд╢рди рдореЗрдВ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВ, рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рдиреАрдЪреЗ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред рдпрд╣рд╛рдВ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ.

str1 = str2 рд╕рдорд╛рдирддрд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рдорд╛рди рд╣реИрдВ рддреЛ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИред
str1 != str2рдпрджрд┐ рддрд╛рд░ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИрдВ рддреЛ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИред
str1 < str2рдпрджрд┐ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ str1рд╕реЗ рдХрдо str2.
str1 > str2 рдпрджрд┐ рд╕рддреНрдп рд▓реМрдЯрд╛рддрд╛ рд╣реИ str1рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ str2.
-n str1 рд▓рдВрдмрд╛рдИ рд╣реЛрдиреЗ рдкрд░ рд╕рддреНрдп рд▓реМрдЯрддрд╛ рд╣реИ str1рд╢реВрдиреНрдп рдХреЗ рдКрдкрд░ред
-z str1рд▓рдВрдмрд╛рдИ рд╣реЛрдиреЗ рдкрд░ рд╕рддреНрдп рд▓реМрдЯрддрд╛ рд╣реИ str1рд╢реВрдиреНрдп рдХреЗ рдмрд░рд╛рдмрд░.

рдпрд╣рд╛рдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

#!/bin/bash
user ="likegeeks"
if [$user = $USER]
then
echo "The user $user  is the current logged in user"
fi

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд┐рд▓рддрд╛ рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛

рдпрд╣рд╛рдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ рддреБрд▓рдирд╛ рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ рдЬреЛ рдЙрд▓реНрд▓реЗрдЦ рдХреЗ рд▓рд╛рдпрдХ рд╣реИред рдЕрд░реНрдерд╛рддреН, ">" рдФрд░ "<" рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рдмреИрдХрд╕реНрд▓реИрд╢ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдиреНрдпрдерд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧреА, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдЧрд╛ред рд╕реНрдХреНрд░рд┐рдкреНрдЯ ">" рдЪрд┐рд╣реНрди рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рд░реАрдбрд╛рдпрд░реЗрдХреНрд╢рди рдХрдорд╛рдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддреА рд╣реИред

рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЗрди рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдХреЛрдб рдореЗрдВ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ:

#!/bin/bash
val1=text
val2="another text"
if [ $val1 > $val2 ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi

рдпрд╣рд╛рдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╣реИрдВ.

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рд╕реНрдЯреНрд░рд┐рдВрдЧ рддреБрд▓рдирд╛, рдЪреЗрддрд╛рд╡рдиреА рджреА рдЧрдИ

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдЬрд╛рд░реА рдХрд░рддреА рд╣реИ:

./myscript: line 5: [: too many arguments

рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВ $val2 рджреЛрд╣рд░реЗ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдореЗрдВ:

#!/bin/bash
val1=text
val2="another text"
if [ $val1 > "$val2" ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi

рдЕрдм рд╕рдм рдХреБрдЫ рд╡реИрд╕рд╛ рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдЙрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рд╕реНрдЯреНрд░рд┐рдВрдЧ рддреБрд▓рдирд╛

">" рдФрд░ "<" рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреА рдПрдХ рдЕрдиреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рдЕрдкрд░рдХреЗрд╕ рдФрд░ рд▓реЛрдЕрд░рдХреЗрд╕ рд╡рд░реНрдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рддреИрдпрд╛рд░ рдХрд░реЗрдВ:

Likegeeks
likegeeks

рдЖрдЗрдП рдЗрд╕реЗ рдПрдХ рдирд╛рдо рджреЗрдХрд░ рд╕рд╣реЗрдЬреЗрдВ myfile, рдлрд┐рд░ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдирд┐рдореНрди рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:

sort myfile

рдпрд╣ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреНрд░рдорд┐рдд рдХрд░реЗрдЧрд╛:

likegeeks
Likegeeks

рдЯреАрдо sort, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдЖрд░реЛрд╣реА рдХреНрд░рдо рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд, рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЫреЛрдЯрд╛ рдЕрдХреНрд╖рд░ рдмрдбрд╝реЗ рдЕрдХреНрд╖рд░ рд╕реЗ рдЫреЛрдЯрд╛ рд╣реИред рдЕрдм рдЖрдЗрдП рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рддреИрдпрд╛рд░ рдХрд░реЗрдВ рдЬреЛ рд╕рдорд╛рди рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдЧреА:

#!/bin/bash
val1=Likegeeks
val2=likegeeks
if [ $val1 > $val2 ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi

рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдЙрд▓реНрдЯрд╛ рд╣реИ - рдирд┐рдЪрд▓рд╛ рдЕрдХреНрд╖рд░ рдЕрдм рдмрдбрд╝реЗ рдЕрдХреНрд╖рд░ рд╕реЗ рдмрдбрд╝рд╛ рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реЙрд░реНрдЯ рдХрдорд╛рдВрдб рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рддреБрд▓рдирд╛

рддреБрд▓рдирд╛рддреНрдордХ рдЖрджреЗрд╢реЛрдВ рдореЗрдВ, рдЕрдкрд░рдХреЗрд╕ рдЕрдХреНрд╖рд░ рд▓реЛрдЕрд░рдХреЗрд╕ рдЕрдХреНрд╖рд░реЛрдВ рд╕реЗ рдЫреЛрдЯреЗ рд╣реЛрддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ рддреБрд▓рдирд╛ рд╡рд░реНрдгреЛрдВ рдХреЗ ASCII рдХреЛрдб рдХреА рддреБрд▓рдирд╛ рдХрд░рдХреЗ рдХреА рдЬрд╛рддреА рд╣реИ, рд╕реЙрд░реНрдЯ рдХреНрд░рдо рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╡рд░реНрдг рдХреЛрдб рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред

рдЯреАрдо sortрдмрджрд▓реЗ рдореЗрдВ, рд╕рд┐рд╕реНрдЯрдо рднрд╛рд╖рд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реЙрд░реНрдЯ рдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдлрд╝рд╛рдЗрд▓ рдЬрд╛рдБрдЪреЗрдВ

рд╢рд╛рдпрдж рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡реЗ рдЖрдкрдХреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд╢рд░реНрддреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рдЗрди рдЖрджреЗрд╢реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИред

-d fileрдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдФрд░ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИред
-e fileрдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВред
-f file рдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдФрд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╣реИред
-r fileрдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдФрд░ рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рд╣реИред
-s file ╨ЯрдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдЦрд╛рд▓реА рдирд╣реАрдВ рд╣реИред
-w fileрдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдФрд░ рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИред
-x fileрдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рд╣реИред
file1 -nt file2 рдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдирдпрд╛ рд╣реИ file1рд╕реЗ file2.
file1 -ot file2рдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдкреБрд░рд╛рдирд╛ рд╣реИ file1рд╕реЗ file2.
-O file рдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдФрд░ рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕реНрд╡рд╛рдорд┐рддреНрд╡ рдореЗрдВ рд╣реИред
-G fileрдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВ рдФрд░ рдХреНрдпрд╛ рдЗрд╕рдХреА рд╕рдореВрд╣ рдЖрдИрдбреА рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рд╕рдореВрд╣ рдЖрдИрдбреА рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИред

рдЗрди рдЖрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЖрдЬ рдЪрд░реНрдЪрд╛ рдХрд┐рдП рдЧрдП рдХрдИ рдЕрдиреНрдп рдЖрджреЗрд╢реЛрдВ рдХреЛ рдпрд╛рдж рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИред рдЙрдирдХреЗ рдирд╛рдо, рд╡рд┐рднрд┐рдиреНрди рд╢рдмреНрджреЛрдВ рдХреЗ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг, рд╕реАрдзреЗ рддреМрд░ рдкрд░ рдЙрдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдЬрд╛рдВрдЪ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВред

рдЖрдЗрдП рдЕрднреНрдпрд╛рд╕ рдореЗрдВ рдХрд┐рд╕реА рдПрдХ рдЖрджреЗрд╢ рдХреЛ рдЖрдЬрд╝рдорд╛рдПрдБ:

#!/bin/bash
mydir=/home/likegeeks
if [ -d $mydir ]
then
echo "The $mydir directory exists"
cd $ mydir
ls
else
echo "The $mydir directory does not exist"
fi

рдореМрдЬреВрджрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧреАред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд
рдХрд┐рд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рд╕рд╛рдордЧреНрд░реА рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдирд╛

рд╣рдорд╛рд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЖрдк рд╢реЗрд╖ рдЖрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрд╡рдпрдВ рдкреНрд░рдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ; рд╡реЗ рд╕рднреА рдПрдХ рд╣реА рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдкрд░рд┐рдгрд╛рдо

рдЖрдЬ рд╣рдордиреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдХрд┐ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ рдФрд░ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдмрд╛рддреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреАред рджрд░рдЕрд╕рд▓, рдмреИрд╢ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рд╡рд┐рд╖рдп рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╣реИред рдпрд╣ рд▓реЗрдЦ 11 рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреА рдПрдХ рдмрдбрд╝реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдкрд╣рд▓реЗ рднрд╛рдЧ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рд╣реИред рдпрджрд┐ рдЖрдк рдЕрднреА рдЬрд╛рд░реА рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣рд╛рдВ рдЗрди рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рдореВрд▓ рдХреА рдПрдХ рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИред рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдЬрд┐рд╕рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдЖрдкрдиреЗ рдЕрднреА рдкрдврд╝рд╛ рд╡рд╣ рдпрд╣рд╛рдВ рд╢рд╛рдорд┐рд▓ рд╣реИред

  1. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд░рдг рджрд░ рдЪрд░рдг - рдпрд╣рд╛рдВ рд╣рдо рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдирд╛ рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ, рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рд╢рд░реНрдд рд╕рдВрд░рдЪрдирд╛рдПрдВ, рдЧрдгрдирд╛, рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛, рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
  2. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 2, рдЕрджреНрднреБрдд рдмреИрд╢ - рдпрд╣рд╛рдВ рдлреЙрд░ рдФрд░ рд╡реНрд╣рд╛рдЗрд▓ рд▓реВрдк рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╕рд╛рдордиреЗ рдЖрдИ рд╣реИрдВред
  3. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 3, рдкреИрд░рд╛рдореАрдЯрд░ рдФрд░ рд╡рд┐рдХрд▓реНрдк - рдпрд╣ рд╕рд╛рдордЧреНрд░реА рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдФрд░ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЬрд┐рд╕реЗ рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  4. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 4, рдЗрдирдкреБрдЯ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ - рдпрд╣рд╛рдВ рд╣рдо рдлрд╛рдЗрд▓ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдФрд░ рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ, рдЗрдирдкреБрдЯ, рдЖрдЙрдЯрдкреБрдЯ, рдПрд░рд░ рд╕реНрдЯреНрд░реАрдо рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рд░реАрдбрд╛рдпрд░реЗрдХреНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
  5. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 5, рд╕рд┐рдШрд▓ рдФрд░ рдиреМрдХрд░рд┐рдпрд╛рдВ - рдпрд╣ рд╕рд╛рдордЧреНрд░реА рд▓рд┐рдирдХреНрд╕ рд╕рд┐рдЧреНрдирд▓, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЙрдирдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдПрдХ рд╢реЗрдбреНрдпреВрд▓ рдкрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИред
  6. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 6, рдлрд╝рдВрдХреНрд╢рдВрд╕ - рдпрд╣рд╛рдВ рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рд╡рд┐рдХрд╛рд╕рд╢реАрд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реАрдЦ рд╕рдХрддреЗ рд╣реИрдВред
  7. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 7, рд╕реЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ - рдпрд╣ рд▓реЗрдЦ рд╕реЗрдб рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдЯреЗрдХреНрд╕реНрдЯ рдПрдбрд┐рдЯрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИред
  8. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 8, awk рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ - рдпрд╣ рд╕рд╛рдордЧреНрд░реА awk рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рднрд╛рд╖рд╛ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИред
  9. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 9, рд░реЗрдЧреБрд▓рд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди - рдпрд╣рд╛рдВ рдЖрдк рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд░реЗрдЧреБрд▓рд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред
  10. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 10, рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЙрджрд╛рд╣рд░рдг - рдпрд╣рд╛рдВ рдЙрди рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рддрдХрдиреАрдХреЗрдВ рджреА рдЧрдИ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдбрд┐рд╕реНрдХ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдХреА рдПрдХ рд╡рд┐рдзрд┐ рднреА рджреА рдЧрдИ рд╣реИред
  11. рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рдЧ 11, рдХрдорд╛рдВрдб рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реЗрдВ тАФ рдпрд╣ рд╕рд╛рдордЧреНрд░реА рдПрдХреНрд╕рдкреЗрдХреНрдЯ рдЯреВрд▓ рдХреЛ рд╕рдорд░реНрдкрд┐рдд рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╣рдо рдЕрдкреЗрдХреНрд╖рд┐рдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЕрдиреНрдп рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рд╕рд╛рде рдЙрдирдХреА рдмрд╛рддрдЪреАрдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рд╣рдорд╛рд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд▓реЗрдЦреЛрдВ рдХреА рдЗрд╕ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреА рдореВрд▓реНрдпрд╡рд╛рди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рд╣реИ рдХрд┐, рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░, рдХрд┐рд╕реА рднреА рд╕реНрддрд░ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд, рдпрд╣ рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╛рдлреА рдЧрдВрднреАрд░ рд╡рд┐рд╖рдпреЛрдВ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕рднреА рдХреЛ рд▓рд┐рдирдХреНрд╕ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рдореМрдХрд╛ рдорд┐рд▓рддрд╛ рд╣реИред .

рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рд╣рдо рдмреИрд╢ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЧреБрд░реБрдУрдВ рд╕реЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рдЕрдкрдиреА рдорд╣рд╛рд░рдд рдХреА рдКрдВрдЪрд╛рдЗрдпреЛрдВ рддрдХ рдХреИрд╕реЗ рдкрд╣реБрдВрдЪреЗ, рдЕрдкрдиреЗ рд░рд╣рд╕реНрдпреЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╣рдо рдЙрди рд▓реЛрдЧреЛрдВ рд╕реЗ рдЗрдВрдкреНрд░реЗрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЕрднреА-рдЕрднреА рдЕрдкрдиреА рдкрд╣рд▓реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреА рд╣реИред

рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ: рд╢реБрд░реБрдЖрдд

рдХреЗрд╡рд▓ рдкрдВрдЬреАрдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реА рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдореЗрдВ рднрд╛рдЧ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд╛рдЗрди рдЗрди рдХрд░реЗрдВрдХреГрдкрдпрд╛ред

рдХреНрдпрд╛ рдореБрдЭреЗ рд▓реЗрдЦреЛрдВ рдХреА рд╢реГрдВрдЦрд▓рд╛ рдХреЗ рдмрд╛рдХреА рд╣рд┐рд╕реНрд╕реЛрдВ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

  • рд╣рд╛рдБ!

  • рдирд╣реАрдВ, рдХреЛрдИ рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ

1030 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдиреЗ рдорддрджрд╛рди рдХрд┐рдпрд╛ред 106 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд░рд╣реЗред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ