рдСрдирд╡рд░реНрдХреНрд╕ рд▓рд┐рдирдХреНрд╕ рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдСрдирд▓рд╛рдЗрди рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди

рдкреНрд░рддреАрдХ рдЪрд┐рдиреНрд╣

рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди рдХреЗ рд▓рд┐рдП рдореБрдлреНрдд рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдСрдирд▓рд╛рдЗрди

<рдкрд┐рдЫрд▓рд╛ | рд╡рд┐рд╖рдп-рд╕реВрдЪреА | рдЕрдЧрд▓рд╛>

рд╕рдореВрд╣ рдЖрджреЗрд╢ рдФрд░ рдЙрдкрдХреЛрд╢

рдЦреВрдм рдЬреЛрд░ рд╕реЗ рдкреАрдЯрдирд╛ рдЖрджреЗрд╢реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рд╕рдореВрд╣реАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рджреЛ рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ; рдпрд╛ рддреЛ рдПрдХ рдХреЗ рд╕рд╛рде рд╕рдореВрд╣ рдЖрджреЗрд╢ рдпрд╛ рдП рдХреЗ рд╕рд╛рде рдирд┐рд░реНрд╡рд╛рд╣ рдХрд░рдирд╛. рдпрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ:

рд╕рдореВрд╣ рдЖрджреЗрд╢:

{рдХрдорд╛рдВрдб1; рдХрдорд╛рдВрдб2; [рдХрдорд╛рдВрдб3; ...] }

рдЙрдкрдХреЛрд╢:

(рдХрдорд╛рдВрдб1; рдХрдорд╛рдВрдб2; [рдХрдорд╛рдВрдб3;...])

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

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



ls -l > рдЖрдЙрдЯрдкреБрдЯ.txt

рдЗрдХреЛ "foo.txt рдХреА рд╕реВрдЪреА" >> рдЖрдЙрдЯрдкреБрдЯ.txt cat foo.txt >> рдЖрдЙрдЯрдкреБрдЯ.txt

ls -l > рдЖрдЙрдЯрдкреБрдЯ.txt

рдЗрдХреЛ "foo.txt рдХреА рд╕реВрдЪреА" >> рдЖрдЙрдЯрдкреБрдЯ.txt cat foo.txt >> рдЖрдЙрдЯрдкреБрдЯ.txt


рдпрд╣ рдмрд╣реБрдд рд╕реАрдзрд╛ рд╣реИ. рддреАрди рдХрдорд╛рдВрдб рдЕрдкрдиреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд╕рд╛рде рдирд╛рдорд┐рдд рдлрд╝рд╛рдЗрд▓ рдкрд░ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдХрд┐рдП рдЧрдП output.txt. рдЧреНрд░реБрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╣рдо рдЗрд╕реЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:


{ рдПрд▓рдПрд╕ -рдПрд▓; рдЗрдХреЛ "foo.txt рдХреА рд╕реВрдЪреА"; рдмрд┐рд▓реНрд▓реА foo.txt; } > рдЖрдЙрдЯрдкреБрдЯ.txt

{ рдПрд▓рдПрд╕ -рдПрд▓; рдЗрдХреЛ "foo.txt рдХреА рд╕реВрдЪреА"; рдмрд┐рд▓реНрд▓реА foo.txt; } > рдЖрдЙрдЯрдкреБрдЯ.txt


рдЙрдкрдХреЛрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдорд╛рди рд╣реИ:



(ls -l; рдЗрдХреЛ "foo.txt рдХреА рд╕реВрдЪреА"; cat foo.txt) > рдЖрдЙрдЯрдкреБрдЯ.txt

(ls -l; рдЗрдХреЛ "foo.txt рдХреА рд╕реВрдЪреА"; cat foo.txt) > рдЖрдЙрдЯрдкреБрдЯ.txt


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



{ рдПрд▓рдПрд╕ -рдПрд▓; рдЗрдХреЛ "foo.txt рдХреА рд╕реВрдЪреА"; рдмрд┐рд▓реНрд▓реА foo.txt; } | рдПрд▓рдкреАрдЖрд░

{ рдПрд▓рдПрд╕ -рдПрд▓; рдЗрдХреЛ "foo.txt рдХреА рд╕реВрдЪреА"; рдмрд┐рд▓реНрд▓реА foo.txt; } | рдПрд▓рдкреАрдЖрд░


рдпрд╣рд╛рдВ рд╣рдордиреЗ рдЕрдкрдиреЗ рддреАрди рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЗрдирдкреБрдЯ рдореЗрдВ рдкрд╛рдЗрдк рдХрд┐рдпрд╛ рд╣реИ LPR рдПрдХ рдореБрджреНрд░рд┐рдд рд░рд┐рдкреЛрд░реНрдЯ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП.

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

/usr/рдмрд┐рди:


[рдореБрдЭреЗ@рд▓рд┐рдирдХреНрд╕рдмреЙрдХреНрд╕ ~]$ рд╕рд░рдгреА-2 /usr/bin

/usr/bin/2to3-2.6

рдЬрдбрд╝

рдЬрдбрд╝

/usr/bin/2to3

рдЬрдбрд╝

рдЬрдбрд╝

/usr/bin/a2p

рдЬрдбрд╝

рдЬрдбрд╝

/usr/bin/abrowser

рдЬрдбрд╝

рдЬрдбрд╝

/usr/bin/aconnect

рдЬрдбрд╝

рдЬрдбрд╝

/usr/bin/acpi_fakekey

рдЬрдбрд╝

рдЬрдбрд╝

/usr/bin/acpi_listen

рдЬрдбрд╝

рдЬрдбрд╝

/usr/bin/add-apt-repository

рдЬрдбрд╝

рдЬрдбрд╝

.

.

.

/usr/bin/zipgrep

рдЬрдбрд╝

рдЬрдбрд╝

/usr/bin/zipinfo

рдЬрдбрд╝

рдЬрдбрд╝

/usr/рдмрд┐рди/рдЬрд╝рд┐рдкрдиреЛрдЯ

рдЬрдбрд╝

рдЬрдбрд╝

/usr/рдмрд┐рди/рдЬрд╝рд┐рдк

рдЬрдбрд╝

рдЬрдбрд╝


/usr/bin/zipsplit

/usr/bin/zjsdecode

/usr/bin/zsoelim

рдЬрдбрд╝ рдореВрд▓ рдЬрдбрд╝

рдЬрдбрд╝ рдореВрд▓ рдЬрдбрд╝

рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд╛рдореА: рдбреЗрдореЙрди: 1


рдлрд╝рд╛рдЗрд▓ (рд░реЛрдВ)

рд░реВрдЯ : 1394

рдлрд╝рд╛рдЗрд▓ (рд░реЛрдВ)

рдХреА рдЫрд╡рд┐

рдлрд╝рд╛рдЗрд▓ рд╕рдореВрд╣ рд╕реНрд╡рд╛рдореА: рдХреНрд░реЛрдВрдЯреИрдм: 1 рдлрд╝рд╛рдЗрд▓(рдлрд╝рд╛рдЗрд▓реЗрдВ) рдбреЗрдореЙрди: 1 рдлрд╝рд╛рдЗрд▓(рдПрдБ) рдПрд▓рдкреИрдбрдорд┐рди: 1 рдлрд╝рд╛рдЗрд▓(рдПрдБ) рдореЗрд▓: 4 рдлрд╝рд╛рдЗрд▓(рдПрдБ) рдПрдорд▓реЛрдХреЗрдЯ: 1 рдлрд╝рд╛рдЗрд▓(рдПрдБ) рд░реВрдЯ: 1380 рдлрд╝рд╛рдЗрд▓(рдПрдБ) рдЫрд╛рдпрд╛: 2 рдлрд╝рд╛рдЗрд▓ (s) ssh : 1 рдлрд╝рд╛рдЗрд▓

рдЯреНрдЯреА: 2 рдлрд╝рд╛рдЗрд▓реЗрдВ

utmp : 2 рдлрд╝рд╛рдЗрд▓реЗрдВ


рдХреА рдЫрд╡рд┐

#! / Bin / bash

#! / Bin / bash

# рд╕рд╛рд░рдгреА-2: рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд╛рдорд┐рдпреЛрдВ рдХрд╛ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рд░рдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ

рдШреЛрд╖рд┐рдд рдХрд░реЗрдВ -A рдлрд╝рд╛рдЗрд▓реЗрдВ рдлрд╝рд╛рдЗрд▓_рд╕рдореВрд╣ рдлрд╝рд╛рдЗрд▓_рд╕реНрд╡рд╛рдореА рд╕рдореВрд╣ рд╕реНрд╡рд╛рдорд┐рдпреЛрдВ рдпрджрд┐ [[ ! -d "$1" ]]; рддрдм

рдЗрдХреЛ "рдЙрдкрдпреЛрдЧ: рдРрд░реЗ-2 рдбреАрдЖрдИрдЖрд░" >&2 рдирд┐рдХрд╛рд╕ 1

fi


рдореЗрд░реЗ рд▓рд┐рдП "$1"/*; do рдорд╛рд▓рд┐рдХ=$(stat -c %U "$i") рд╕рдореВрд╣=$(stat -c %G "$i") рдлрд╝рд╛рдЗрд▓реЗрдВ["$i"]='$i" file_owner["$i"]=$ рд╕реНрд╡рд╛рдореА рдлрд╝рд╛рдЗрд▓_рд╕рдореВрд╣["$i"]=$рд╕рдореВрд╣ ((++рд╕реНрд╡рд╛рдореА[$рд╕реНрд╡рд╛рдореА])) ((++рд╕рдореВрд╣[$рд╕рдореВрд╣]))

рдХрд┐рдпрд╛


# рдПрдХрддреНрд░рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ

{ for i in "${files[@]}"; рдкреНрд░рд┐рдВрдЯрдл рдХрд░реЗрдВ "%-40s %-10s %-10s\n" \

"$i" ${file_owner["$i"]} ${file_group["$i"]} рд╣реЛ рдЧрдпрд╛ } | рдХреНрд░рдо рд╕реЗ рд▓рдЧрд╛рдирд╛

# рд╕рд╛рд░рдгреА-2: рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд╛рдорд┐рдпреЛрдВ рдХрд╛ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рд░рдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ

рдШреЛрд╖рд┐рдд рдХрд░реЗрдВ -A рдлрд╝рд╛рдЗрд▓реЗрдВ рдлрд╝рд╛рдЗрд▓_рд╕рдореВрд╣ рдлрд╝рд╛рдЗрд▓_рд╕реНрд╡рд╛рдореА рд╕рдореВрд╣ рд╕реНрд╡рд╛рдорд┐рдпреЛрдВ рдпрджрд┐ [[ ! -d "$1" ]]; рддрдм

рдЗрдХреЛ "рдЙрдкрдпреЛрдЧ: рдРрд░реЗ-2 рдбреАрдЖрдИрдЖрд░" >&2 рдирд┐рдХрд╛рд╕ 1

fi


рдореЗрд░реЗ рд▓рд┐рдП "$1"/*; do рдорд╛рд▓рд┐рдХ=$(stat -c %U "$i") рд╕рдореВрд╣=$(stat -c %G "$i") рдлрд╝рд╛рдЗрд▓реЗрдВ["$i"]='$i" file_owner["$i"]=$ рд╕реНрд╡рд╛рдореА рдлрд╝рд╛рдЗрд▓_рд╕рдореВрд╣["$i"]=$рд╕рдореВрд╣ ((++рд╕реНрд╡рд╛рдореА[$рд╕реНрд╡рд╛рдореА])) ((++рд╕рдореВрд╣[$рд╕рдореВрд╣]))

рдХрд┐рдпрд╛


# рдПрдХрддреНрд░рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ

{ for i in "${files[@]}"; рдкреНрд░рд┐рдВрдЯрдл рдХрд░реЗрдВ "%-40s %-10s %-10s\n" \

"$i" ${file_owner["$i"]} ${file_group["$i"]} рд╣реЛ рдЧрдпрд╛ } | рдХреНрд░рдо рд╕реЗ рд▓рдЧрд╛рдирд╛

рдпрд╣рд╛рдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдПрдХ рд╕реВрдЪреА (рдкрдВрдХреНрддрд┐ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде) рджреА рдЧрдИ рд╣реИ:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26


27

28

29

30

31

32

33

34

35

36

37

38

39

40

27

28

29

30

31

32

33

34

35

36

37

38

39

40


рдХреА рдЫрд╡рд┐

рдЧреВрдВрдЬ

рдЧреВрдВрдЬ

# рдорд╛рд▓рд┐рдХреЛрдВ рдХреА рд╕реВрдЪреА

рдкреНрд░рддрд┐рдзреНрд╡рдирд┐ "рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд╛рдореА:"

{ рдореЗрд░реЗ рд▓рд┐рдП "${!owners[@]}" рдореЗрдВ; рдХрд░рдирд╛

printf "%-10s: %5d рдлрд╝рд╛рдЗрд▓(рдлрд╝рд╛рдЗрд▓реЗрдВ)\n" "$i" ${рдорд╛рд▓рд┐рдХ["$i"]} рд╣реЛ рдЧрдпрд╛ } | рдХреНрд░рдо рд╕реЗ рд▓рдЧрд╛рдирд╛

рдЧреВрдВрдЬ


# рд╕рдореВрд╣реЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ

рдкреНрд░рддрд┐рдзреНрд╡рдирд┐ "рдлрд╝рд╛рдЗрд▓ рд╕рдореВрд╣ рд╕реНрд╡рд╛рдореА:"

{ for i in "${!groups[@]}"; рдХрд░рдирд╛

printf "%-10s: %5d рдлрд╝рд╛рдЗрд▓\n" "$i" ${groups["$i"]} рд╣реЛ рдЧрдпрд╛ } | рдХреНрд░рдо рд╕реЗ рд▓рдЧрд╛рдирд╛

# рдорд╛рд▓рд┐рдХреЛрдВ рдХреА рд╕реВрдЪреА

рдкреНрд░рддрд┐рдзреНрд╡рдирд┐ "рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд╛рдореА:"

{ рдореЗрд░реЗ рд▓рд┐рдП "${!owners[@]}" рдореЗрдВ; рдХрд░рдирд╛

printf "%-10s: %5d рдлрд╝рд╛рдЗрд▓(рдлрд╝рд╛рдЗрд▓реЗрдВ)\n" "$i" ${рдорд╛рд▓рд┐рдХ["$i"]} рд╣реЛ рдЧрдпрд╛ } | рдХреНрд░рдо рд╕реЗ рд▓рдЧрд╛рдирд╛

рдЧреВрдВрдЬ


# рд╕рдореВрд╣реЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ

рдкреНрд░рддрд┐рдзреНрд╡рдирд┐ "рдлрд╝рд╛рдЗрд▓ рд╕рдореВрд╣ рд╕реНрд╡рд╛рдореА:"

{ for i in "${!groups[@]}"; рдХрд░рдирд╛

printf "%-10s: %5d рдлрд╝рд╛рдЗрд▓\n" "$i" ${groups["$i"]} рд╣реЛ рдЧрдпрд╛ } | рдХреНрд░рдо рд╕реЗ рд▓рдЧрд╛рдирд╛

рдЖрдЗрдП рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдпрд╛рдВрддреНрд░рд┐рдХреА рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ:

рд░реЗрдЦрд╛ 5: рдХреЗ рд╕рд╛рде рд╕рд╣рдпреЛрдЧреА рд╕рд╛рд░рдгреА рдмрдирд╛рдИ рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП рдШреЛрд╖рд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдорд╛рдВрдб рдХрд░реЗрдВ -A

рд╡рд┐рдХрд▓реНрдкред рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╣рдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрд╛рдБрдЪ рд╕рд░рдгрд┐рдпрд╛рдБ рдмрдирд╛рддреЗ рд╣реИрдВ:

рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдирд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрдХреНрд░рдорд┐рдд рдлрд╝рд╛рдЗрд▓_рд╕рдореВрд╣ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд╕рдореВрд╣ рд╕реНрд╡рд╛рдореА рд╢рд╛рдорд┐рд▓ рд╣реИ, рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрдХреНрд░рдорд┐рдд рдлрд╝рд╛рдЗрд▓_рд╕реНрд╡рд╛рдореА рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд╕реНрд╡рд╛рдореА рд╢рд╛рдорд┐рд▓ рд╣реИ, рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рд╕рдореВрд╣реЛрдВ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрдХреНрд░рдорд┐рдд рдореЗрдВ рдЕрдиреБрдХреНрд░рдорд┐рдд рд╕рдореВрд╣ рд╕реНрд╡рд╛рдорд┐рдпреЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЗрд╕рдореЗрдВ рдЕрдиреБрдХреНрд░рдорд┐рдд рд╕реНрд╡рд╛рдореА рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ

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

рдкрдВрдХреНрддрд┐рдпрд╛рдБ 12-20: рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реВрдк рдХрд░реЗрдВред рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрдЯреЗрдЯ рдЖрджреЗрд╢, рдкрдВрдХреНрддрд┐рдпрд╛рдБ 13 рдФрд░ 14 рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд╛рдореА рдФрд░ рд╕рдореВрд╣ рд╕реНрд╡рд╛рдореА рдХреЗ рдирд╛рдо рдирд┐рдХрд╛рд▓рддреА рд╣реИрдВ рдФрд░ рд╕рд░рдгреА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдирдХреЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рд░рдгрд┐рдпреЛрдВ (рдкрдВрдХреНрддрд┐рдпрд╛рдБ 16, 17) рдХреЛ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреА рд╣реИрдВред рдЗрд╕реА рдкреНрд░рдХрд╛рд░ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рд╕реНрд╡рдпрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕рд░рдгреА (рдкрдВрдХреНрддрд┐ 15)ред

рдкрдВрдХреНрддрд┐рдпрд╛рдБ 18-19: рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рд╛рдореА рдФрд░ рд╕рдореВрд╣ рд╕реНрд╡рд╛рдореА рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдПрдХ рдХреА рд╡реГрджреНрдзрд┐ рдХреА рдЬрд╛рддреА рд╣реИред

рдкрдВрдХреНрддрд┐рдпрд╛рдБ 22-27: рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдЖрдЙрдЯрдкреБрдЯ рд╣реИ. рдпрд╣ "${array[@]}" рдкреИрд░рд╛рдореАрдЯрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЛ рдПрдХ рдЕрд▓рдЧ рд╢рдмреНрдж рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирддреЗ рд╣реБрдП рд╕рд░рдгреА рддрддреНрд╡реЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдореЗрдВ рдПрдореНрдмреЗрдбреЗрдб рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкреВрд░рд╛ рд▓реВрдк рдмреНрд░реЗрд╕рд┐рдЬрд╝ рдореЗрдВ рдШрд┐рд░рд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдПрдХ рд╕рдореВрд╣ рдХрдорд╛рдВрдб рдмрдирддрд╛ рд╣реИред рдпрд╣ рд▓реВрдк рдХреЗ рд╕рдВрдкреВрд░реНрдг рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдкрд╛рдЗрдк рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рддрд░рд╣ рдЖрдЬреНрдЮрд╛ред рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рд░рдгреА рддрддреНрд╡реЛрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХреНрд░рдордмрджреНрдз рдирд╣реАрдВ рд╣реИред

рдкрдВрдХреНрддрд┐рдпрд╛рдБ 29-40: рдпреЗ рджреЛ рд▓реВрдк рдлрд╝рд╛рдЗрд▓ рд╕реВрдЪреА рд▓реВрдк рдХреЗ рд╕рдорд╛рди рд╣реИрдВ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рд╡реЗ "${!


array[@]}" рд╡рд┐рд╕реНрддрд╛рд░ рдЬреЛ рд╕рд░рдгреА рддрддреНрд╡реЛрдВ рдХреА рд╕реВрдЪреА рдХреЗ рдмрдЬрд╛рдп рд╕рд░рдгреА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреА рд╕реВрдЪреА рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реЛрддрд╛ рд╣реИред


 

OnWorks рдкрд░ рд╢реАрд░реНрд╖ OS рдХреНрд▓рд╛рдЙрдб рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ: