cp Command: si sax ah u koobiyaya faylalka faylalka * nix

cp Command: si sax ah u koobiyaya faylalka faylalka * nix

Maqaalkani waxa uu daaha ka qaadi doonaa qaar ka mid ah waxyaabaha aan caddayn ee la xidhiidha isticmaalka duurjoogta marka la koobiyeeyo, dhaqanka amarka madmadow cp markaad koobiyeynayso, iyo sidoo kale hababka kuu ogolaanaya inaad si sax ah u koobi karto tiro badan oo faylal ah adigoon ka boodin ama burburin.

Aynu nidhaahno waxaan u baahanahay inaan wax walba ka koobiyeyno galka / isha ilaa galka bartilmaameedka.

Waxa ugu horreeya ee maskaxda ku soo dhacaya:

cp /source/* /target

Aan isla markiiba u saxno amarkan:

cp -a /source/* /target

Furaha -a wuxuu ku dari doonaa koobiyeynta dhammaan sifooyinka, xuquuqaha oo ku dari doona soo noqnoqoshada. Marka taran sax ah ee xuquuqda aan loo baahnayn, fure ayaa ku filan -r.

Koobiyaynta ka dib, waxaan ogaan doonaa in aan dhammaan faylasha la guurinin - faylasha ka bilaabma dhibic sida:

.profile
.local
.mc

iyo wixii la mid ah.

Maxay tani u dhacday?

Sababtoo ah kaararka duurjoogta ah waxaa lagu farsameeyaa qolofka (bash xaalad caadi ah). Sida caadiga ah, bash wuxuu iska indhatiraa dhammaan faylasha ka bilaabma dhibco, maadaama uu ula dhaqmo si qarsoon. Si aan uga fogaano dhaqankan waa inaan bedelnaa dabeecadda bash adoo isticmaalaya amarka:

shopt -s dotglob

Si loo hubiyo in isbeddelka habdhaqankani uu sii jiro ka dib dib-u-kicinta, waxaad abuuri kartaa faylka wildcard.sh oo leh amarkan galka /etc/profile.d (Waxaa laga yaabaa in qaybintaadu leedahay gal kale).

Oo haddii aysan jirin wax faylal ah oo ku jira tusaha isha, markaa qoloftu ma awoodi doonto inay wax ka beddesho meel ka mid ah calaamadda, iyo koobiyeynta sidoo kale waxay ku fashilmi doontaa qalad. Waxaa jira doorashooyin ka soo horjeeda xaaladdan failglob ΠΈ nullglob. Waxaan u baahan doonaa inaan dejino failglob, taasoo ka hortagaysa in amarka la fuliyo. nullglob ma shaqeyn doono, maadaama ay u beddesho xarig leh kaararka duurjoogta ah ee aan helin tabar ka mid ah xarig madhan (dhererka eber), kaas oo loogu talagalay cp waxay keeni doontaa qalad

Si kastaba ha noqotee, haddii ay jiraan kumanaan faylal ah ama ka badan oo ku jira galka, markaa habka duurjoogta ah waa in la iska dhaafo gebi ahaanba. Xaqiiqdu waxay tahay bash wuxuu ku balaadhiyaa khadadka taliska oo aad u dheer sida:

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

Waxaa jira xaddid dhererka khadka taliska, kaas oo aan ku ogaan karno annaga oo adeegsanayna amarka:

getconf ARG_MAX

Aynu helno dhererka ugu sarreeya ee khadka taliska ee bytes:

2097152

Ama:

xargs --show-limits

Waxaan helnaa wax sida:

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

Haddaba, aynu wada samayno la'aantood.

Aynu qorno uun

cp -a /source /target

Oo halkan waxaa ina soo food saartay madmadow habdhaqan cp. Haddii galka / bartilmaameedka uusan jirin, markaa waxaan heli doonaa waxaan u baahanahay.

Si kastaba ha ahaatee, haddii galka bartilmaameedku jiro, markaas faylasha waxaa lagu koobiyeynayaa galka / target/source.

Mar walba horey uma tirtiri karno galka bartilmaameedka, maadaama laga yaabo inay ku jiraan faylal aan u baahanahay, hadafkayagu, tusaale ahaan, waa inaan ku kabno faylalka ku jira / bartilmaameedka faylalka / isha.

Haddii faylalka isha iyo meesha loo socdo lagu magacaabo isku mid, tusaale ahaan, waxaan ka koobiyneynay / isha / guriga / isha, markaa waxaan isticmaali karnaa amarka:

cp -a /source /home

Kadibna koobiyeynta ka dib, faylasha ku jira /guriga/source waxa lagu kabi doonaa faylal/source.

Tani waa dhibaato macquul ah: waxaan ku dari karnaa faylasha tusaha meesha loo socdo haddii faylalka lagu magacaabo isku mid, laakiin haddii ay ka duwan yihiin, markaa faylka isha ayaa la gelin doonaa gudaha meesha loo socdo. Sida loo koobiyeeyo feylasha laga soo bilaabo/source to/target iyadoo la isticmaalayo cp la'aan?

Si aan uga gudubno xaddidan waxyeellada leh, waxaan isticmaalnaa xal aan caddayn:

cp -a /source/. /target

Kuwa aqoonta u leh DOS iyo Linux mar hore ayay fahmeen wax walba: gudaha gal kasta waxaa ku jira 2 faylal oo aan la arki karin "." iyo "...", kuwaas oo ah faylal been abuur ah oo ku xidha hagayaasha hadda jira iyo kuwa sare.

  • Marka koobiyeynta cp wuxuu hubiyaa jiritaanka wuxuuna isku dayaa inuu abuuro / bartilmaameed/.
  • Hagaha noocaas ah ayaa jira oo waa / bartilmaameed
  • Faylasha ka yimid / isha si sax ah ayaa loo koobiyeeyay.

Markaa, ku soo deldeji qaab geesinimo leh oo xusuustaada ah ama gidaarka dusheeda:

cp -a /source/. /target

Dhaqanka amarkani waa cad yahay. Wax walba waxay ku shaqeyn doonaan khalad la'aan, iyadoon loo eegin haddii aad haysato hal milyan oo fayl ama midnaba.

natiijooyinka

Haddii aad u baahan tahay inaad nuqul ka sameyso oo dhan Faylasha hal gal ilaa mid kale, ma isticmaalno kaararka duurjoogta ah, waxaa fiican in la isticmaalo beddelkooda cp oo lagu daray muddada dhamaadka galka isha. Tani waxay koobi doontaa dhammaan faylasha, oo ay ku jiraan kuwa qarsoon, oo kuma dhici doono malaayiin faylal ama fayl la'aanba.

Kadib

vmspike soo jeediyay nooca amarka leh natiija la mid ah:

cp -a -T /source /target

Oz_Alex

cp -aT /source /target

FIIRO GAAR AH: kiiska warqadda T ayaa macne leh. Haddii aad isku qasto, waxaad heli doontaa qashin dhammaystiran: jihada koobiyeynta ayaa isbedeli doonta.
Mahadsanid:

  • Shirkadaha RUVDS.COM Taageerada iyo fursadda aad ku daabacan karto bloggaaga HabrΓ©.
  • Sawirkiiba Fikradda Saddex-geesoodka ah. Sawirku waa mid aad u ballaaran oo faahfaahsan, waxaa lagu furi karaa daaqad gaar ah.

PS Fadlan ku soo dir wixii khalad ah ee aad ku aragto fariin gaar ah. Waxaan u kordhiyaa karma tan.

cp Command: si sax ah u koobiyaya faylalka faylalka * nix

Source: www.habr.com

Add a comment