Pretvorite velika slova u mala imena datoteka

Pokušajte pronaći (Linux naredba)

U mnogim prilikama je poželjno imati mala i mala imena datoteka i direktorija. Preimenovanje jednog po jednog vrlo je naporan posao. Pogotovo kad ima stotine ili hiljade datoteka, posao postaje složeniji i teže ga je ručno proslijediti. Ali to ne znači da je to nemoguće ili da ne postoje metode koje bi to učinile na potpuno brz i automatiziran način.

Ali izvan čiste estetike ili preferencija svakog korisnika, ponekad se radi i o tehničkim problemima, jer neki aplikacije ne mogu raditi s određenim imenima velikim slovima i treba ih pretvoriti. Kada naiđete na jednu od ovih aplikacija, možda već dugo gomilate datoteke sa imenima svih vrsta, a povratak postaje kompliciran. Ali ne brinite, ima jednostavno rješenje, kako ću vam pokazati u ovom vodiču ...

Pretvori veliko slovo u malo

Naredba za prebacivanje s velikog na malo slovo

Prvo što biste trebali znati je to sljedeća naredba će pretvoriti sve velike u male, uključujući i ako u tom direktoriju postoje poddirektoriji. Dakle, ako ne želite da svi budu mala slova, samo to učinite u određenom direktoriju ili će sve pretvoriti za vas. Ovo mi se čini važno kako kasnije ne biste imali problema, a imena koja niste željeli pretvoriti u mala slova se pretvaraju.

S druge strane, trebate instalirajte program za preimenovanje. Ako ga nemate instaliran, koristite ga upravitelju paketa vašeg distro-a da biste ga lako instalirali. Međutim, općenito biste ga trebali instalirati, tako da neće biti potrebno instalirati ga u svim slučajevima. Ovaj alat poslužit će vam za istovremeno mijenjanje nekoliko imena, umjesto da koristite tipični mv za izmjenu imena jedno po jedno ...

Još jedna stvar koju morate znati prije nego što prijeđete na posao je da ako se pretvara iz velikog u malo slovo naiđe na isto ime, tada se neće pretvoriti. Već znate da Linux ima razlikuje velika i mala slova u vašem FS-u, tako da razlikuje velika i mala slova. To znači da ako imate datoteku koja se zove Hello2 i HELLO2, sistem ih razlikuje. Ali, naravno ..., kad pređu u mala slova, oboje bi se zvali zdravo2, a to nije moguće. Stoga će poslati poruku o pogrešci i neće je transformirati.

Nakon toga imate sve što trebate znati i možemo početi transformaciju imena iz velikih u mala slova. The generička naredba Bilo bi sljedeće, a možete ga izmijeniti tako da upućuje na direktorij koji želite:

<br data-mce-bogus="1">

<em>find &lt;nombre_directorio&gt; -depth | xargs -n 1 rename -v 's/(.*)\/([^\/]*)/$1\/\L$2/' {} \;</em>

Morate zamijeniti imenom direktorija ili stazom direktorija koji želite napraviti malim slovima. Na primjer, poput primjera koji vam pokazujem na slici koja je Test, ali može biti i bilo koja druga. Za novajlije recite da pod stazom mislim na stazu, koja nije direktno u direktoriju u kojem se trenutno nalazite. Na primjer, ako ste u ~ /, ali želite djelovati na / home / user / Downloads.

Pretvorite ga u skriptu

Da bi se olakšalo pretvaranje velikih i malih slova, možete stvoriti skriptu neka to učini umjesto vas i nećete morati unijeti gornju naredbu svaki put kada vam je potrebna konverzija. Ovo je vrlo korisno za one koji stalno prenose imena. Također, ako ga stavite unutar bilo koje staze varijable okoline $ PATH, možete ga izvršiti samo pozivanjem njegovog imena, bez potrebe da ga imate u istom direktoriju u kojem radite ili da navedete punu putanju ...

u korake koje morate slijediti za stvaranje skripte pretvarača To su:

  • Prva je idite u / bin direktorij uključiti tu skriptu i tako je koristiti kao i bilo koju drugu naredbu, jednostavno pozivajući njezino ime s terminala.
<br data-mce-bogus="1">

cd ~/bin<br data-mce-bogus="1">

  • Zatim kreirajte pomoću nano-a, ili s vašim omiljenim uređivačem teksta, datoteku sa skriptom i nazovite je kako god želite. Nazvat ću ga mayutominu:
sudo nano mayutominu.sh

  • Unutar nano-a morate zalijepiti sljedeći tekst za kod ove skripte od bash:
</pre><pre>#!/bin/bash
if [ -z $1 ];then
echo "Uso :$(basename $0) parent-directory"
exit 1
fi

all="$(find $1 -depth)"

for name in ${all}; do
new_name="$(dirname "${name}")/$(basename "${name}" | tr '[A-Z]' '[a-z]')"
if [ "${name}" != "${new_name}" ]; then
[ ! -e "${new_name}" ] &amp;&amp; mv -T "${name}" "${new_name}"; echo "${name} was renamed to ${new_name}" || echo "${name} wasn't renamed!"
fi

done
exit 0</pre><pre>
  • Sada spremite datoteku koristeći kombinaciju tastera Ctrl + O i izađite sa Ctrl + X. Već imate svoju datoteku mayutominu.sh kreiranu sa skriptom, slijedi dajte dozvolu izvršenja:
sudo chmod +x mayutominu.sh
  • Napokon ste shvatili spreman za upotrebu. Kako to radiš? Pa, nastavljajući s istim primjerom u prethodnom odjeljku, ako želite promijeniti imena direktorija za testiranje iz velikog u mala slova, možete učiniti sljedeće:
mayutominu Prueba
  • Znate, ako trebate navesti puni put ili put, možete i ako direktorij nije na trenutnom položaju. Na primjer:
mayutominu /home/usuario/Descargas

Nadam se da vam je pomoglo, znate da bilo koja pitanja ili prijedlozi, možete ostaviti svoje komentare...


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   yo rekao je

    U debianu mi govori ovo:
    -bash: sintaksna greška u blizini neočekivanog tokena `newline

    pronađi -dubina | xargs -n 2 preimenovati -v 's /(.*)\/(((^^/)*/$ 1 \ / \ L $ 1 /' {} \;