Ko'pchiligimiz, agar bu eng katta qism bo'lmasae biz grafik interfeysdan foydalanishga odatlanganmiz yoki gapirish uchun ish stoli muhiti. Ko'chirish, tahrirlash vazifalari, fayllar yoki papkalar orasida boshqa nom bilan nomlang ular odatda oddiygina bir necha marta bosish bilan amalga oshiriladi.
Ammo ushbu harakatlarni serverda ishlatishingiz kerak bo'lganda nima bo'ladi chunki ularning aksariyati odatda faqat buyruq konsolidan boshqariladi, ammo bu odatda maxsus serverlarda ishlaydi buning qanday amalga oshirilishini bilish hech qachon zarar qilmaydi chunki u qachon band bo'lishi mumkinligini hech qachon bilmayapsiz.
Menga shunday bo'lgan: ba'zi hollarda grafik muhitimni yo'qotib qo'ydim va uni tiklash uchun konsoldan foydalanishim kerak edi, ammo bu boshqa nuqta.
Kun bugun men sizlarga bizga yordam beradigan oddiy buyruqlar bilan bo'lishish uchun keldim fayllarni nusxalash yoki ko'chirish vazifalarini bajarish.
Indeks
Linuxda fayllar yoki papkalarni qanday ko'chirish mumkin?
Birinchi narsa terminalga ega bo'lish bo'ladi bularning barchasi bizga yordam beradigan bizning vositamiz bo'ladi, ikkinchi narsa - ichida matnli hujjatlar bo'lgan bir nechta papkalarni yaratish bu ma'lumotni buzmaslik yoki yo'qotmaslik uchun.
Eng odatiy narsa katalog faylini ko'chirishdir Buning uchun biz mv buyrug'idan foydalanamiz:
mv archivo.txt /home/usuario/Documentos/prueba
Bu erda biz file.txt-ni hujjatlar papkasidagi test papkasiga ko'chirmoqdamiz. Buning uchun biz hozirda file.txt joylashgan katalogda joylashganligimizni hisobga olamiz
Bir vaqtning o'zida bir nechta fayllarni ko'chirishni xohlaganimizda, sintaksis turi quyidagicha bo'ladi:
mv archivo.1 archivo.2 archivo.3 /ruta/de/destino
Endi juda foydali narsa * dan foydalanish fayllar bir xil nomga ega bo'lsa, masalan:
Amd-gpu…
Amd-gpu-pro ..
Amd-haydovchi ...
Shunday qilib, biz ko'rib turganimizdek, barcha fayllarni bir xil nomenklaturaga o'tkazish uchun bir xil "AMD" bazasiga ega, biz quyidagilarni qilamiz:
mv AMD* /ruta/de/destino
Xuddi shu narsa bir xil turdagi barcha fayllar uchun amal qiladi, masalan .doc, .xls, .deb, .rpm va boshqalar. Ularni ko'chirish uchun biz faqat murojaat qilamiz
mv *.deb /ruta/de/destino
Shu paytgacha u qanday ishlashi va vazifani qanday qilib har xil usulda osonlashtirishi mumkinligi biroz aniq, ammo katalogdagi hamma narsani, ham fayllar, ham pastki papkalarni ko'chirishni xohlasak nima bo'ladi.
Buning uchun biz * dan foydalanamiz, masalan, men wordpress-dan ochgan hamma narsani ikkita oldingi katalogga ko'chirmoqchiman:
mv wordpress/* …/
Buyruq haqida bir oz ko'proq bilish uchun biz uning odamidan yoki -help parametri yordamida foydalanishimiz mumkin, bu erda biz uning barcha parametrlarini ko'rib chiqamiz.
Linuxda fayllarni qanday nusxalash mumkin?
Ushbu holat uchun deyarli bunga o'xshamaydi, fayllarni yoki papkalarni boshqasidan ikkinchisiga ko'chirish uchun bu erda fayllar va papkalarni paydo bo'lgan joyda saqlang va tanlangan katalogda nusxasini yarating.
Un fayl yoki papkani nusxalash uchun oddiy buyruq bitta katalogdan boshqasiga:
cp objetoacopiar rutadedestino
Bunga qarashning aniq usuli:
cp archivo.txt /ruta/de/destino
Ushbu buyruq odatda tahrir qilinadigan fayl yoki papkaning zaxira nusxalarini yaratish uchun juda ko'p ishlatiladi, chunki u umumiy nusxasini yaratadi, ammo boshqa nom bilan amaliy misol:
cp log.txt log.bak
para bir nechta fayl yoki papkalarni nusxalash:
cp archivo1 /carpeta1 /carpeta/carpeta /ruta/de/destino
Endi agar biz joylashtirilgan papkani o'z ichiga olgan hamma narsani nusxalashni xohlasak boshqa katalogga:
cp /* /ruta/de/destino
Endi katalogni bir joydan ikkinchi joyga ko'chirmoqchi bo'lsak
cp /directorio /ruta/de/destino
Nusxalashtirmoqchi bo'lgan katalogdan bir daraja pastda bo'lish juda muhim, chunki agar biz uning ichida bo'lsak, to'liq yo'lni ko'rsatishimiz kerak, chunki agar biz buyruqni faqat men qo'yganim kabi qo'ysak, u faqat bo'sh katalog yaratadi.
Va nihoyat, uning barcha parametrlarini bilmoqchi bo'lsak, uning odamiga yoki yordamiga tayanamiz
Boshqa so'zlarsiz, ular juda oddiy buyruqlar, ulardan foydalanish sizga katta yordam beradi va hatto ularga ehtiyot bo'lishingiz kerak, chunki har doim -r parametri bilan ishlatiladigan rekursiv shakldan foydalanish tavsiya etiladi.
2 ta sharh, o'zingizni qoldiring
Agar men barcha fayllarni bitta papkadan ikkinchisiga nusxalashni xohlasam, u holda bo'ladi
cp / * / name / folder / destination ??
nusxalash uchun fayllarim bo'lgan papkada turibmanmi?
Manba-fayldan maqsadli faylga ma'lum miqdordagi yozuvlarni nusxalashni xohlayman, ba'zida bu yozuvdan tortib to intervalgacha bo'lgan yozuvdir, buni qanday qilishim mumkin?