рдмреИрд╢ рд╢реИрд▓ рдХрд╛ рдкрд░рд┐рдЪрдп

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

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



рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдореВрд▓ рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдордЭрдирд╛


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

рдЬрдЯрд┐рд▓ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдЖрдк рдореВрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ:

#!/bin/bash # # #This is a script that greets the world # Usage: ./hello clear echo hello world exit 0 

рдЗрд╕рдореЗрдВ рдХрдИ рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рднреА рд▓рд┐рдкрд┐рдпреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рд╢реЗрдмрдВрдЧ рд╣реИ - рдпрд╣ рд▓рд╛рдЗрди #! / рдмрд┐рди / рдмреИрд╢ рд╣реИред рдЬрдм рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдореВрд▓ рд╢реЗрд▓ рд╕реЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рд╕рдмрд╕реНрдХреНрд░рд┐рдкреНрд╢рди рдЦреЛрд▓рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

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

рдЕрдиреНрдп рдЧреЛрд▓реЗ рднреА рд╕рдВрдХреЗрдд рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдкрд░реНрд▓ рдХреЛрдб рд╣реИ, рддреЛ рд╢рдмрдВрдЧ # рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП! / Usr / bin / perlред рд╢реЗрдмрдВрдЧ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢реБрд░реВ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рд╣реИ; рдпрджрд┐ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдХреЛ рдЙрд╕реА рд╢реЗрд▓ рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

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

рдЖрдк рди рдХреЗрд╡рд▓ рдЙрдкрдЦрдВрдбреЛрдВ рдкрд░, рдмрд▓реНрдХрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрдВрдХреНрддрд┐рдпреЛрдВ рдкрд░ рднреА рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

рдЯрд┐рдкреНрдкрдгреА рдмреНрд▓реЙрдХ рдХреЗ рдмрд╛рдж, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмреЙрдбреА рд╕реНрдерд┐рдд рд╣реИред рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдпреЗ рдХрдИ рдХрдорд╛рдВрдб рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬреИрд╕реЗ рд╣реА рдпрд╣ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддрд╛ рд╣реИ рд╢реЗрд▓ рд▓рд┐рдкрд┐ рдХрд╛ рд╢рд░реАрд░ рдмрдврд╝ рд╕рдХрддрд╛ рд╣реИред

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

рдпрд╣ рдЬрд╛рдирдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИ рдХрд┐ рдЖрдк рдореВрд▓ рд╢реЗрд▓ рдХреЛ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЪреАрдЬреЗрдВ рдХреИрд╕реЗ рдЧрдИрдВред
рдкреИрд░реЗрдВрдЯ рд╢реЗрд▓ рдореЗрдВ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЧреВрдВрдЬ $? рдЖрдкрдХреЛ рдЕрдВрддрд┐рдо рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдирд┐рдХрд╛рд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрдо рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд░рди рдмрд┐рдЯ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рд╣реИрд▓реЛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП chmod + xред /Hello рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдмреИрд╢ рдХрдорд╛рдВрдб рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╣реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП bash ./hello рджрд░реНрдЬ рдХрд░реЗрдВред рдпрджрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ bash рдХрдорд╛рдВрдб рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд╣реАрдВ рднреА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ $ PATH рдЪрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд╛рдо рдХреЗ рд╕рд╛рдордиреЗ / ./ рдХреЗ рд╕рд╛рде рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдЯрд╛рдЗрдк рдХрд░реЗрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ рдЗрд╕реЗ $ PATH рдЪрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдорд╛рдирдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд░рдЦреЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, / usr / рд╕реНрдерд╛рдиреАрдп / рдмрд┐рдиред

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

рдЙрджрд╛рд╣рд░рдг

Vi / bin / datetime рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ , / bin рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛рдЗрдо рдирд╛рдо рдХреА рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВред рдЗрд╕ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдмрдирд╛рдИ рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЪрд┐рдкрдХрд╛рдПрдБ:

 #!/bin/bash #    .     ,      date who 

рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рдмрд╛рдж, рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП chmod + x / bin / datetime рджрд░реНрдЬ рдХрд░реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реАрдбреА ~ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рд╣реЛрдо рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░реЗрдВ рдФрд░ рдмрд╕ рдбреЗрдЯрд╛рдЗрдо рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдВред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, cd ~ рд╣реЛрдо рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдЬрд╛рдПрдВ рдФрд░ рдбреЗрдЯрдЯрд╛рдЗрдо рдкреНрд░рд╡рд┐рд╖реНрдЯ рдХрд░реЗрдВред

 [root@localhost ~]# datetime Sat Sep 28 00:33:41 EDT 2019 root tty1 2019-09-25 20:28 root pts/0 2019-09-27 20:07 (comp.corp.domain.ru) 

рдЪрд░ рдФрд░ рдЗрдирдкреБрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


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

рд╕реНрдерд┐рддрд┐рдЧрдд рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


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

рдЗрд╕ рддрд░рд╣ рдХреЗ рдЖрджреЗрд╢ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд▓рд┐рд╕рд╛ рдирд╛рдо рдХрд╛ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рдкрд╣рд▓рд╛ рддрд░реНрдХ $ 1 рд╣реИ , рджреВрд╕рд░рд╛ рддрд░реНрдХ $ 2 рд╣реИ, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рд╕реВрдЪреА 1 рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рддрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЛ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдЗрд╕ рдХреЛрдб рдХреЛ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред

рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 1

 #!/bin/bash # run this script with a few arguments echo The first argument is $1 echo The second argument is $2 echo The third argument is $3 

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

 [root@server1 ~]# ./argument lisa lori bob The first argument is lisa The second argument is lori The third argument is bob [root@server1 ~]# 

рдпрджрд┐ рдЖрдкрдиреЗ рдирдореВрдирд╛ рдХреЛрдб рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рддреЛ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рд╕рд╣реА рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдк рд▓рд┐рд╕реНрдЯ 1 рд╕реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп рддреАрди рддрд░реНрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рджреЛ рддрд░реНрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рддреАрд╕рд░рд╛ рдЖрдЙрдЯрдкреБрдЯ рдореВрд▓реНрдп $ 3 рдХреЗ рдмрд┐рдирд╛ рд╣реИред

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

рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 2

 #!/bin/bash # run this script with a few arguments echo you have entered $# arguments for i in $@ do echo $i done exit 0 

2 рд╕реВрдЪреА рджреЛ рдирдП рддрддреНрд╡реЛрдВ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдЬреЛ рддрд░реНрдХреЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ:

  • $ # рдПрдХ рдРрд╕рд╛ рдХрд╛рдЙрдВрдЯрд░ рд╣реИ рдЬреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рддреЗ рд╕рдордп рдХрд┐рддрдиреЗ рддрд░реНрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
  • $ @, рдЙрди рд╕рднреА рддрд░реНрдХреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ рдЬреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдереЗред

рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рддрд░реНрдХреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЫреЛрд░реЛрдВ рдХреЗ рд▓рд┐рдП, рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рддрдм рддрдХ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рд╕реНрдерд┐рддрд┐ рд╕рд╣реА рди рд╣реЛред рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ, i рдореЗрдВ $ @ рдХрд╛ рдЕрд░реНрде "рдкреНрд░рддреНрдпреЗрдХ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП" рд╣реИред рдЬрдм рднреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реВрдк рд╕реЗ рдЧреБрдЬрд░рддреА рд╣реИ, рдЪрд░ $ @ рд╕реЗ рдорд╛рди рдХреЛ рдЪрд░ $ i рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рдЬрдм рддрдХ рддрд░реНрдХ рд╣реИрдВ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╢рд░реАрд░ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рдЖрдЗрдП рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 2 рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:

  1. рдЯрд╛рдЗрдк рд╡реА рддрд░реНрдХ рддрд░реНрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдХреЙрдкреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 2 рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд░реЗрдВред
  2. рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд╣реЗрдЬреЗрдВ рдФрд░ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдПрдВред
  3. рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдВ ред/argument abc ред рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рддреАрди рд▓рд╛рдЗрдиреЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реИрдВред
  4. рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ ред/argument abcdef ред рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдПрдмреАрд╕реА рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдбреА рдПрдл рднреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЪрд░


рдПрдХ рдЪрд░ рдПрдХ рд▓реЗрдмрд▓ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрдореГрддрд┐ рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдерд╛рди рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореВрд▓реНрдп рд╣реЛрддрд╛ рд╣реИред рд╡реИрд░рд┐рдПрдмрд▓ рдХреЛ NAME = рдорд╛рди рдпрд╛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдЪрд░ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рджреЛ рдЙрдкрд╛рдп рд╣реИрдВ:

  • рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рдбреЗрдЯрд╛ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд░реАрдб рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
  • рдХрдорд╛рдВрдб рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдПрдХ рдЪрд░ рдореЗрдВ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрдорд╛рдВрдб рджрд┐рдирд╛рдВрдХ +% d-% m-% y рдкреНрд░рд╛рд░реВрдк рджрд┐рди-рдорд╛рд╣-рд╡рд░реНрд╖ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рджрд┐рдирд╛рдВрдХ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк TODAY = $ (рджрд┐рдирд╛рдВрдХ +% d-% m-% y) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрджреЗрд╢реЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдмрд╕ рдЙрд╕ рдХрдорд╛рдВрдб рдХреЛ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЖрдк рдХреЛрд╖реНрдардХ рдХреЗ рдмреАрдЪ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

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

рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 3. рд░реАрдб рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирдореВрдирд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ

 #!/bin/bash if [ -z $1 ]; then echo enter a text read TEXT else TEXT=$1 fi echo you have entered the text $TEXT exit 0 

рд▓рд┐рд╕реНрдЯ 3 рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рдпрджрд┐ ... рддреЛ ... рдФрд░ ... рдлрд╛рдИ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ $ 1 рддрд░реНрдХ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдкрд░реАрдХреНрд╖рдг (рдкрд░реАрдХреНрд╖рдг рдПрдХ рдЕрд▓рдЧ рдХрдорд╛рдВрдб рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЯреЗрд╕реНрдЯ рдХрдорд╛рдВрдб рдХреЛ рджреЛ рддрд░рд╣ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ *: рдЯреЗрд╕реНрдЯ рдпрд╛ [тАж] ред рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдпрджрд┐ рд▓рд╛рдЗрди [-z $ 1] ... рдкрд░реАрдХреНрд╖рдг (рдЪреЗрдХ) -z $ 1 рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред

* - рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рддреАрди рд╕реНрд░реЛрдд (рд▓рдЧрднрдЧред рдЕрдиреБрд╡рд╛рджрдХ)

-z рдкрд░реАрдХреНрд╖рдг рдХреА рдЬрд╛рдБрдЪ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ $ 1 рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдпрджрд┐ рд▓рд╛рдЗрди [-z $ 1] рдЕрдЧрд░ рдЪреЗрдХ 1 $ рдЦрд╛рд▓реА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рдХреЛрдИ рддрд░реНрдХ рдирд╣реАрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рддрддреНрдХрд╛рд▓реАрди рд╡рд┐рд╡рд░рдг рдХреЗ рдмрд╛рдж рдЖрджреЗрд╢ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╡рд░реНрдЧ рдХреЛрд╖реНрдардХ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрдорд╛рдВрдб рд▓рд┐рдЦрддреЗ рд╕рдордп, рдЙрджреНрдШрд╛рдЯрди рдмреНрд░реИрдХреЗрдЯ рдХреЗ рдмрд╛рдж рдФрд░ рд╕рдорд╛рдкрди рдмреНрд░реИрдХреЗрдЯ рд╕реЗ рдкрд╣рд▓реЗ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдмрд┐рдирд╛ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рдХрдорд╛рдВрдб рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рддрддреНрдХрд╛рд▓реАрди рдХрдерди рддреБрд░рдВрдд рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИ ред рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо (;) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рдПрдХ рдХрдорд╛рдВрдб рд╡рд┐рднрд╛рдЬрдХ рд╣реИ рдФрд░ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдПрдХ рдирдИ рдкрдВрдХреНрддрд┐ рдХреЛ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред

рддрддреНрдХрд╛рд▓реАрди рдХрдерди рджреЛ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИ: рдЗрдХреЛ рдХрдорд╛рдВрдб, рдЬреЛ рд╕реНрдХреНрд░реАрди рдкрд░ рд╕рдВрджреЗрд╢ рдФрд░ рд░реАрдб рдХрдорд╛рдВрдб рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред

рд░реАрдб рдХрдорд╛рдВрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд░реЛрдХрддреА рд╣реИ рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдкреБрдЯ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдФрд░ рдкрд╛рда рдЪрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдЗрд╕рд▓рд┐рдП, TEXT рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдкреБрдЯ рдХреЛ TEXT рд╡реИрд░рд┐рдПрдмрд▓ рдореЗрдВ рдкрдврд╝рддрд╛ рд╣реИ , рдЬрд┐рд╕реЗ рдмрд╛рдж рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЕрдЧрд▓реЗ рднрд╛рдЧ рдХреЛ рдЕрдиреНрдп рд╡рд┐рд╡рд░рдг рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЕрдиреНрдп рдХрдерди рдХреЗ рдмрд╛рдж рдХрдорд╛рдВрдб рдХреЛ рдЕрдиреНрдп рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ "рдЕрдиреНрдпрдерд╛, рдпрджрд┐ рддрд░реНрдХ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред" рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдкрд╛рда рдЪрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ $ 1 рдХрд╛ рд╡рд░реНрддрдорд╛рди рдореВрд▓реНрдп рдЗрд╕реЗ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЪрд░ рдХреЛ рдХреИрд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдЪрд░ рдХреЗ рдирд╛рдо рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдПрдХ = рдЪрд┐рд╣реНрди рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд╛рдж $ 1 рд╣реИред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЪрд░ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░рддреЗ рд╕рдордп рдЖрдкрдХреЛ рдХрднреА рднреА рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

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

рдЗрдирдкреБрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдЖрдк рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

  1. рд╕рдВрдкрд╛рджрдХ рдЦреЛрд▓реЗрдВ рдФрд░ рдкрд╛рда рдирд╛рдордХ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВред рдЗрд╕ рдлрд╛рдЗрд▓ рдореЗрдВ рдХреЛрдбрд┐рдВрдЧ 3 рдореЗрдВ рдХреЛрдб рдХреА рд╕рд╛рдордЧреНрд░реА рдбрд╛рд▓реЗрдВред
  2. рдлрд╝рд╛рдЗрд▓ рдХреЛ рдбрд┐рд╕реНрдХ рдкрд░ рд▓рд┐рдЦреЗрдВ рдФрд░ рдЙрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП chmod + x рдкрд╛рда рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВред
  3. рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рдХрд░ рдЪрд▓рд╛рдПрдВ ред/xt рдФрд░ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рддрд░реНрдХ рдХреЗред рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдпрд╣ рдЗрдирдкреБрдЯ рдорд╛рдВрдЧрддрд╛ рд╣реИред
  4. " рд╣реЗрд▓реЛ " рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рдПрдВ (./xtxt рд╣реИрд▓реЛ)ред рдкрд░рд┐рдгрд╛рдо STDOUT рдореЗрдВ "рдЖрдкрдиреЗ рдЯреЗрдХреНрд╕реНрдЯ рд╣реИрд▓реЛ рджрд░реНрдЬ рдХрд┐рдпрд╛ рд╣реИ" рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛ред

рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдФрд░ рдЫреЛрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


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

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

  • рдпрджрд┐ ... рддреЛ ... рдФрд░ - рдпрджрд┐ рдХрд┐рд╕реА рдирд┐рд╢реНрдЪрд┐рдд рд╢рд░реНрдд рдХреЛ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  • рдХреЗ рд▓рд┐рдП - рдорд╛рдиреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  • рдЬрдмрдХрд┐ - рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╢рд░реНрдд рдкреВрд░реА рд╣реЛрдиреЗ рдкрд░ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  • рдкрд╣рд▓реЗ - рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╢рд░реНрдд рдкреВрд░реА рд╣реЛрдиреЗ рддрдХ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  • рдорд╛рдорд▓рд╛ - рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореВрд▓реНрдпреЛрдВ рдХреА рдПрдХ рд╕реАрдорд┐рдд рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдЕрдЧрд░ рдлрд┐рд░


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

рдмреБрдирд┐рдпрд╛рджреА рдЕрдЧрд░ рдирд┐рд░реНрдорд╛рдг рд╣реИ рдЕрдЧрд░ ... рддреЛ ... рдлрд╛рдИ ред

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

 if [ -z $1 ] then echo no value provided fi 

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

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдХрдИ рдкрд░реАрдХреНрд╖рдг рдХрдорд╛рдВрдб рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 4 ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдпрджрд┐ рдлрд┐рд░

 #!/bin/bash # run this script with one argument # the goal is to find out if the argument is a file or a directory if [ -f $1 ] then echo "$1 is a file" elif [ -d $1 ] then echo "$1 is a directory" else echo "I do not know what \$1 is" fi exit 0 

|| рдФрд░ &&


рдкреВрд░рд╛ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЕрдЧрд░ ... рдХрдерди, рддреЛ рдЖрдк рддрд╛рд░реНрдХрд┐рдХ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ || рд╕рд╛рде рд╣реА && || рдПрдХ рддрд╛рд░реНрдХрд┐рдХ "OR" рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдХрдерди рдХрд╛ рджреВрд╕рд░рд╛ рднрд╛рдЧ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдЧрд╛ рдпрджрд┐ рдкрд╣рд▓рд╛ рднрд╛рдЧ рд╕рддреНрдп рдирд╣реАрдВ рд╣реИ; && рдПрдХ рддрд╛рд░реНрдХрд┐рдХ "AND" рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рднрд╛рдЧ рдХреЗ рд╕рддреНрдп рд╣реЛрдиреЗ рдкрд░ рд╣реА рдХрдерди рдХреЗ рджреВрд╕рд░реЗ рднрд╛рдЧ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдЧрд╛ред

рдЗрди рджреЛ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:

 [ -z $1 ] && echo no argument provided 

 ping -c 1 8.8.8.8 2>/dev/null || echo node is not available 

рдкрд╣рд▓рд╛ рдЙрджрд╛рд╣рд░рдг рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ $ 1 рдЦрд╛рд▓реА рд╣реИред рдпрджрд┐ рдпрд╣ рдЬрд╛рдВрдЪ рд╕рд╣реА рд╣реИ (рдЬрд┐рд╕рдХрд╛ рдореВрд▓ рдЕрд░реНрде рд╣реИ рдХрд┐ рдХрдорд╛рдВрдб рдирд┐рдХрд╛рд╕ рдХреЛрдб 0 рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ), рддреЛ рджреВрд╕рд░реА рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреА рд╣реИред

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

рдЖрдк рдЕрдХреНрд╕рд░ рд╕рд╢рд░реНрдд рдХреЗ рдмрдЬрд╛рдп рдЕрдЧрд░ рдХрдерди , && рдФрд░ || ред рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╡реНрдпрд╛рдпрд╛рдо рдореЗрдВ, рдЖрдк рд╕рд╢рд░реНрдд рдмрдпрд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрднреНрдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ ... рддреЛ ... рдФрд░ , рдпрд╛ && рдФрд░ || ред

рд╡реНрдпрд╛рдпрд╛рдо рдХрд░реЗрдВ ред рдЕрдЧрд░ ... рддреЛ ... рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

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

  1. рдПрдбрд┐рдЯрд░ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ рдФрд░ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ, рдЬрд┐рд╕реЗ filechk рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
  2. рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 4 рдХреА рд╕рд╛рдордЧреНрд░реА рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБред
  3. рдЗрд╕рдХреЗ рд╕рд╛рде рдХреБрдЫ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдПрдВ, рдЬреИрд╕реЗ ./filechk / etc / hostред , /Filechck / usr , / filechk рдЧреИрд░-рдореМрдЬреВрджрд╛-рдлрд╝рд╛рдЗрд▓ ред

рдкрд╛рд╢ рдХреЗ рд▓рд┐рдП


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

рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 5

 #!/bin/bash # for (( COUNTER=100; COUNTER>1; COUNTER-- )); do echo $COUNTER done exit 0 

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

Listing 5 рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрдерд┐рддрд┐ COUNTER рдЪрд░ рдХреЛ рд╕реМрдВрдкреЗ рдЧрдП рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╣реИред

рдереЛрдбрд╝рд╛ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг

рдЕрдВрджрд░ ((...)) рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдЙрдирдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рд░рд▓рддрдо рдорд╛рдорд▓реЗ рдореЗрдВ, рдирд┐рд░реНрдорд╛рдг a = $ ((5 + 3)) рдЪрд░ рдХреЛ "рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдорд╛рди" 5 + 3 ", рдпрд╛ 8. рдЕрд╕рд╛рдЗрди рдХрд░реЗрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдбрдмрд▓ рдХреЛрд╖реНрдардХ рд╕реА рднрд╛рд╖рд╛ рдХреА рд╢реИрд▓реА рдореЗрдВ рдЪрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЪрд░ рдХреЛ 100 рдореЗрдВ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЬрдм рддрдХ рдорд╛рди 1 рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрддрд╛ рд╣реИ, рддрдм рддрдХ рдЗрд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдореЗрдВ 1 рдШрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рддрдХ рдХрд┐ рд╕реНрдерд┐рддрд┐ рд╕рд╣реА рд╣реЛрддреА рд╣реИ, рддрдм рддрдХ рдЧреВрдВрдЬ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ $ COUNTER рдЪрд░ рдХрд╛ рдорд╛рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 6 рдореЗрдВ, рдЖрдк рдореЗрд░реЗ рдкрд╕рдВрджреАрджрд╛ рд╡рди-рд▓рд╛рдЗрдирд░реНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рд╕реАрдорд╛ рдХреЛ рдЗрд╕ рдмрд╛рд░ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ 100 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░ 104 рддрдХ рдкрд╣реБрдВрдЪрддреА рд╣реИред

рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 6

 for i in {100..104}; do ping тАУc 1 192.168.4.$i >/dev/null && echo 192.168.4.$i is up; done 

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕реАрдорд╛ рдХреИрд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ: рдкрд╣рд▓реЗ рдЖрдк рдкрд╣рд▓реЗ рдирдВрдмрд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдлрд┐рд░ рджреЛ рдмрд┐рдВрджреБрдУрдВ рдФрд░ рд╕реАрдорд╛ рдореЗрдВ рдЕрдВрддрд┐рдо рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП i , рдХреЗ рд╕рд╛рде, рдЪрд░ I рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЪрд░ i рдХреЛ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдкрд┐рдВрдЧ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд╣рд╛рдВ -c 1 рд╡рд┐рдХрд▓реНрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдПрдХ рдЕрдиреБрд░реЛрдз рднреЗрдЬрд╛ рдЧрдпрд╛ рд╣реИред

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

рдЬрдмрдХрд┐ рдФрд░ рдЬрдм рддрдХ рд╕рдордЭ


рдпрджрд┐ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЕрднреА-рдЕрднреА рдкрдврд╝реЗ рдЧрдП рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдПрд▓рд┐рдореЗрдВрдЯ рд░реЗрдВрдЬ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ, рдЬрдмрдХрд┐ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рддрдм рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдкреНрд░реЛрд╕реЗрд╕ рдПрдХреНрд╕реЗрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдПрдХ рдмрдпрд╛рди рддрдХ рднреА рд╣реИ, рдЬрд┐рд╕реЗ рддрдм рддрдХ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдЬрд╛рдБрдЪ рдХреА рдЬрд╛ рд░рд╣реА рд╕реНрдерд┐рддрд┐ рдЭреВрдареА рд╣реИред рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 7 рдореЗрдВ, рдЖрдк рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреИрд╕реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдиреЛрдЯред рдореБрдЭреЗ рд╕рдордЭ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрдпрд╛ рдХрд░рддреА рд╣реИред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, CentOS 7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЛрдИ рдореЙрдирд┐рдЯрд░ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрд╣рддреА рд╣реИ:
  рдЙрдкрдпреЛрдЧ: рдореЙрдирд┐рдЯрд░ <processname> 
рдЖрдзреЗ рдШрдВрдЯреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ CetOS рдХреЗ рд▓рд┐рдП рдореЙрдирд┐рдЯрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рджреЗрдЦрд╛, рд▓реЗрдХрд┐рди рд╡рд╣ рдирд╣реАрдВ рдорд┐рд▓рд╛ред рдФрд░ рдЖрдо рддреМрд░ рдкрд░ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЕрдЧрд░ ps aux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХрд┐рд╕ рдкрдХреНрд╖ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдпрд╣рд╛рдВ рд╣реИред рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдореБрдЭреЗ рд╕рдордЭ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрдпрд╛ рдХрд░рддреА рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝рд╛ рдЕрдиреБрд░реЛрдз рдкрд╛рда рдФрд░ / рдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред
рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 7

 #!/bin/bash # # usage: monitor <processname> while ps aux | grep $1 | grep -v grep > /dev/tty11 do sleep 5 done clear echo your process has stopped logger $1 is no longer present mail -s "process $1 has stopped" root < . 

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

рдЬрдмрдХрд┐ рд▓реВрдк рдХрд╛ рдореВрд▓ ps рдХрдорд╛рдВрдб рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдореВрд▓реНрдп $ 1 рд╣реИ ред

Grep -v grep рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ, рдЬреЛ рдкрд░рд┐рдгрд╛рдо рд╕реЗ grep рдХрдорд╛рдВрдб рд╡рд╛рд▓реА рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рддрд╛ рд╣реИред рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ ps рдХрдорд╛рдВрдб рдореЗрдВ grep рдХрдорд╛рдВрдб рд╕рд╣рд┐рдд рд╕рднреА рд░рдирд┐рдВрдЧ рдкреНрд░реЛрд╕реЗрд╕ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ, рдЬрд┐рд╕рдореЗрдВ ps рдХрдорд╛рдВрдб рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдкрд╛рд╕ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдЧрд▓рдд рд╕рдХрд╛рд░рд╛рддреНрдордХ рдореИрдЪ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

Ps aux рдХрдорд╛рдВрдб рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ / dev / tty11 рдкрд░ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдпрд╣ рдЖрдкрдХреЛ рдмрд╛рдж рдореЗрдВ t1111 рд╕реЗ рдкрд░рд┐рдгрд╛рдо рдкрдврд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред

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

рдЬрдмрдХрд┐ рдСрдкрд░реЗрдЯрд░ рдХреА рд╣рд╛рд▓рдд рдЬрдмрдХрд┐ рд╕рдЪ рд╣реИ, рдкрд╛рд╢ рдЬрд╛рд░реА рд╣реИред рдпрджрд┐ рд╕реНрдерд┐рддрд┐ рдЭреВрдареА рд╣реИ (рдЬреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрдм рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ), рддреЛ рдЪрдХреНрд░ рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдмрд╛рдж рдЖрджреЗрд╢реЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЖрдкрдХреЛ рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЗрди рд╕рднреА рдЖрджреЗрд╢реЛрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓рд╛рдЗрди рдореЗрд▓ -s рдореЗрдВ "рдкреНрд░рдХреНрд░рд┐рдпрд╛ $ 1 рдмрдВрдж рд╣реЛ рдЧрдИ рд╣реИ" рд░реВрдЯ <ред рд╕рдВрджреЗрд╢ рд░реВрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЖрдВрддрд░рд┐рдХ рдореЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓рд┐рдирдХреНрд╕ * рдкрд░ рдЪрд▓рддрд╛ рд╣реИред рдореЗрд▓ рдХрдорд╛рдВрдб-s рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрджреЗрд╢ рд╡рд┐рд╖рдп рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣рд▓рд╛ рддрд░реНрдХ рд▓реЗрддрд╛ рд╣реИ ред

* - рдХрдо рд╕реЗ рдХрдо CentOS рдкрд░ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред (atред рдЕрдиреБрд╡рд╛рджрдХ) <рдкрд░

рдзреНрдпрд╛рди рджреЗрдВ ред рдЯреАрдо рдХреЗ рдЕрдВрдд рдореЗрдВред

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

рд╕рд╛рдЗрдХрд┐рд▓ , рдЬрдмрдХрд┐ - рдЪрдХреНрд░ рдХреЗ рд╡рд┐рдкрд░реАрдд рдЬрдм рддрдХ , рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг 8 рд╕реВрдЪреА рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИредрдЬрдм рддрдХ рдПрдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╢реБрд░реВ рди рд╣реЛ рдЬрд╛рдП рдЬрдм рддрдХ рдХрд┐ рд╕реНрдерд┐рддрд┐ рд╕рд╣реА рди рд╣реЛ рдЬрд╛рдПред

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



 #!/bin/bash # until users | grep $1 > /dev/null do echo $1 is not logged in yet sleep 5 done echo $1 has just logged in mail -s "$1 has just logged in" root < . 

рдорд╛рдорд▓реЗ рдХреЛ рд╕рдордЭрдирд╛


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

* - рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдЪрдХреНрд░ рд╣реИ?

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

Listing 9 рдореЗрдВ, рдЖрдк рдХреЗрд╕ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ , рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рд╕реЗрд╡рд╛ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 9

 case "$1" in start) start;; stop) rm -f $lockfile stop;; restart) restart;; reload) reload;; status) status ;; *) echo "Usage: $0 (start|stop|restart|reload|status)" ;; esac 

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

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

рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ *) рдкреВрд░реНрд╡ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рднреА рдЕрдиреНрдп рдорд╛рдкрджрдВрдбреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╕рд░реНрд╡рд╡реНрдпрд╛рдкреА рдСрдкрд░реЗрдЯрд░ рд╣реИред рдорд╛рдорд▓рд╛

рдЪрд▓рдирд╛ рд▓реВрдк esac рдмрдпрд╛рди рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ ред

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

рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд╕рдорд╛рди рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ *) рдПрдХ рдЕрдиреБрдХреНрд░рдо рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рд╕рдм рдХреБрдЫ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рдорд╛рдорд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдХреНрд╡реЗрдВрд╕ рдЬреИрд╕реЗ рдХрд┐ рд╕реНрдЯрд╛рд░реНрдЯ | рд╕реНрдЯрд╛рд░реНрдЯ | рд╕реНрдЯрд╛рд░реНрдЯ) рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред

рдмреИрд╢ рдореЗрдВ рдбрд┐рдмрдЧрд┐рдВрдЧ рд▓рд┐рдкрд┐рдпреЛрдВ


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

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

 [root@server1 ~]# bash -x 319.sh + grep Usage: grep [OPTION]... PATTERN [FILE]... Try 'grep --help' for more information. + users + echo is not logged in yet is not logged in yet + sleep 5 

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рджреЗрдирд╛


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

Source: https://habr.com/ru/post/hi471242/


All Articles