Redenumiți fișierele dintr-un folder folosind un șablon. Utilizarea de utilități terțe

Schimbarea numelui unuia sau mai multor fișiere este un lucru elementar. Dar dacă trebuie să faci redenumirea grupului fișiere, al căror număr depășește câteva zeci sau chiar sute, introducerea manuală a noilor nume poate dura câteva ore sau chiar mai mult. Din fericire, există și programe speciale

unele tehnici care vă permit să reduceți la minimum costurile de timp și să evitați rutina făcut singur. Prin urmare, dacă doriți să puneți ordine în colecția dvs. de muzică sau fotografii, dați nume clare tuturor fișierelor stocate, acum este momentul potrivit pentru a face acest lucru. Să ne uităm la cel mai bun mod de a redenumi în loturi fișierele care s-au acumulat pe computer.

O schimbare masivă a numelui depinde în primul rând de sistemul de operare pe care îl utilizați. Iată câteva trucuri pentru cel mai popular sistem de operare:

  • Windows 7

Cel mai simplu mod de a redenumi fișierele de pe acest sistem este în Explorer). Mai întâi trebuie să așezați totul fisierele necesareîntr-un director separat pentru a nu include accidental documente inutile. Acum selectați-le folosind combinația „Ctrl+A” și clic dreapta Apelați mouse-ul și selectați elementul „Redenumire”. Introducem un nume comun, de exemplu „tapet”, și toate fișierele noastre selectate vor primi nume noi, constând dintr-un nume comun și un număr de serie în parantezele(„tapet (1)”, „tapet (2)”, „tapet (3)”, etc.).

De asemenea, puteți redenumi în masă fișierele folosind linia de comandă. În acest caz, utilizați „Win ​​+R” pentru a lansa fereastra aplicatia dorita, tastați „cmd” în linie și apăsați „Enter” pentru a deschide în ea, folosind comanda „cd”, specificați calea către folderul cu fișierele, de exemplu, pentru folderul „pics” de pe D: \ drive, comanda va fi după cum urmează: cd d:\pics. Să presupunem că vrem să schimbăm extensia fișierului din „GIF” în „JPG”. Să folosim comanda „redenumiți” sau „ren” pe scurt și să scriem ren *.gif *.jpg. Comanda în sine și extensiile trebuie separate printr-un spațiu.

  • Linux

Pe acest sistem, redenumirea fișierelor se poate face folosind utilitate standard„Redenumiți” Comanda pentru utilitarul „Redenumire” arată astfel:

redenumiți [ -v ] [ -n ] [ -f ] perlexpr [ fișiere ];

[ -v ] - afișează nume de fișiere noi;

[ -n ] - afișează o listă de fișiere selectate pentru redenumire;

[ -f ] - suprascrie fișierele existente dacă există o potrivire;

perlexpr - șablon de utilizat pentru redenumire.

Să presupunem că există fișiere cu extensia „TXT” printre altele în folder și dorim să le redenumim în „mytext.bak”. Apoi comanda va arăta astfel:

redenumiți „s/.txt/.mytext.bak/g” *.txt

Să explicăm ce înseamnă șablonul nostru:

s - este necesară înlocuirea;

/.txt/ - ce înlocuim;

/.mytext.bak/ - nume nou;

g - global, operațiunea va afecta toate aparițiile detectate.

Comanda „redenumire” poate ajuta, de asemenea, cu modificările în bloc. Expresia „redenumiți ‘y/a-z/A-Z/’ *” convertește toate numele pentru a fi scrise complet cu

  • MacOS

Redenumirea fișierelor în acest mediu nu este la fel de convenabilă sau ușoară ca în Windows. Finder nu are această funcționalitate în mod nativ, dar o puteți adăuga prin Automator. Pentru a face asta, hai să rulăm asta aplicație standardși selectați „Service”. Apoi, în bibliotecă, accesați elementul „Fișiere și foldere”. Există un subelement numit „Redenumiți obiectele Finder”. Trebuie mutat în zona de editare, dar nu copiat. În fereastra „Serviciul primește”, setați „Fișiere sau foldere”. Apoi setați „Utilizați acest serviciu în Aplicația Finder„, în parametrii de redenumire în sine, bifați caseta de selectare „Afișați în timpul execuției” și setați opțiunea „Faceți secvențial”. Acum tot ce rămâne este să verificați și să salvați setările.

Pentru a redenumi fișierele din setări suplimentare(prin mutare, transliterare, căutare după etichete), este mai bine să folosiți special utilitati universale, cum ar fi „SVS RenameFiles”, „Multi Renamer”, „Advance Renamer”, etc.

Capitole de articole:

Fișierele foto vin la noi pentru stocare de la surse diferite, deci numele lor au ortografii diferite. În plus, numele inițiale de fișiere nu conțin informații care să poată fi utilizate în orice scop. Convertiți numele fișierelor foto în aspectul generalși poate fi făcut mai informativ folosind redenumirea lotului.

- Asta înlocuire automată numele lor în funcție de un anumit principiu, de exemplu după dată, loc sau gen de fotografie. După modificare, numele fișierelor trebuie să fie formate dintr-o parte comună și o parte individuală. De exemplu, partea comună va fi numele folderului și partea individuală număr de serie dosar în el.

Redenumirea în lot a fișierelor foto este a doua etapa importanta la crearea unei arhive foto digitale convenabile după . Fișierele din arhiva foto trebuie denumite în conformitate cu sistemul de denumire ales. Sistemul va fi apoi construit pe baza lui căutare rapidă fotografii din arhiva foto.

Dacă trebuie să schimbați numele fișierelor mai multor fotografii, puteți face acest lucru fără probleme speciale. Dacă trebuie să schimbați numele a sute sau chiar mii de fișiere foto, redenumirea în lot nu mai este necesară. O astfel de muncă poate fi făcută rapid pe un computer, dar trebuie făcută corect imediat, fără a perturba ordinea fișierelor (Fig. 1).

Fig.1 Pentru a redenumi în serie fișierele foto, este important să mențineți ordinea corectă a locației lor.

Înainte de redenumire, fișierele foto dintr-un folder trebuie sortate în funcție de anumite criterii. Este mai convenabil să faceți acest lucru până când fișierul a fost creat. Ordinea fișierelor după nume poate diferi de locația lor în timp, deoarece fișierele pot fi șterse. Redenumirea în lot va adăuga numerotare fișierelor foto și va fixa ordinea numelor.

Tipul de nume de fișiere foto depinde de informațiile pe care trebuie să le conțină și, cu cât există mai multe informații, cu atât numele fișierelor sunt mai complexe. Astfel de nume pot fi create pentru număr mare fișiere folosind numai programe speciale. Vom vorbi despre ele mai târziu, dar deocamdată să ne uităm cale rapidă redenumirea în lot a fișierelor foto.

Cum să redenumiți rapid multe fișiere

Multe programe speciale au o funcție convenabilă pentru redenumirea în serie a fișierelor foto, dar nu este întotdeauna convenabil de utilizat. Și, în plus, există situații în care trebuie să redenumiți rapid multe fișiere foto, dar să păstrați numele lor simple și clare. De exemplu, data fotografierii și numărul de serie al fișierului din folder (Fig. 2).

Fig.2 Redenumirea loturilor va schimba rapid multe fișiere, astfel încât numele fotografiilor devin mai simple și mai clare.

În astfel de cazuri, executați câteva program mare cu funcția de redenumire în lot a fișierelor foto nu este rațional. Și nu orice computer îl poate avea instalat. Pentru a face acest lucru, este mai convenabil să folosiți capacitățile celor mai mulți sistem de operare Windows. Vă permite să redenumiți mai multe fișiere simultan, rapid și ușor.

Pentru a redenumi rapid multe fișiere, mai întâi trebuie să le deschideți folderul Windows Explorer. Apoi selectați fișierele într-un mod convenabilși apăsați butonul „F2”. Printre fișierele foto selectate pentru redenumirea lotului, numele primului fișier va fi gata pentru aceasta (Fig. 3). Îl schimbăm cu unul nou, menținând rezoluția și apăsăm „Enter”.

Fig.3 Când se redenumește rapid fișierele, noul nume este introdus doar pentru prima fotografie.

Imediat după aceasta, funcția batch Redenumirea Windows va înlocui rapid numele fotografiilor selectate din folder cu numele primului fișier și le va adăuga numerotare. În acest caz, numerele vor începe doar cu al doilea fișier, dar acesta este implementat diferit în diferite sisteme de operare. Cu siguranță ar trebui să acordați atenție acestui lucru (Fig. 4) și (Fig. 5).

Fig.4 După redenumirea rapidă în lot a fotografiilor în Windows Vista primul dosar nu este numerotat. Trebuie să-l adăugați manual.

Fig.5 După redenumirea rapidă în lot în Windows XP, numerotarea începe de la al doilea fișier, ceea ce nu este convenabil pentru analiza fotografiilor.

Corectarea acestei numerotări este ușoară. În Windows Vista, trebuie să adăugați un număr (1) la numele primului fișier, iar în Windows XP, să adăugați și apoi să ștergeți o copie a primului fișier. Dar mai întâi trebuie redenumit astfel încât să fie primul (Fig. 6). După redenumirea în lot, ștergem o copie a primei fotografii, iar numerotarea fișierului devine corectă.

Fig.6 Înainte de redenumirea în lot a fotografiilor, trebuie să creați un duplicat al primului fișier, astfel încât să fie primul din folder.

Anularea redenumirii loturilor pentru fișierele foto este, de asemenea, foarte ușoară. Pentru a face acest lucru, apăsați combinația de taste „Ctrl + Z”. Trebuie avut în vedere că nu toate sistemele de operare Windows vă permit să anulați rapid redenumirea cantitate mare fișiere. Deci XP anulează redenumirea doar pentru un fișier și cu excepția primului.

Redenumirea rapidă în lot a fișierelor foto este convenabilă doar în unele cazuri, deoarece Caracteristicile Windowsîn aceste scopuri sunt foarte limitate. Mai des, numele de fișiere trebuie să fie formate în funcție de condiții complexe, ceea ce doar programele speciale pot face, despre care vom vorbi mai târziu.

Programe pentru redenumirea fișierelor

Pe lângă capacitatea de a redenumi sistemele de operare în serie, există alte două tipuri de programe pentru fișiere foto care pot face acest lucru. Acestea includ manageri de fișiere și diverși editori imagini. Astfel de programe au capacități diferite și, prin urmare, trebuie să le alegeți special pentru scopurile dvs.

Dacă computerul dvs. nu are programe speciale pentru lucrul cu grafica, puteți utiliza un manager de fișiere care are o astfel de funcție pentru a redenumi în serie fișierele foto. Există multe astfel de programe, dar cele mai multe dintre ele au o interfață în limba engleză sau o funcționalitate slabă. Dar există un program care ni se potrivește.

Comandant total- este popular manager de fișiere, care are o interfață rusă și capabilități enorme de lucru cu fișiere. Acest program poate fi folosit pentru a redenumi în serie fișierele foto în majoritatea cazurilor. Particularitatea sa este că are multe măști pentru formarea numelor de fișiere (Fig. 7).

Fig.7 Măști pentru redenumirea loturilor fișierelor în Program total Commander este convenabil de utilizat pentru fotografii.

Pentru cazurile în care de multe ori trebuie să lucrați un număr mare fotografii, mai convenabil de utilizat programe speciale ca de exemplu Podul Adobe sau Lightroom. Aceste programe sunt concepute să funcționeze cu un număr mare de fotografii și au, de asemenea, măști pentru redenumirea în lot a fișierelor.

Programele cu capabilități de redenumire a fișierelor batch au funcții convenabile pentru lucrul cu fotografii. Fiecare dintre ele trebuie discutat separat și în detaliu. Descrierea funcțiilor pentru redenumirea fișierelor foto cele mai bune programe, citiți următoarele articole.

Buna ziua, dragi prieteni. Astăzi vă voi spune despre redenumirea de grup a fișierelor și vă voi arăta 2 metode. Poate că v-ați gândit la acest lucru și poate că ați întâlnit o astfel de sarcină atunci când trebuie să redenumiți mai multe fișiere, unde numele trebuie să fie atribuit la fel, dar diferența este doar în numărul de serie.

De exemplu, pentru a descărca fisiere grafice Această abordare este adesea folosită pe site. Oricine a descărcat capturi de ecran de pe site-uri web probabil a acordat atenție numelor și numerotării fișierelor. Mai ales pe site-urile cu o sumă imensă conţinut.

Redenumirea în lot a fișierelor în Windows

În sala de operație sistem Windows puteți redenumi un grup selectat de fișiere în același timp.

Apropo: această schemă funcționează și pe Mac OS, dar este puțin mai atentă, iar rezultatul este exact numele fișierelor pe care le-ați propus.

Doar să nu credeți că Windows face totul rău. Dar, nu-mi place numerotare automatăîntre paranteze.

Pentru a redenumi mai multe fișiere simultan, trebuie mai întâi să selectați aceste fișiere (Ctrl+A – selectați toate; Ctrl+ butonul din stânga mouse – selectând fișiere individuale).


Introduceți numele dorit și apăsați tasta « intra".

Ca rezultat, toate fișierele din lista selectată vor fi redenumite și fiecăruia i se va atribui un număr de serie pentru a-l distinge.


Sfat: Dacă creați fișiere pentru Internet, atribuiți nume cu litere latineși nu prea lung.

Windows are o altă opțiune pentru redenumirea fișierelor, prin linie de comandă, dar acest lucru este incomod și metoda este complet depășită.

Redenumirea grupului de fișiere în Total Commander

Îmi place mai mult această metodă și este cea pe care o folosesc tot timpul. Principiul aici este același, trebuie să selectați fișierele și să le redenumiți cu parametrii specificați.

Deci, selectați fișierele ( Ctrl+O) și apelați instrumentul „Redenumirea grupului” (Ctrl+M)


Se va deschide o nouă fereastră în care puteți configura parametrii de redenumire, adică atribuiți un nume nou, adăugați un contor, dată, oră. De asemenea, puteți modifica tipul fișierului și puteți crea șabloane.

Pentru redenumirea obișnuită a grupului, va fi suficient să atribuiți un nou nume și să adăugați un contor:

Nume nou-[C]

După ce ați selectat parametrii, apăsați butonul "Alergă" si uita-te la rezultat.


Fișierele dvs. au fost redenumite.


Această metodă are mult mai multe posibilități, dar chiar și cea mai simplă aplicație va merge rapid și fără probleme. De asemenea, puteți utiliza TC pentru . Sunt sigur că veți găsi și această funcție utilă.

Tutorial video pe această temă

Prieteni, aceste metode vă vor permite să redenumiți rapid câte fișiere doriți. Și nu pierdeți timpul cu fiecare fișier, ci faceți-o în loturi.

iti doresc mult succes!

Salutări, Maxim Zaitsev

Zilele trecute, în timp ce rătăteam prin Internet, am întâlnit o nouă versiune a vechiului meu și asistent fidel- Programul ReNamer, care a devenit instrumentul meu indispensabilla redenumirea în bloc a fișierelor . Aceasta este o acțiune de rutină pe care o putem efectua de mai multe ori pe zi. Fiecare dintre noi rezolvă această problemă în felul nostru, de exemplu, folosind instrumentele încorporate ale sistemului de operare, fără a întâmpina probleme speciale.

Gata, zici tu, e o mare problema, despre ce e de vorbit! Este bine, desigur, când redenumirea permite utilizarea simbolurilor măștilor și - adaug eu - este bine dacă știi cum să folosești masca. Dar există situații în care utilizarea unei măști este destul de dificilă sau chiar imposibilă. S-ar părea că există o singură cale de ieșire - să redenumiți manual fiecare fișier separat. Dar nu - există o soluție care este foarte funcțională, nu necesită instalare și, în plus, program gratuit Denis Kozlov ReNamer, despre care vom vorbiîn acest articol.

Puteți descărca programul atât pe portalul de computer Softodrom.ru, cât și pe site-ul dezvoltatorului.

Programul oferă utilizatorului toate modalitățile imaginabile de a redenumi fișierele în serie. În orice caz, nu am avut suficientă imaginație pentru a veni cu ceva pe care programul nu a putut face față! Cred că ea este un asistent indispensabil administratori și alți oameni de calculator, precum și profesori, autori și alții ca ei. Apropo, ceea ce am observat imediat când am descoperit noua versiune ReNamer, este vorba despre apariția localizării rusești a programului. Și, deși nu experimentez niciun disconfort special când lucrez cu interfața în engleză, totuși, știi, propria mea limbă este într-un fel mult mai nativă și - cel mai important - mai ușor de înțeles...

Când încărcați pentru prima dată programul, acesta vă va solicita să deschideți și, în consecință, să vă familiarizați cu ghid rapid la locul de muncă (Ghid rapid). Dacă ai concepte de bază Limba engleza, atunci va sfatuiesc sa acceptati aceasta oferta. Sincer să fiu, nu am întâlnit des de atât de inteligent și în același timp scurtă descriere lucreaza cu programul!

În același timp, nu pot să nu observ că, înțelegându-l pe autor, care își îndreaptă creația către cea mai largă gamă posibilă de utilizatori și folosește engleza pentru asta, ar putea „împacheta” un analog al manualului în limba rusă, deoarece autorul este un programator din Tolyatti. Apropo, este bine că a apărut localizarea în limba rusă a programului, altfel versiunile anterioare si nu a fost observata :). Adevărat, a apărut abia anul trecut și nici măcar nu a fost finalizat de autor(!) Sper că autorul nu va fi foarte jignit pe mine pentru critici, deoarece programul este într-adevăr foarte bun la lucru.

Ideologia programului este că utilizatorul creează reguli conform cărora fișierele sunt redenumite. Regulile vă permit să schimbați prefixele și sufixele programului, să înlocuiți, să adăugați și să ștergeți părți de text în numele fișierelor, să adăugați numere de serie la nume etc.

Prin urmare, fereastra programului în sine constă din două părți: cea de sus este formarea regulilor pentru redenumirea fișierelor, cea de jos este selecția fișierelor. În consecință, programul are două grupuri de butoane situate pe panouri separate: cel de sus pentru lucrul cu fișiere și cel de jos pentru lucrul cu reguli.


Selectarea fișierului

Selectarea fișierelor pentru a redenumi este extrem de simplă. Pe panoul superior instrumente, faceți clic pe butonul „Adăugați fișiere”. Dacă toate fișierele dintr-un folder vor fi redenumite, atunci utilizați instrumentul „Adăugați foldere”. Fișierele selectate sunt afișate în partea de jos a ferestrei. Pentru a șterge fișiere, folosim tehnici standard de selecție, după care apelăm meniul contextualși selectați elementul „Ștergeți selectat” din acesta.


Creați o regulă

Pe a doua bară de instrumente (de jos). fereastra de sus Faceți clic pe butonul „Adăugați” („Adăugați o regulă nouă”), după care apare fereastra „Adăugați regulă”, în care se creează o regulă care va fi folosită pentru redenumirea fișierelor. Pentru a reține regula generată, faceți clic în fereastră buton mare„Adăugați o regulă”.

Pentru a edita regula pe care o executăm dublu clic pe numele lui.

Pentru a șterge o regulă, faceți clic pe butonul „Șterge” din a doua bară de instrumente.

Să ne uităm la exemple de formare a anumitor tipuri de reguli.


Înlocui

  1. Din lista de nume de reguli, selectați „Înlocuire”.
  2. În câmpul „Găsiți”, determinăm partea din nume care trebuie schimbată. Nu folosim simbolul „*”.
  3. În câmpul „Înlocuire”, introduceți caracterele care vor înlocui textul în câmpul „Găsiți”.
  4. În grupul „Meciuri” determinăm numărul de înlocuiri în nume.


Îndepărtarea

Pentru a elimina o parte a textului din mijlocul numelui, creăm următoarea regulă.

  1. Din lista de nume de reguli, selectați „Șterge”.
  2. În câmpul „Începând de la”, determinăm poziția din care dorim să începem ștergerea textului din nume.
  3. În câmpul „Înainte” determinăm numărul de caractere care trebuie eliminate din numele fișierelor.
  4. Pentru a dezactiva acțiunile cu extensii, activați acțiunea „Omiteți extensiile”.
  5. Salvați regula făcând clic pe butonul „Adăugați regulă”.


Crearea unor secvențe de numere (index)

Uneori este necesar să se schimbe numele fișierelor Nume1, Nume2, Nume3, astfel încât numele lor să conțină o secvență numerică cu un anumit increment, de exemplu, crescând cu „5”: Nume11, Nume26, Nume311. Procedura de creare a unei reguli este următoarea.

  1. Din lista de nume de reguli, selectați „Index”.
  2. Selectați opțiunea „Secvenţial”.
  3. Setăm valoarea inițială a secvenței de numere: „Începe cu:”.
  4. În câmpul „Pas” specificăm incrementul (pasul) secvenței numerice cu care se va modifica valoarea numerică.
  5. În câmpul „Unde se inserează:”, determinăm locul din numele fișierului în care va fi inserată secvența de numere. În acest caz, utilizatorul are posibilitatea de a seta:
    • Poziție: determină poziția din care va fi inserat numărul în numele fișierului. Dacă, de exemplu, pentru exemplul nostru setăm a doua poziție, atunci numele fișierelor vor fi: И1мя1, И6мя2, И11мя3.
    • Prefix: la începutul numelui fișierului. În acest caz, numele fișierelor vor fi în următoarea secvență: 1Nume1, 3Nume2, 5Nume3.
    • Sufix: la sfârșitul numelui fișierului. Numele fișierelor vor fi: Nume11, Nume26, Nume311.
  6. Selectarea casetei de selectare pentru câmpul de etichetă „Adăugați zerouri la:” vă permite să specificați același număr de poziții pentru toate elementele secvenței de numere. De exemplu, setând acest câmp la „2” și folosind opțiunea „Sufix” pentru exemplul nostru, obținem următoarele nume: Nume101, Nume206, Nume311.
  7. Pentru a dezactiva acțiunile cu extensii, activați acțiunea „Omiteți extensiile”.
  8. Salvați regula făcând clic pe butonul „Adăugați regulă”.


Definirea mai multor reguli

Sistemul vă permite să aplicați mai multe reguli la numele fișierelor simultan. Principalul lucru aici este să nu vă confundați cu numele care ar trebui obținute, deoarece aplicarea regulii la un moment dat poate duce la crearea unui nume care să se potrivească cu numele din etapa anterioară. Cu toate acestea, sistemul vă va avertiza imediat despre acest lucru.

Pentru a evita astfel de situații, urmează regula simpla: Nu aplicați toate regulile deodată, ci faceți-o secvenţial, debifând sau bifând casetele din prima coloană care precede numele regulii.

În acest caz, utilizatorul nu poate doar să adauge și să ștergă reguli, ci și să își schimbe locurile folosind instrumentele situate în partea de sus a ferestrei cu reguli.

Și încă un lucru. Regulile sunt folosite strict secvenţial, exact în ordinea în care le-ai creat. Dacă trebuie să le schimbați secvența, utilizați butoanele „Sus” și „Jos”, care se află pe a doua bară de instrumente.


Și un ultim lucru. Redenumire

Pentru a vedea ce obținem, faceți clic pe butonul „Previzualizare” din bara de instrumente, după care numele generate conform regulilor specificate vor fi afișate în coloana „Nume nou” din partea de jos a ferestrei. De fapt, nu trebuie să faceți nicio acțiune dacă efectuați mai întâi acțiunea de selectare a fișierelor și numai după aceea - crearea de reguli. În acest caz, adăugarea sau modificarea unei reguli determină automat afișarea fișierelor cu nume noi.

Și în sfârșit ultimul pas: Redenumire directă. Facem clic pe butonul „Redenumire” și admirăm munca noastră, fără a uita să exprimăm respectul față de autor pentru cel mai convenabil și, în plus, instrumentul gratuit.

Și ultimul lucru. După cum urmează din adnotarea programului, utilizatorul are capacitatea de a lucra cu ID3v1, ID3v2 și EXIF, precum și de a folosi redenumirea în lot a folderelor. Pe lângă asta, sunt multe setări personalizate redenumirea șablonului.

Valery FETISOV

Get-ChildItem -Path $env:userprofile\Downloads -Filter "*.zip*" -Recurse |`

Nu este necesar să puneți semnul „`”, deoarece PowerShell după | va căuta continuarea liniei.

Vadimio Vadim

ÎN ultima dată a rezolvat problema trimiterii pe oricine mesaje sms prin usb gsm „fluier”. Mai mult, scriptul funcționează atât în ​​modul ferestre (a ajutat PowerGUI), cât și în modul consolă.

Alexiz Kadev

Îți invidiez (bună) memoria, Vadim. Pur și simplu nu reușesc să-mi amintesc tot acest „limbaj al bărbaților dansați”. Acesta sunt eu în ceea ce privește fraza dvs. despre cum poate ajuta PoSH dacă Total nu poate fi livrat. În acest caz, fie să citesc mana pentru multe ore, fie (dacă dintr-o dată există internet pe un astfel de computer) mă va ajuta să merg pe google.

Poate cineva să explice de ce trebuie să redenumesc 20.000 de fișiere? Se întâmplă chiar asta? Dați exemple.
Câte fișiere puteți redenumi în Explorer? Deși se pune din nou întrebarea - De ce. Explorer nu are suficiente instrumente de gestionare a fișierelor?

  • Ok, să presupunem că există 20 de fișiere - cum veți rezolva ambele probleme în Explorer?

    • Ultimul lucru pe care mi-l amintesc este sortarea fișierelor extrase prin semnătură de pe o imagine de disc cu un killed sistem de fișiere. A fost scris un program (în C++) care scanează un fișier imagine de disc sector cu sector (un dump obținut de programul dd, care este disponibil și pentru Windows) și când este detectată o semnătură cunoscută, începe să scrie fișier nou. Numele fișierelor primite în cele mai multe cazuri arată astfel: „XXXX YYYYYYY.rar”, unde XXXX este numărul de serie al fișierului, YYYYYY este numărul sectorului de la care începe fișierul de pe disc.

      Pentru a sorta fișierele, au fost scrise fișiere batch infernale care ar putea:
      - Eliminați copiile. În prima versiune, fișierele au fost comparate între ele folosind utilitarul fc /b (fc poate seta nivelul de eroare), dar acest algoritm are complexitate pătratică (timp O(N²)), așa că nu mai era potrivit pentru seturi mari. Am început să mut fișierele într-un director cu un nume din codul hash (calculat de utilitarul fciv.exe). Apoi, un alt script ar trece prin subdosare și ar salva doar primul fișier din fiecare dintre ele (ștergând restul).
      - Adăugați data aproximativă de creare la numele fiecărei arhive. Arhiva a fost extrasă într-un folder temporar cu ora exactă a tuturor marcajelor de timp restaurate (winrar x -ts arc.rar temp\), pentru buclă/r a repetat prin toate fișierele și a selectat ultima dată de modificare.
      - Sortați arhivele după conținut. Utilitarul rar.exe a extras lista fiecărei arhive, comanda find a determinat prezența cuvânt cheie(se setează și nivelul de eroare în funcție de rezultat), dacă detectarea a avut succes, arhiva a fost mutată în subfolderul corespunzător.

      Despre existența remediului redenumire în masă Nu știu nimic despre fișierele din Far Manager, poate că există pluginuri corespunzătoare, nu am încercat să caut.

      În unele cazuri simple Pentru a redenumi/copia fișiere în bloc în Far, am creat mai întâi o listă de fișiere într-un fișier text nou:
      dir /b *.abc > rename.bat
      Apoi am editat rename.bat cu editorul încorporat, înregistrând de obicei o comandă macro. Apoi am apăsat tastă rapidă comenzi macro (de obicei Ctrl+Alt+↓) pentru fiecare linie din fișier.
      Sau pur și simplu a notat o comandă macro, care în linia de comandă a lui Far formează o comandă pentru a redenumi fișierul sub cursor, îl execută imediat (apăsați Enter) și merge la următorul fișier(apăsați ↓). Și din nou am apăsat tasta rapidă de o duzină sau de două ori.

      Revenind la cmd.exe. Cred că cunosc prea bine linia de comandă obișnuită pentru a mă forța să încep să învăț PowerShell. Numerotarea fișierelor din directorul curent:

      Setați N=1 pentru %%j în (%1) apelați:RENAME "%%j" exit:RENAME set SUF=000%N% ren "%~1" "%~n1-%SUF:~-3% %~x1" setează /a N=N+1 la:EOF

      Plus data curentă va diferi prin utilizarea %DATE% în loc de %SUF:~-3% în procedura RENAME. Dezavantajul în comparație cu PowerShell one-liner este că trebuie să creați un fișier. Și nici nu-mi amintesc pe de rost toate tastele setului și pentru comenzi, dar le poți căuta oricând setați comenzi/? iar pentru /?.

      Sub Linux, aș efectua aceeași sarcină cu o singură linie:

      ls *.jpg | awk " BEGIN ( n = 0 ) ( gsub(".jpg$", ""); system(sprintf ("mv %s.jpg %s-%d.jpg", $0, $0, n)); ++ n;)"

      Ar fi mai scurt în Perl, dar nu știu Perl, dar știu bine.

      • Alexandru [Mazdayshchik]: Cred că cunosc prea bine linia de comandă obișnuită pentru a mă forța să încep să învăț PowerShell.

        Dar eu nu. Modele de genul acesta mă supără

        Ren "%~1" "%~n1-%SUF:~-3%%~x1"

        Și nu mă pot decide să învăț FOR pentru a sculpta liber așa ceva.

        Alexandru [Mazdayshchik]: Adăugarea datei curente va diferi prin folosirea %DATE% în loc de %SUF:~-3%

        Da, doar ieșirea %DATE% trebuie formatată, iar în PowerShell acest lucru se face mult mai ușor în ceea ce privește înțelegerea a ceea ce se întâmplă.

        strafer

        Mai mult opțiune universală pe awk pentru orice extensie

        dacă numele fișierului poate conține mai multe părți separate prin puncte:

        ls *.jpg | awk -F . "( printf("%s %s%03d.%s\n", $0, substr($0, 0, lungime($0)-lungime($NF)-1), NR, $NF) )" | xargs -L1 mv

        dacă sunteți sigur că punctul va fi doar înaintea extensiei:

        ls *.jpg | awk -F . "( printf("%s %s%03d.%s\n", $0, $1, NR, $2) )" | xargs -L1 mv

        PS. Apropo, în linia de format sprintf ați uitat să specificați dimensiunea câmpului de ieșire pentru număr, acesta va fi 1, 2, ... în loc de 001, 002, ...

        • Lecron

          Apropo, dimensiunea câmpului de ieșire specificat manual nu este cu mult mai puțin un dezavantaj decât absența acestuia. De ce 3 caractere pentru unitățile de fișiere și ce se întâmplă dacă există mai mult de 999 de fișiere?

          • strafer

            Înainte de a finaliza sarcina, trebuie să o înțelegeți. Condițiile sarcinii indică clar

            Să presupunem că trebuie să adăugăm un numărător de trei cifre la sfârșitul numelui tuturor fișiere JPGîn folderul curent.

            Nu mă pricep foarte bine la trucurile Python, codul tău de mai jos ia în considerare această condiție?

            Vorbind fără legătură cu problema din articol, în caz general nimic nu vă împiedică să numărați mai întâi numărul de fișiere, de exemplu

            ls *.jpg | wc -l

            Și apoi decideți asupra formatului numelui fișierului de ieșire.

            și ce se întâmplă dacă există mai mult de 999 de fișiere?

            Mai exact, în cazul awk, va bate numerele în continuare, adică. 1000, 1001,…

            • Lecron

              Pur și simplu am privit sarcina nu ca pe un atelier de programare, ci ca pe o soluție la o problemă practică. Și dacă memoria este folosită, wc -l va imprima numărul de fișiere, nu dimensiunea câmpului. Apoi

              ls *.jpg | wc -l | wc -m

              Dar, în general, cred că utilizarea unor astfel de căptușeală este ineficientă. Acest lucru se aplică PowerShell și altor shell-uri.
              Pentru o utilizare rară, trebuie să cunoașteți FOARTE bine sintaxa comenzii. Dar pentru o persoană obișnuită, cu o ascensiune din istorie, este pur și simplu nesigur. Deoarece trebuie să citiți/interpretați întregul text al codului, găsiți și introduceți parametri în diferite locuri. Mai mult, efectuați unele acțiuni în avans, de exemplu, aflați numărul de fișiere de redenumit. Cea mai mică neatenție, acțiune automată și probleme de salut.
              Atât în ​​primul cât și în al doilea caz, Este mai bine să folosiți scripturi/programe cu sistem clar chei.

              Nici scenariul meu nu ia în calcul. Dar există parametri pentru cel puţin sunt întrebați într-un singur loc, chiar de la început. Dacă doriți, puteți scrie

              Ext = ".jpg" cifră = len(str(sum(1 pentru f în listdir()) dacă f.endswith(ext))))

              De asemenea, nu este Dumnezeu știe cât de frumos, dar pentru scenariu acest lucru nu mai este important.

              strafer

              ci ca soluţie la o problemă practică

              O sarcină practică este să adăugați un număr din trei cifre la numele fișierului.

              Și dacă memoria este folosită, wc -l va tipări numărul de fișiere

              Absolut adevărat, dar dacă ți-e prea lene să numeri cu ochii numărul de cifre din numărul de ieșire, numără-le cu wc -m, pentru numele lui Dumnezeu :-) (nu uita doar că va număra și linia caracter de alimentare și dați o cifră în plus decât este efectiv în număr)

              Pentru o utilizare rară, trebuie să cunoașteți FOARTE bine sintaxa comenzii.

              Nu trebuie să-l cunoașteți mai rău decât trebuie să cunoașteți orice limbă, de exemplu Python, pentru a programa pe el. Dacă astfel de sarcini trebuie rezolvate des în consolă, atunci sintaxa este reținută destul de repede. Mai mult, în caz expresii regulate, ele urmează aproape aceeași logică, trebuie doar să vă amintiți diferențele minore în implementarea specifică. Aceste. Înțelegându-le în principiu, puteți sculpta în sed, grep și awk.

              Dar pentru o persoană obișnuită, cu o ascensiune din istorie, este pur și simplu nesigur.

              Dacă „în mod regulat” înseamnă o dată pe an, atunci nu văd rostul să scriu un script separat pentru o astfel de sarcină, ridicându-l din istorie. Dacă o dată pe săptămână, atunci bineînțeles că merită scris și, apropo, nu este un fapt că scriptul bash va fi mai rău decât al lui Python (cel puțin poate fi interpretat pe orice Linux din lume, cu excepția celor mai sterilizate). ).

              Cea mai mică neatenție, acțiune automată și probleme de salut.

              Poate că nu ați observat, mi-am pus paiul: dacă ștergeți comanda executând direct sarcina (în în acest caz, mv), atunci xarg va imprima pur și simplu argumentele fără nicio modificare pe disc. Bun atât pentru depanare, cât și pentru încrederea că one-liner-ul de acum doi ani face exact ceea ce bănuiți că face :)

              PS. Dacă ceva, ca să nu existe neînțelegeri, nu sunt împotriva scenariilor, le-am scris deja eu însumi. Dar cele unice sunt destul de ortodoxe pentru sarcini mici.

              Lecron

              Asta este. Nu sugerez o limbă, vorbesc despre un scenariu.
              De asemenea, aș dori să adaug că sarcina rămâne rareori neschimbată. Dimpotrivă, de obicei se extinde. Și în scripturi este mai ușor să adăugați funcționalități noi și să refactorizați codul.
              Chiar și textul în discuție ar arăta mai bine așa:
              massRename *.jpg —counter -l3 (sau -lauto)

              strafer

              Se pare că lucrezi ca programator sau faci coduri ca hobby, cred? În acest caz, probabil că te simți mai bine din punct de vedere psihologic când codul este în fișier și te străduiești oricum pentru el :-)

              Sunt mai mult un administrator și, prin urmare, nu mă concentrez pe asta. Fie imediat la începutul soluției, fie pe măsură ce utilizarea progresează, devine clar că scriptul va fi necesar des. În acest caz, îl transform în scriptul propriu-zis din fișier și îl îmbogățesc cu parametri și verificări.
              Și dacă este rar sau niciodată, atunci nu îmi voi aminti despre asta.

              Chiar și linerul în cauză ar arăta mai bine așa:
              massRename *.jpg -counter -l3 (sau -lauto)

              Aceasta este profanare, pentru că... Acesta nu este o singură linie, ci un apel către un scenariu pe care încă trebuie să-l scrii singur. Esența unui one-liner este să-l folosești combinație scurtă comparativ cu utilitatile standard.

              Scrie la dosar separat Codul cu o singură linie, care nu va fi niciodată necesar, este complet exagerat, aparține fișierului istoric shell.

    • Lecron

      Pentru redenumirea loturilor folosesc FAR cu pluginul NameEditor de la Artyom Senichev.

      Consider PS potrivit pentru scripting de sistem. Pentru aplicații aplicate, care includ această sarcină, prefer să folosesc Python. Da, nu va fi o singură linie, dar aplicabilitatea limbii este mult mai mare, încât este totuși benefic să o înveți, iar scrisul într-o limbă cunoscută nu mai este o problemă. În plus, după părerea mea, va începe să beneficieze semnificativ dacă funcționalitatea crește.

      Din os import listdir din shutil import mutați cnt = 1 cifră = 2 pentru f în listdir(): if f.endswith(".mp3"): move(f, "(:0>(digit)).mp3".format (cnt, cifră = cifră)) cnt += 1

      strafer

      Pe măsură ce discuția a progresat pe VK, a devenit clar că exemplul cu data era exagerat și că numerotarea secvențială a fișierelor părea mai realistă.

      Mi se pare că este și el oarecum exagerat :)

      Potrivit one-liner-ului în sine: după părerea mea, este mai elegant să faci cele mai universale scripturi, în acest sens ar merita să dinamicezi extensia, apoi atunci când comanda inițială se schimbă, poate alimenta orice fișiere, nu doar jpegs.
      Cu toate acestea, dacă consola Windows încă nu știe cum să învețe istoricul comenzilor, atunci probabil că nu-mi pasă.”

      Vadim Sterkin: Există un istoric al comenzilor în Linux? Nu, chiar? Nu poate fi…

      Nu înțeleg sarcasmul de aici. Bineînțeles că există și ce altceva.

  • artem

    O să las asta aici

    Exemplul este într-adevăr cam exagerat, dar înțeleg că acesta nu ești tu. Am rezolvat cumva o problemă de aceeași încăpățânare. Există multe Arhive zip. Trebuie să le despachetați pe toate în propriul folder. În acest caz, după ceva timp, pot apărea noi zip-uri, va trebui să rulați din nou scriptul. În același timp, nu a mai încercat să le despacheteze pe cele vechi. (Deoarece există deja foldere despachetate, nu va ieși nimic bun din asta).

    Deoarece nu mă interesează deloc să mă uit la aceste fermoare, mai ales după ce au fost deja despachetate, am venit cu chestia asta. După despachetare, fișierul primește atributul „ascuns”, iar când se caută fișiere de despachetat fișiere ascunse sunt ignorate. Așa că am transformat o sarcină în general banală într-una dificilă.



  •