cp taelo: kopitsa lifaele tsa lifaele ka nepo ho * nix

cp taelo: kopitsa lifaele tsa lifaele ka nepo ho * nix

Sengoliloeng sena se tla senola lintho tse ling tse sa totobalang tse amanang le tšebeliso ea dikarete tse hlaha ha o kopitsa, boits'oaro bo sa utloahaleng ba taelo cp ha u kopitsa, hammoho le mekhoa e u lumellang ho kopitsa palo e kholo ea lifaele ka nepo ntle le ho tlola kapa ho soahlamana.

Ha re re re hloka ho kopitsa ntho e 'ngoe le e' ngoe ho tloha ho / mohloli foldareng ho ea ho foldareng ea / target.

Ntho ea pele e tlang kelellong ke:

cp /source/* /target

Ha re lokiseng taelo ena hanghang ho:

cp -a /source/* /target

Senotlolo -a e tla eketsa kopi ea litšobotsi tsohle, litokelo le ho eketsa phetisetso. Ha tlhahiso e nepahetseng ea litokelo e sa hlokehe, senotlolo se lekane -r.

Kamora ho kopitsa, re tla fumana hore ha se lifaele tsohle tse kopilitsoeng - lifaele tse qalang ka letheba joalo ka:

.profile
.local
.mc

le tse ling tse joalo.

Ke hobane’ng ha see se etsahetse?

Hobane li-wildcards li sebetsoa ke khetla (bash boemong bo tloaelehileng). Ka kamehla, bash e tla hlokomoloha lifaele tsohle tse qalang ka matheba, kaha e li nka li patiloe. Ho qoba boitšoaro bona re tla tlameha ho fetola boitšoaro bash sebelisa taelo:

shopt -s dotglob

Ho etsa bonnete ba hore phetoho ena ea boitšoaro e tsoela pele ka mor'a ho qala bocha, o ka etsa faele ea wildcard.sh ka taelo ena foldareng. /etc/profile.d (Mohlomong kabo ea hau e na le foldara e fapaneng).

'Me haeba ho se na lifaele bukeng ea mohloli, joale khetla e ke ke ea khona ho kenya ntho leha e le efe sebakeng sa asterisk,' me ho kopitsa ho tla hlōleha ka phoso. Ho na le likhetho khahlano le boemo bona failglob и nullglob. Re tla hloka ho beha failglob, e tla thibela hore taelo e se ke ea etsoa. nullglob e ke ke ea sebetsa, kaha e fetola khoele e nang le li-wildcards tse sa kang tsa fumana papali hore e be khoele e se nang letho (bolelele ba zero), eo bakeng sa cp e tla baka phoso.

Leha ho le joalo, haeba ho na le lifaele tse likete kapa ho feta foldareng, joale mokhoa oa wildcards o lokela ho tloheloa ka ho feletseng. 'Nete ke hore bash e holisa li-wildcards molaong o molelele oa taelo joalo ka:

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

Ho na le moeli oa bolelele ba mola oa taelo, oo re ka o fumanang ka ho sebelisa taelo:

getconf ARG_MAX

Ha re fumane bolelele bo boholo ba mola oa taelo ka li-byte:

2097152

Kapa:

xargs --show-limits

Re fumana ntho e kang:

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

Kahoo, ha re etseng ntle le li-wildcards ka botlalo.

Ha re ngoleng feela

cp -a /source /target

'Me mona re tobane le ho se utloisisehe ha boitšoaro cp. Haeba foldara ea / target ha e eo, joale re tla fumana seo re se hlokang.

Leha ho le joalo, haeba foldara e reretsoeng e le teng, lifaele li tla kopitsoa ho foldareng ea /target/source.

Re ke ke ra hlola re hlakola foldara ea /target esale pele, kaha e kanna ea ba le lifaele tseo re li hlokang mme sepheo sa rona, mohlala, ke ho tlatselletsa lifaele ho / target with files from / source.

Haeba mohloli le li-folders li ne li bitsoa ka tsela e tšoanang, mohlala, re ne re kopitsa ho tloha / mohloli ho ea / lapeng / mohloli, joale re ka sebelisa taelo:

cp -a /source /home

'Me ka mor'a ho kopitsa, lifaele tse ho /home/source li ne li tla tlatsetsoa ka lifaele tse tsoang ho /source.

Ena ke bothata bo utloahalang: re ka eketsa lifaele bukeng ea moo re eang teng haeba li-folders li bitsoa ka tsela e tšoanang, empa haeba li fapane, joale mohloli oa mohloli o tla behoa ka hare ho sebaka seo u eang ho sona. Mokhoa oa ho kopitsa lifaele ho tloha / mohloli ho ea ho / sepheo u sebelisa cp ntle le li-wildcards?

Ho qoba moeli ona o kotsi, re sebelisa tharollo e sa bonahaleng:

cp -a /source/. /target

Ba tloaelaneng le DOS le Linux ba se ba ntse ba utloisisa ntho e 'ngoe le e' ngoe: ka har'a foldara ka 'ngoe ho na le lifoldara tse 2 tse sa bonahaleng "." le "..", e leng lifoldara tsa pseudo tse hokahanyang li-directory tsa hajoale le tse holimo.

  • Ha o kopitsa cp e hlahloba boteng ebe e leka ho bopa /target/.
  • Lenane le joalo le teng 'me ke /target
  • Lifaele tse tsoang ho /mohloli li kopitsoa ho /target ka nepo.

Kahoo, e fanyehe ka foreime e tiileng mohopolong oa hau kapa leboteng:

cp -a /source/. /target

Boitšoaro ba taelo ena bo hlakile. Ntho e ngoe le e ngoe e tla sebetsa ntle le liphoso, ho sa tsotelehe hore na o na le lifaele tse milione kapa ha ho letho ho hang.

fumanoeng ke

Haeba u hloka ho kopitsa tsohle lifaele ho tloha foldareng e 'ngoe ho ea ho e' ngoe, ha re sebelise li-wildcards, ho molemo ho li sebelisa ho e-na le hoo cp mmoho le nako qetellong ya foldara ya mohlodi. Sena se tla kopitsa lifaele tsohle, ho kenyelletsa le tse patiloeng, 'me se ke ke sa hloleha ka limilione tsa lifaele kapa ho se na lifaele ho hang.

Afterword

vmspike e khothalelitse mofuta oa taelo o nang le sephetho se ts'oanang:

cp -a -T /source /target

Oz_Alex

cp -aT /source /target

HLOKOMELA: nyeoe ea lengolo T e na le moelelo. Haeba u e kopanya, u tla fumana lithōle tse feletseng: tataiso ea ho kopitsa e tla fetoha.
Kea leboha:

  • Likhamphani RUVDS.COM bakeng sa tšehetso le monyetla oa ho phatlalatsa blog ea hau ho Habré.
  • Ka setšoantšo Maikutlo a Mararo. Setšoantšo se seholo haholo ebile se na le lintlha tse qaqileng, se ka buloa ka fensetere e fapaneng.

PES Ka kopo, romella liphoso tseo u li bonang molaetsang oa lekunutu. Ke eketsa karma ea ka bakeng sa sena.

cp taelo: kopitsa lifaele tsa lifaele ka nepo ho * nix

Source: www.habr.com

Eketsa ka tlhaloso