cp ΠΊΠΎΠΌΠ°Π½Π΄Π°: ΠΊΠΎΠΏΠΈΡ€Π°ΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΠ°ΠΏΠΊΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ Π² *nix

cp ΠΊΠΎΠΌΠ°Π½Π΄Π°: ΠΊΠΎΠΏΠΈΡ€Π°ΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΠ°ΠΏΠΊΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ Π² *nix

Π’Π°Π·ΠΈ статия Ρ‰Π΅ Ρ€Π°Π·ΠΊΡ€ΠΈΠ΅ някои Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΈ Π½Π΅Ρ‰Π°, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° замСстващи символи ΠΏΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅, двусмислСно ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡ‚Π΅ cp ΠΏΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΈ позволяват ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ Π΄Π° ΠΊΠΎΠΏΠΈΡ€Π°Ρ‚Π΅ ΠΎΠ³Ρ€ΠΎΠΌΠ΅Π½ Π±Ρ€ΠΎΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π±Π΅Π· пропусканС ΠΈΠ»ΠΈ срив.

Π”Π° ΠΊΠ°ΠΆΠ΅ΠΌ, Ρ‡Π΅ трябва Π΄Π° ΠΊΠΎΠΏΠΈΡ€Π°ΠΌΠ΅ всичко ΠΎΡ‚ ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° /source Π² ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° /target.

ΠŸΡŠΡ€Π²ΠΎΡ‚ΠΎ Π½Π΅Ρ‰ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΈΠ΄Π²Π° Π½Π° ΡƒΠΌ Π΅:

cp /source/* /target

НСка Π²Π΅Π΄Π½Π°Π³Π° ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π°ΠΌΠ΅ Ρ‚Π°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π°:

cp -a /source/* /target

ΠΊΠ»ΡŽΡ‡ -a Ρ‰Π΅ Π΄ΠΎΠ±Π°Π²ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅ Π½Π° всички Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΈ, ΠΏΡ€Π°Π²Π° ΠΈ Ρ‰Π΅ Π΄ΠΎΠ±Π°Π²ΠΈ рСкурсия. ΠšΠΎΠ³Π°Ρ‚ΠΎ Π½Π΅ сС изисква Ρ‚ΠΎΡ‡Π½ΠΎ Π²ΡŠΠ·ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΡ€Π°Π²Π°, Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π΅Π½ ΠΊΠ»ΡŽΡ‡ -r.

Π‘Π»Π΅Π΄ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Ρ‰Π΅ ΠΎΡ‚ΠΊΡ€ΠΈΠ΅ΠΌ, Ρ‡Π΅ Π½Π΅ всички Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ са Π±ΠΈΠ»ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°Π½ΠΈ - Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‰ΠΈ с Ρ‚ΠΎΡ‡ΠΊΠ° ΠΊΠ°Ρ‚ΠΎ:

.profile
.local
.mc

ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ.

Π—Π°Ρ‰ΠΎ сС случи Ρ‚ΠΎΠ²Π°?

Въй ΠΊΠ°Ρ‚ΠΎ замСстващитС Π·Π½Π°Ρ†ΠΈ сС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ ΠΎΡ‚ ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°Ρ‚Π° (bash Π² Ρ‚ΠΈΠΏΠΈΡ‡Π΅Π½ случай). По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ bash Ρ‰Π΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€Π° всички Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‰ΠΈ с Ρ‚ΠΎΡ‡ΠΊΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π³ΠΈ Ρ‚Ρ€Π΅Ρ‚ΠΈΡ€Π° ΠΊΠ°Ρ‚ΠΎ скрити. Π—Π° Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅ΠΌ Ρ‚ΠΎΠ²Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, Ρ‰Π΅ трябва Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ bash ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π°:

shopt -s dotglob

Π—Π° Π΄Π° стС сигурни, Ρ‡Π΅ Ρ‚Π°Π·ΠΈ промяна Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π° слСд рСстартиранС, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ Ρ„Π°ΠΉΠ» wildcard.sh с Ρ‚Π°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π² ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° /etc/profile.d (МоТС Π±ΠΈ Π²Π°ΡˆΠ°Ρ‚Π° дистрибуция ΠΈΠΌΠ° Π΄Ρ€ΡƒΠ³Π° ΠΏΠ°ΠΏΠΊΠ°).

И Π°ΠΊΠΎ няма Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² ΠΈΠ·Ρ…ΠΎΠ΄Π½Π°Ρ‚Π° дирСктория, Ρ‚ΠΎΠ³Π°Π²Π° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°Ρ‚Π° няма Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π·Π°ΠΌΠ΅Π½ΠΈ Π½ΠΈΡ‰ΠΎ Π½Π° мястото Π½Π° Π·Π²Π΅Π·Π΄ΠΈΡ‡ΠΊΠ°Ρ‚Π° ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΡΡŠΡ‰ΠΎ Ρ‰Π΅ сС ΠΏΡ€ΠΎΠ²Π°Π»ΠΈ с Π³Ρ€Π΅ΡˆΠΊΠ°. Има Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ срСщу Ρ‚Π°Π·ΠΈ ситуация failglob ΠΈ nullglob. Π©Π΅ трябва Π΄Π° настроим failglob, ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ‰Π΅ ΠΏΠΎΠΏΡ€Π΅Ρ‡ΠΈ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Π΄Π° бъдС изпълнСна. nullglob няма Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π° Π½ΠΈΠ· със замСстващи Π·Π½Π°Ρ†ΠΈ, ΠΊΠΎΠΉΡ‚ΠΎ Π½Π΅ Π΅ Π½Π°ΠΌΠ΅Ρ€ΠΈΠ» съвпадСниС, Π² ΠΏΡ€Π°Π·Π΅Π½ Π½ΠΈΠ· (Π½ΡƒΠ»Π΅Π²Π° дълТина), ΠΊΠΎΠ΅Ρ‚ΠΎ Π·Π° cp Ρ‰Π΅ ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ° Π³Ρ€Π΅ΡˆΠΊΠ°.

Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, Π°ΠΊΠΎ Π² ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° ΠΈΠΌΠ° хиляди Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅, Ρ‚ΠΎΠ³Π°Π²Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡŠΡ‚ със замСстващи Π·Π½Π°Ρ†ΠΈ трябва Π΄Π° сС изостави напълно. Π€Π°ΠΊΡ‚ Π΅, Ρ‡Π΅ bash Ρ€Π°Π·ΡˆΠΈΡ€ΡΠ²Π° замСстващитС символи Π² ΠΌΠ½ΠΎΠ³ΠΎ дълъг ΠΊΠΎΠΌΠ°Π½Π΄Π΅Π½ Ρ€Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ:

cp -a /souce/a /source/b /source/c …… /target

Има ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π·Π° Π΄ΡŠΠ»ΠΆΠΈΠ½Π°Ρ‚Π° Π½Π° командния Ρ€Π΅Π΄, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π°:

getconf ARG_MAX

НСка ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ максималната дълТина Π½Π° командния Ρ€Π΅Π΄ Π² Π±Π°ΠΉΡ‚ΠΎΠ²Π΅:

2097152

Или:

xargs --show-limits

ΠŸΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ Π½Π΅Ρ‰ΠΎ ΠΊΠ°Ρ‚ΠΎ:

….
Maximum length of command we could actually use: 2089314
….

Π’Π°ΠΊΠ° Ρ‡Π΅, Π½Π΅ΠΊΠ° сС ΠΎΡ‚ΠΊΠ°ΠΆΠ΅ΠΌ напълно ΠΎΡ‚ замСстващитС Π·Π½Π°Ρ†ΠΈ.

НСка просто пишСм

cp -a /source /target

И Ρ‚ΡƒΠΊ сС сблъсквамС с нСяснота Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ cp. Ако ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° /target Π½Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°, Ρ‚ΠΎΠ³Π°Π²Π° Ρ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚ΠΎΠ²Π°, ΠΎΡ‚ ΠΊΠΎΠ΅Ρ‚ΠΎ сС Π½ΡƒΠΆΠ΄Π°Π΅ΠΌ.

Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, Π°ΠΊΠΎ Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° ΠΏΠ°ΠΏΠΊΠ° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°, Ρ‚ΠΎΠ³Π°Π²Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅Ρ‚Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΊΠΎΠΏΠΈΡ€Π°Π½ΠΈ Π² ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° /target/source.

НС Π²ΠΈΠ½Π°Π³ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅ΠΌ ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° /target ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ тя ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ сС Π½ΡƒΠΆΠ΄Π°Π΅ΠΌ ΠΈ Ρ†Π΅Π»Ρ‚Π° Π½ΠΈ Π΅ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΄Π° допълним Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅Ρ‚Π΅ Π² /target с Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ‚ /source.

Ако ΠΏΠ°ΠΏΠΊΠΈΡ‚Π΅ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ ΠΈ мСстоназначСниС са ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Π½ΠΈ Π΅Π΄Π½Π°ΠΊΠ²ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠΏΠΈΡ€Π°ΠΌΠ΅ ΠΎΡ‚ /source Π² /home/source, Ρ‚ΠΎΠ³Π°Π²Π° Π±ΠΈΡ…ΠΌΠ΅ ΠΌΠΎΠ³Π»ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π°:

cp -a /source /home

И слСд ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ, Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅Ρ‚Π΅ Π² /home/source Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ допълнСни с Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ‚ /source.

Π’ΠΎΠ²Π° Π΅ Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ: ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° добавямС Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° дирСктория, Π°ΠΊΠΎ ΠΏΠ°ΠΏΠΊΠΈΡ‚Π΅ са с Π΅Π΄Π½Π°ΠΊΠ²ΠΈ ΠΈΠΌΠ΅Π½Π°, Π½ΠΎ Π°ΠΊΠΎ са Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ, Ρ‚ΠΎΠ³Π°Π²Π° ΠΈΠ·Ρ…ΠΎΠ΄Π½Π°Ρ‚Π° ΠΏΠ°ΠΏΠΊΠ° Ρ‰Π΅ бъдС поставСна Π² мСстоназначСниСто. Как Π΄Π° ΠΊΠΎΠΏΠΈΡ€Π°Ρ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ‚ /source към /target с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° cp Π±Π΅Π· замСстващи символи?

Π—Π° Π΄Π° Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈΠΌ Ρ‚ΠΎΠ²Π° Π²Ρ€Π΅Π΄Π½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅:

cp -a /source/. /target

Π’Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ са Π·Π°ΠΏΠΎΠ·Π½Π°Ρ‚ΠΈ с DOS ΠΈ Linux, Π²Π΅Ρ‡Π΅ Ρ€Π°Π·Π±Ρ€Π°Ρ…Π° всичко: във всяка ΠΏΠ°ΠΏΠΊΠ° ΠΈΠΌΠ° 2 Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΈ ΠΏΠ°ΠΏΠΊΠΈ "." ΠΈ β€œ..”, ΠΊΠΎΠΈΡ‚ΠΎ са Π²Ρ€ΡŠΠ·ΠΊΠΈ към псСвдо-ΠΏΠ°ΠΏΠΊΠΈ към Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ‚Π΅ ΠΈ ΠΏΠΎ-Π³ΠΎΡ€Π½ΠΈΡ‚Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ.

  • ΠŸΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅ cp провСрява Π·Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Π½Π΅ ΠΈ сС ΠΎΠΏΠΈΡ‚Π²Π° Π΄Π° създадС /target/.
  • Π’Π°ΠΊΠ°Π²Π° дирСктория ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° ΠΈ тя Π΅ /target
  • Π€Π°ΠΉΠ»ΠΎΠ²Π΅Ρ‚Π΅ ΠΎΡ‚ /source сС ΠΊΠΎΠΏΠΈΡ€Π°Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ Π² /target.

Π’Π°ΠΊΠ° Ρ‡Π΅, Π·Π°ΠΊΠ°Ρ‡Π΅Ρ‚Π΅ Π³ΠΎ Π² ΡƒΠ΄Π΅Π±Π΅Π»Π΅Π½Π° Ρ€Π°ΠΌΠΊΠ° Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° си ΠΈΠ»ΠΈ Π½Π° стСната:

cp -a /source/. /target

ΠŸΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Ρ‚Π°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΅ ясно. Всичко Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π±Π΅Π· Π³Ρ€Π΅ΡˆΠΊΠΈ, нСзависимо Π΄Π°Π»ΠΈ ΠΈΠΌΠ°Ρ‚Π΅ ΠΌΠΈΠ»ΠΈΠΎΠ½ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈΠ»ΠΈ Π½ΠΈΡ‚ΠΎ Π΅Π΄ΠΈΠ½.

Π”Π°Π½Π½ΠΈ

Ако трябва Π΄Π° ΠΊΠΎΠΏΠΈΡ€Π°Ρ‚Π΅ всички Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ‚ Π΅Π΄Π½Π° ΠΏΠ°ΠΏΠΊΠ° Π² Π΄Ρ€ΡƒΠ³Π°, Π½ΠΈΠ΅ Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ замСстващи символи, ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅ Π΅ Π΄Π° Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ вмСсто тях cp ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°Π½ с Ρ‚ΠΎΡ‡ΠΊΠ° Π² края Π½Π° ΠΈΠ·Ρ…ΠΎΠ΄Π½Π°Ρ‚Π° ΠΏΠ°ΠΏΠΊΠ°. Π’ΠΎΠ²Π° Ρ‰Π΅ ΠΊΠΎΠΏΠΈΡ€Π° всички Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ скрититС, ΠΈ няма Π΄Π° сС ΠΏΡ€ΠΎΠ²Π°Π»ΠΈ с ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈΠ»ΠΈ Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.

послСслов

vmspike ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈ вСрсия Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° с ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚:

cp -a -T /source /target

Оз_АлСкс

cp -aT /source /target

Π—ΠΠ‘Π•Π›Π•Π–ΠšΠ: Π³Π»Π°Π²Π½ΠΈ Π±ΡƒΠΊΠ²ΠΈ T ΠΈΠΌΠ° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ. Ако Π³ΠΎ смСситС, Ρ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ пълСн Π±ΠΎΠΊΠ»ΡƒΠΊ: посоката Π½Π° ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅ Ρ‰Π΅ сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ.
Благодаря:

  • компания RUVDS.COM Π·Π° ΠΏΠΎΠ΄ΠΊΡ€Π΅ΠΏΠ° ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π΄Π° ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Ρ‚Π΅ във вашия Π±Π»ΠΎΠ³ Π½Π° Π₯Π°Π±Ρ€Π΅.
  • На ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π’Ρ€ΠΎΠΉΠ½Π° концСпция. ΠšΠ°Ρ€Ρ‚ΠΈΠ½Π°Ρ‚Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ голяма ΠΈ Π΄Π΅Ρ‚Π°ΠΉΠ»Π½Π°, ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΎΡ‚Π²ΠΎΡ€ΠΈ Π² ΠΎΡ‚Π΄Π΅Π»Π΅Π½ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†.

PS Моля, ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°ΠΉΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡ‚Π΅, Π½Π° Π»ΠΈΡ‡Π½ΠΎ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅. Π£Π²Π΅Π»ΠΈΡ‡Π°Π²Π°ΠΌ ΠΊΠ°Ρ€ΠΌΠ°Ρ‚Π° си Π·Π° Ρ‚ΠΎΠ²Π°.

cp ΠΊΠΎΠΌΠ°Π½Π΄Π°: ΠΊΠΎΠΏΠΈΡ€Π°ΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΠ°ΠΏΠΊΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ Π² *nix

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€