рдПрдХ
рд╕рдорд╛рди рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╡рд┐рд╖рдпред
рдореВрд▓ рд╡рд┐рд╖рдп рдХреЗ рд▓реЗрдЦрдХ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддреЗ рд╣реИрдВ - рдЕрд░реНрдерд╛рддреН,
рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдХреЙрдкреА рдХрд░реЗрдВ рдФрд░ рдлрд┐рд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдВ рдЬрд┐рдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЖрдкрдХреЗ рд╡реАрдбрд┐рдпреЛ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдкреВрд░реЗ рд╣реЛрдо рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ USB рдлреНрд▓реИрд╢ рдбреНрд░рд╛рдЗрд╡ рдкрд░ рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рд▓реЗрдХрд┐рди рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдЕрд▓рдЧ рд╣реИ - рдпрд╣ рдпреВрдирд┐рдХреНрд╕ рд╡рд┐рдЪрд╛рд░рдзрд╛рд░рд╛ рдХреЗ рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реИ: рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕рд░рд▓ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдЗрд╕ рд╡рд░реНрдЧ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд┐рд▓реНрд▓реА рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рддрд╣рдд - рдЗрд╕реЗ рддреИрдпрд╛рд░ рдиреБрд╕реНрдЦрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рдорд╛рдиреЗрдВред
0. рдЕрдкрдШрдЯрди
рдХрд┐рд╕реА рднреА рдЬрдЯрд┐рд▓ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдЙрд╕рдХреЗ рдШрдЯрдХ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдХреБрдЫ рдлрд┐рд▓реНрдЯрд░реЛрдВ рдХреЛ рдкрд╣рд▓реЗ рдЫрд╛рди рдХрд░ рдХреЙрдкреА рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЗрд╕рд▓рд┐рдП - рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛, рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛, рдХреЙрдкреА рдХрд░рдирд╛ред
1. рдлрд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛
рдЖрдорддреМрд░ рдкрд░ рд╣рдо ls рдХреЗ рд╕рд╛рде рдлрд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред рдЙрд╕рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
$ ls -1 dir1 dir2 file1.bin file2.txt
рдХреНрдпрд╛ рдРрд╕рд╛ рдХреЛрдИ рдирд┐рд╖реНрдХрд░реНрд╖ рд╣реИ? рдирд╣реАрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ - рд╣рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкреБрдирд░рд╛рд╡рд░реНрддреА рд░реВрдк рд╕реЗ рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╣рдорд╛рд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдкрд╣рд▓рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдкрде рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдирд╛рдореЛрдВ рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рдЕрдЧрд▓рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЬреЛ рдорди рдореЗрдВ рдЖрддрд╛ рд╣реИ рд╡рд╣ рд╣реИ
$ find ./ ./ ./dir1 ./dir1/file7.txt ./dir2 ./file1.bin ./file2.txt
рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмреЗрд╣рддрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рднреА рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдЖ рдЧрдИ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЖрдЗрдП рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдПрдБ:
$ find ./ -type 'f' ./dir1/file7.txt ./file1.bin ./file2.txt
рдпрд╣рд╛рдБ рд╡рд╣реА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЪрд╛рд╣рд┐рдПред рдлрд╝рд╛рдЗрд▓ рд╕реВрдЪреАред
2. рдЫрд╛рдирдирд╛
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЗрд╕ рд╕реВрдЪреА рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдкрд┐рдЫрд▓реЗ рдХрдорд╛рдВрдб
рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ grep рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ
рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдХрд░реЗрдВ ред
$ find ./ -type 'f' | grep 2 ./dir2 ./file2.txt
рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд╛рд░реНрдп рдХреА рд╢рд░реНрддреЛрдВ рдореЗрдВ рдпрд╣ рдлрд╛рдЗрд▓реЛрдВ
рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд▓рд╛рдпрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЪрд▓реЛ рд╣рдорд╛рд░реА
рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреЛ рдереЛрдбрд╝рд╛ рдмрджрд▓ рджреЗрдВ
$ find ./ -type 'f' | grep -v 2 ./dir1/file7.txt ./file1.bin
рдкрд╣рд▓реЗ рджреЛ рднрд╛рдЧ рдкреВрд░реЗ рд╣реБрдПред
3. рдХреЙрдкреА
Cp рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП
рдореИрди рдкреЗрдЬ рд╕реЗ, рд╣рдо рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЛ cp рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрдмрдХрд┐ рдЕрднреА рдХреЗ рд▓рд┐рдП рд╣рдо рдХреЗрд╡рд▓ рд╕реВрдЪреА рдХреЛ
рдорд╛рдирдХ рдЗрдирдкреБрдЯ рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЪрд▓реЛ
xargs рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ - рдпрд╣ рдорд╛рдирдХ рдЗрдирдкреБрдЯ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдорд╛рдирдХ рдЗрдирдкреБрдЯ рд╕реЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рддреЛ:
$ find ./ -type 'f' | grep -v 2 | xargs -n 1 -I % cp --parents "%" /path/to/dest/dir/
-n 1 рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдорд╛рдирдХ рдЗрдирдкреБрдЯ рд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдкрдВрдХреНрддрд┐ рдХреЛ рдХрдорд╛рдВрдб рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ -I% - рдЙрд╕ рд╡рд░реНрдг рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдорд╛рдирдХ рдЗрдирдкреБрдЯ рд╕реЗ рдПрдХ рд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рд▓рдХреНрд╖реНрдп рдХрдорд╛рдВрдб рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рд╣реЛрдЧрд╛
cp --parents "./dir1/file7.txt" /path/to/dest/dir/ cp --parents "./file1.bin" /path/to/dest/dir/
рд╣рдо рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИ рд╣реИред
рдПрдХ рдирд┐рд╖реНрдХрд░реНрд╖ рдХреЗ рдмрдЬрд╛рдп
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрд╕ рд╡рд┐рд╡рд░рдг рд╕реЗ рдРрд╕реЗ рд╕рд░рд▓ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рджреЛрдиреЛрдВ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреАред
рдореИрдВ рдпрд╣ рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛
- рдпрд╣ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╖рдп рд╣реИ рдФрд░ рдПрдХ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ, рди рдХрд┐ рдлрд╛рдЗрд▓реЛрдВ рдХреА рдирдХрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред
- рдпрд╣ рд╡рд┐рдзрд┐ рдПрдХрдорд╛рддреНрд░ рд╕реЗ рджреВрд░ рд╣реИ рдФрд░ рд╕рдмрд╕реЗ рдЫреЛрдЯреА рднреА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдорд╛рдзрд╛рди рдкрджреНрдзрддрд┐ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╣реИред
- рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдп рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕реЗ
find ./ -type f ! -name "*2*" -exec cp --parents -t /target/dir "{}" \+
рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рддреЗрдЬрд╝ рд╣реЛрдЧрд╛ find ./ -type f ! -name "*2*" -exec cp --parents -t /target/dir "{}" \+
find ./ -type f ! -name "*2*" -exec cp --parents -t /target/dir "{}" \+
- рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ
tar --exclude=2 -cf - ./ | ( cd /path/to/dest/ && tar -xvf - )
рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдБ tar --exclude=2 -cf - ./ | ( cd /path/to/dest/ && tar -xvf - )
- рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рд╡рд┐рд╖рдп рд╣реИ, рдореБрдЭреЗ рд░рдЪрдирд╛рддреНрдордХ рдЖрд▓реЛрдЪрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА