- Korištenje naredbe CMD Osnovne i napredne metode za upravljanje datotekama i mapama u Windows.
- Praktični primjeri automatizacije s .cmd batch datotekama i FOR petljama.
- Razlike između zadataka upravljanja datotekama u CMD-u i u terminalu Linux.
- Ključne dijagnostičke i sistemske naredbe korisne uz upravljanje datotekama.
Ako često radite s mnogo dokumenata, mapa ili projekata, učenje korištenja Windows naredbi i .cmd datoteka može vam uštedjeti ogromnu količinu vremena. Umjesto klikanja po kliku, možete automatizirati repetitivne zadatke poput kopiranja, premještanja, preimenovanja, stvaranja cijelih struktura direktorija ili čak izvođenja malih revizija sustava iz naredbenog retka.
U ovom članku vidjet ćete primjere iz stvarnog svijeta upravljanja datotekama i mapama pomoću CMD-a , kombinirajući osnovne naredbe s naprednijima i petljama. Također su uključene reference na dijagnostičke uslužne programe, a gdje je to relevantno, napravljene su usporedbe s ekvivalentnim naredbama na Linux sustavima kako biste dobili cjelovitije razumijevanje. Cilj je da budete u mogućnosti kopirati, prilagoditi i ponovno upotrijebiti ove primjere u vlastitim .cmd skriptama i naučiti kako automatizirati zadatke upravljanja datotekama u sustavu Windows.
Osnovne naredbe za upravljanje direktorijima i datotekama u CMD-u
Prije nego što se udubimo u skripte i automatizaciju, dobro je savladati bitne naredbe za direktorije i datoteke koje ćete stalno koristiti u naredbenom retku sustava Windows .
Za navigaciju kroz sistemske mape uglavnom se koristi CD i CHDIRObje rade istu stvar: prikazuju ili mijenjaju trenutni direktorij. Tipični primjeri bi bili cd \ doći do korijena jedinstva, cd .. podići razinu ili cd /d D:\Proyectos za promjenu pogona i mape u jednom koraku.
Ako želite vidjeti što se nalazi unutar mape, naredba zvjezdica je DIRBez parametara, dir Navodi datoteke i poddirektorije trenutnog direktorija, ali s dir /b Imena ćete dobiti samo u jednostavnom formatu i s dir /a Također ćete uključiti skrivene i sistemske elemente. Ostali korisni modifikatori su /o Za sortiranje (po imenu, veličini, datumu itd.) i za napredno pretraživanje možete koristiti alate iz trenutno pretraživanje datoteka.
Za stvaranje novih mapa imate MD y mkdirkoji su ekvivalentni: mkdir NuevaCarpeta o md Datos\2025Sustav se ne prebacuje automatski na tu mapu, već je samo stvara, pa ćete je morati kasnije otvoriti. cd ako želite ući.
Kada trebate izbrisati direktorije, imate RD i RMDIROsnovna upotreba bi bila rmdir NombreCarpetašto radi samo ako je mapa prazna. Za brisanje mape sa svim njezinim sadržajem obično koristite rmdir /s /q Carpeta, gdje /s briše poddirektorije i datoteke i /q izbjegavati potvrde.
Što se tiče pojedinačnih datoteka, najizravnija naredba za njihovo brisanje je DEL (ili njegov alias ERASE). Možete koristiti del archivo.txt, del /q /f *.* prisiliti tiho brisanje čak i datoteka koje su samo za čitanje ili del /s *.tmp za čišćenje privremenih datoteka iz cijele strukture mapa.
Za kopiranje datoteka koristite KOPIRATIkoji se koristi za dupliciranje jedne ili više datoteka na drugoj lokaciji, na primjer copy informe.docx D:\CopiasDa biste ih premjestili ili preimenovali, morate... MOVEkoji se koristi i za promjenu mape datoteke i za davanje novog imena: move viejo.txt nuevo.txt o move archivo.txt C:\Destino.
Najmasovnije promjene imena vrše se s PONOVNO ILI PREIMENUJNjegov osnovni oblik je ren archivo1.txt archivo2.txtAli također podržava zamjenske znakove, što vam omogućuje izmjenu više datoteka odjednom, nešto što ćemo kasnije vidjeti u kombinaciji s petljama.
Popisivanje, dokumentiranje i vizualizacija struktura datoteka

Jedan od uobičajenih zadataka pri upravljanju velikom količinom sadržaja je dobivanje popisa datoteka ili mapa direktorija za dokumentiranje projekata, izradu inventara ili jednostavno jasnu referencu.
Najosnovnija naredba za popisivanje je DIRAli u kombinaciji s preusmjeravanjima, omogućuje vam generiranje izvješća. Na primjer, dir /b > listado.txt Izradite tekstualnu datoteku koja sadrži samo nazive stavki u trenutnoj mapi. Možete primijeniti filtere kao što su dir *.ext /o:-s > lista_ext.txt za popis samo datoteka određene ekstenzije i njihovo sortiranje.
Ako vam je potreban vizualniji prikaz strukture, naredba STABLO Prikazuje stablo direktorija pomoću ASCII znakova. tree Ruta Od tog trenutka nadalje vidjet ćete mape, a ako dodate modifikator /f (na primjer tree C:\Proyectos /fTakođer ćete vidjeti datoteke koje se nalaze u svakom direktoriju, a za brži pregled datoteka najbolje je koristiti alate poput trenutni pregled datoteke.
Ovi popisi su vrlo praktični za tehničku dokumentaciju, e-poštu ili priručnike , jer vam omogućuju da na prvi pogled vizualizirate organizaciju projekta, od glavnih mapa do konačnih datoteka koje ga čine.
Za prikaz sadržaja tekstualnih datoteka bez otvaranja editora, CMD nudi sljedeće: TIP. S type notas.txt Sadržaj se ispisuje u konzolu. Ako je datoteka jako duga, uobičajeno ju je kombinirati s VIŠEkoristeći nešto poput type log.txt | more za pregled sadržaja stranicu po stranicu.
CMD također pamti prethodne naredbe zahvaljujući DOSKEY-u , koji vam omogućuje dohvaćanje i uređivanje prethodnih naredbi. Nije naredba za popisivanje datoteka, ali u kombinaciji s ponavljanjem uzorka može uvelike ubrzati vaš tijek rada pri sastavljanju više sličnih popisa.
Masovno stvaranje datoteka i mapa pomoću FOR petlji
Kada trebate stvoriti desetke ili stotine stavki, ručno to raditi je ludost. Tu dolazi do izražaja naredba FOR , koja u .cmd datotekama postaje jedan od najmoćnijih alata za automatizaciju zadataka.
Vrlo korisna varijanta je ZA /Lkoji iterira kroz niz brojeva. Na primjer, za stvaranje numeriranih datoteka možete koristiti nešto poput:
for /L %i in (0,1,10) do echo. > "%i hola.md"Ova naredba generira datoteke od "0 hola.md" do "10 hola.md". Ako želite mape umjesto datoteka, jednostavno promijenite echo. > od mkdir.
Drugi tipičan slučaj je kada imate popis imena u tekstualnoj datoteci I želite pretvoriti svaki redak u datoteku ili direktorij. Tu ovo dolazi do izražaja. ZA /F, Na primjer:
for /f "tokens=*" %i in (nombres.txt) do mkdir "%i"
stvorit će mapu za svaki redak nombres.txtSlično tome, mogli biste generirati datoteke s echo. > "%i.md" unutar petlje.
Vrlo praktičan način organiziranja projekata je stvaranje mape za svaku postojeću datoteku i premjestiti u odgovarajuću datotekuS nečim poput:
for %i in (*) do mkdir "%~ni" && move "%i" "%~ni"
Sustav stvara direktorij s istim nazivom kao i datoteka (bez ekstenzije) i automatski je premješta u njega.
FOR petlje su također korisne za spajanje više tekstualnih datoteka u jednom. Na primjer:
for %i in (*.txt) do type "%i" >> salida.txt && echo. >> salida.txt
Čita sve .txt datoteke u mapi i ispisuje njihov sadržaj u salida.txt i dodavanjem prijeloma redaka između njih radi lakšeg čitanja.
Ako želite da rezultirajuća datoteka također uključuje naziv svake originalne datoteke Prije sadržaja petlje, možete je modificirati:
for %i in (*.txt) do echo %i >> salida.txt && type "%i" >> salida.txt && echo. >> salida.txtTo će vam dati nešto slično spojenom indeksu.
Kopiranje, premještanje i kloniranje struktura mapa
Upravljanje datotekama u sustavu Windows nije ograničeno samo na kopiranje dokumenta s jednog mjesta na drugo. Često je potrebno klonirati cijele strukture, replicirati datoteku u više mapa ili precizno premjestiti velike količine podataka.
Za jednostavne kopije, KOPIRATI Dobro funkcionira: copy archivo.txt D:\DestinoAko želite kopirati više datoteka odjednom, možete koristiti zamjenske znakove: copy *.docx C:\InformesOva naredba također omogućuje spajanje datoteka korištenjem znakova +, iako je za složenije zadatke obično bolje koristiti FOR petlje kao što smo već vidjeli.
Kada vam treba nešto robusnije, ovo dolazi do izražaja. xcopykoji kopira cijela stabla direktorija. S xcopy Origen Destino /t Klonirate samo strukturu mapa, bez datoteka, dok s /t /e Također uključujete prazne poddirektorije. Ovo je savršeno za montiranje predlošci projekata ili duplicirati složene arhitekture bez povlačenja sadržaja.
Za stvarno napredno kopiranje, vrlo je popularan u modernim Windowsima. RobocopyOmogućuje ponovne pokušaje, nastavak prekinutih sigurnosnih kopija, filtriranje po datumu, veličini, atributima itd. Jednostavan primjer bio bi:
robocopy C:\Origen D:\Destino /E
Ovo kopira sve datoteke i podmape, uključujući i prazne. Osim toga, za uštedu prostora možete Komprimirajte i dekomprimirajte datoteke pomoću naredbi prilikom pripreme kopija. Idealno je za migracije podataka ili sinkronizirati velike mape.
Ako želite ono što želite kopirati jednu datoteku u sve podmape imenika (na primjer, readme.txt), možete kombinirati FOR s XCOPY:
for /D %a in (*) do xcopy /Y readme.txt "%a"Modifikator /D Zbog toga petlja iterira samo kroz direktorije.
Što se tiče premještanja predmeta, naredba MOVE Koristi se i za premještanje datoteka između mapa i za preimenovanje direktorija. Na primjer:
move C:\Temp\archivo.txt C:\Datos\archivo.txt
Pa dobro:
move CarpetaAntigua CarpetaNueva
preimenovati mapu uz zadržavanje iste razine.
Masovno preimenovanje i manipulacija nazivima datoteka
Još jedan vrlo čest zadatak u administraciji s CMD-om je preimenovanje više datoteka odjednom , na primjer dodavanje prefiksa, sufiksa ili promjena ekstenzije na homogen način.
Ključna naredba ovdje je REN (ili PREIMENUJ). Za nešto jednostavno, ren foto1.jpg viaje1.jpgAli njegova prava snaga dolazi do izražaja kada ga kombinirate sa zamjenskim znakovima i FOR petljama. Na primjer, za dodavanje teksta svim datotekama u mapi, možete koristiti:
for %a in (*.*) do ren "%a" "prefijo - %a".
Ako je ono što vas zanima dodajte sufiks Za svaku datoteku, obrazac bi bio sličan:
for %a in (*.*) do ren "%a" "%~na - sufijo%~xa"
gdje %~na predstavlja ime bez ekstenzije i %~xa originalni nastavak. Na taj način izbjegavate lomljenje nastavaka.
Kada trebate preimenovati istu datoteku u više mapa i podmapa, možete koristiti ZA /R, koji rekurzivno prolazi kroz stablo direktorija. Primjer:
for /R %G in (readme.txt) do ren "%G" "readme.md"
tražit će sve readme.txt od trenutnog direktorija prema dolje i promijenit će ih u readme.md.
Imajte na umu da REN radi samo s imenima, pa ako želite napraviti složenije ili zamjene temeljene na uzorcima, možda biste trebali kombinirati CMD s drugim alatima ili jezicima, ali za brze zadatke sortiranja i čišćenja, REN zajedno s FOR pokriva većinu potreba.
Sigurno brisanje datoteka i direktorija
U svakom administrativnom zadatku dođe vrijeme za brisanje datoteka i mapa koje više nisu potrebne . Da biste to ispravno učinili iz CMD-a, potrebno je znati nekoliko opcija kako biste izbjegli iznenađenja ili nepotrebne potvrde.
Za pojedinačne datoteke, standardna naredba je DELMožete ga koristiti bez parametara, ali je praktičnije raditi s njim:
del /Q archivo.log
tako da ne traži potvrdu ili s /F Ako želite prisilno brisati datoteke samo za čitanje ili izbrisati više datoteka određene ekstenzije u cijelom stablu, del /S *.bak Bit će odgovoran za prolazak kroz poddirektorije.
Ako trebate izbrisati sadržaj mape, ali ostaviti mapu praznom, možete kombinirati OD i ZA fino podesiti što eliminirate, a što ne, ili iz čega crpiti del /Q /F *.* unutar željenog direktorija, prethodno provjeravajući da nema ništa kritično.
Što se tiče direktorija, kao što je već rečeno, RMDIR ili RD s parametrom /S Brišu i mapu i sve što ona sadrži: rmdir /S /Q C:\Temp\Antiguo. Koristiti /Q Izbjegava potvrde i uobičajen je u automatiziranim skriptama.
Iako ove naredbe brišu datoteke za korisnika, na niskoj razini one nisu uvijek nepovratne, pa je u osjetljivim okruženjima preporučljivo kombinirati ovo čišćenje sa specifičnim alatima za sigurno brisanje . Međutim, s gledišta svakodnevne administracije, DEL i RMDIR su obično dovoljni.
Napredne CMD naredbe vezane uz datoteke i sustav
Osim isključivo operacija s datotekama, naredbeni redak sustava Windows uključuje dobar repertoar naprednih naredbi koje utječu na atribute, dozvole ili integritet podataka , što je vrlo korisno kada se već upoznate s osnovama.
Klasik je pripisuje, koji prikazuje ili mijenja atribute datoteke: samo za čitanje, skriveno, sistemsko itd. Na primjer:
attrib +r +h archivo.txt
Označava ga kao samo za čitanje i skriveno, dok znakovima minusa (-r -hUklonili biste te atribute. To se može primijeniti rekurzivno s /S direktoriji koji već imaju /DZa detaljnije preglede atributa i šifriranja, pogledajte provjeriti atribute datoteka i šifriranje.
Povezanost između ekstenzija datoteka i vrsta datoteka upravlja se pomoću ASSOC-a i FTYPE-a . ASSOC povezuje ekstenziju (na primjer, .txt) s logičkom vrstom datoteke, a FTYPE povezuje tu vrstu s određenom naredbom. Zajedno vam omogućuju prilagodbu načina otvaranja određenih datoteka iz preglednika datoteka ili naredbenog retka.
Za rad s NTFS dozvolama postoji ICACLS koji generira, mijenja i vraća popise kontrole pristupa (DACL-ove). Pomoću njega možete, na primjer, izvesti dozvole mape u datoteku, a zatim ih vratiti na drugu lokaciju - što je vrlo korisno pri premještanju osjetljivih podataka između poslužitelja ili diskova.
Ako sumnjate na oštećene datoteke, SFC i CHKDSK su vaši saveznici. SFC provjerava integritet sistemskih datoteka i popravlja oštećene pomoću predmemoriranih kopija, dok CHKDSK provjerava i logičku strukturu datotečnog sustava i površinu diska, označavajući loše sektore i ispravljajući probleme s direktorijima.
Za sveobuhvatnije administrativne zadatke, DISKPART vam omogućuje upravljanje particijama i volumenima iz naredbenog retka, FSUTIL nudi napredne funkcije za volumene i datotečne sustave, a BCDEDIT se koristi za izmjenu konfiguracije pokretanja sustava Windows . Iako to nisu naredbe za datoteke u tradicionalnom smislu, one izravno utječu na to kako i gdje se podaci pohranjuju i njima se upravlja.
Varijable okruženja, .cmd skripte i tijek izvršavanja
Kada počnete pisati vlastite .cmd batch datoteke , nije dovoljno znati pojedinačne naredbe: morate kontrolirati tok izvršavanja, varijable i okruženje konzole.
Naredba SET Omogućuje vam prikaz, stvaranje ili izmjenu varijabli okruženja. Na primjer, set RUTA_PROYECTO=C:\Proyectos\Web definirajte varijablu koju zatim možete ponovno koristiti u istom rukopis kao %RUTA_PROYECTO%Kako bi se osiguralo da su promjene ograničene na opseg serije, koristi se sljedeće: SETLOCAL i ENDLOCAL, koji započinju i završavaju odjeljak s lokalnim varijablama.
Pomoću IF možete izvršiti uvjetnu obradu unutar .cmd datoteke, na primjer, provjeriti postoji li datoteka prije kopiranja ili preimenovanja. U međuvremenu, GOTO vam omogućuje skok na određene oznake unutar skripte kako biste kontrolirali logiku izvršavanja, a CALL se koristi za pozivanje drugih batch datoteka iz glavne.
Za pauziranje skripte dok se čeka korisnička intervencija, koristite PAUZAkoja prikazuje generičku poruku i čeka da pritisnete tipku, a s ECHO Možete kontrolirati što se prikazuje na zaslonu (uključujući uključivanje ili isključivanje prikaza naredbi pomoću echo on/off).
Naredbe poput PUSHD i POPD olakšavaju promjenu direktorija unutar serije bez gubitka traga o vašoj trenutnoj lokaciji: PUSHD sprema trenutni direktorij i premješta se u novi, a POPD vas vraća u spremljeni direktorij. Ovo je vrlo korisno kada skripta skače između mnogo različitih putova kako bi izvršila sigurnosne kopije, popise ili čišćenje.
Druge naredbe poput SHIFT (pomicanje parametara), REM (komentari) ili TITLE (promjena naslova prozora) upotpunjuju ekosustav za stvaranje čitljivijih, višekratno upotrebljivih i lakših za otklanjanje pogrešaka .cmd datoteka.
Dijagnostičke i sistemske naredbe korisne za administratore
Iako je glavna namjera upravljanje datotekama, u svakodnevnoj upotrebi često ćete koristiti dijagnostičke i sistemske naredbe koje se također izvršavaju iz CMD-a i koje se vrlo dobro uklapaju u skripte za održavanje, pa čak i ispisivati datoteke iz CMD-a.
Za sveobuhvatan pregled stroja, tu je SYSTEMINFO , koji vraća podatke o operativnom sustavu, procesoru, RAM-u, vremenu pokretanja, instaliranim hitnim popravcima i još mnogo toga. Idealan je za dokumentiranje sustava ili izvođenje brzih revizija.
U polju mreže, IPCONFIG prikazuje informacije o sučelju, uključujući IP, masku i pristupnik; NETSTAT prikazuje aktivne veze i statistiku protokola; a TRACERT vam omogućuje praćenje puta paketa do određenog odredišta, što je vrlo korisno za dijagnosticiranje problema s povezivanjem.
Ako želite pregledati procese koji se izvršavaju, tasklist Navedite sve što se izvršava zajedno s potrošnjom memorije, dok TASKKILL Omogućuje vam zatvaranje procesa navođenjem njegovog PID-a ili naziva slike, na primjer taskkill /PID 1234.
Za točnu verziju sustava Windows koristite VER , iako je za detaljnije informacije bolje vratiti se na SYSTEMINFO. Ako želite provjeriti instalirane upravljačke programe, DRIVERQUERY vraća potpuni popis s nazivima modula i vrstama upravljačkih programa.
Što se tiče održavanja diska, uz CHKDSK, tu je DEFRAG za defragmentiranje mehaničkih pogona i CLEANMGR za pokretanje uslužnog programa za čišćenje diska iz konzole. A za zakazivanje operacija u određeno vrijeme tu je SCHTASKS , koji vam omogućuje stvaranje, pregled, izmjenu i brisanje zakazanih zadataka.
Konačno, kada želite isključiti, ponovno pokrenuti ili se odjaviti izravno iz CMD-a, možete koristiti Zatvaranje s različitim parametrima (npr. shutdown -s -t 60 isključiti za 60 sekundi ili shutdown -r za ponovno pokretanje) i odjava odjaviti trenutnog korisnika, a pritom računalo držati uključenim.
Sve ove naredbe, u kombinaciji s onima za upravljanje datotekama i direktorijima, omogućuju vam izradu vrlo cjelovitih .cmd skripti koje automatiziraju sve, od sigurnosnih kopija i organizacije sadržaja do malih zadataka administracije sustava i dijagnostike, smanjujući ručne pogreške i postižući veliku brzinu u svakodnevnom radu.
Strastveni pisac o svijetu bajtova i tehnologije općenito. Volim dijeliti svoje znanje pisanjem, a to je ono što ću učiniti na ovom blogu, pokazati vam sve najzanimljivije stvari o gadgetima, softveru, hardveru, tehnološkim trendovima i još mnogo toga. Moj cilj je pomoći vam da se snađete u digitalnom svijetu na jednostavan i zabavan način.
