Zmień nazwę - narzędzie wiersza poleceń do zmiany nazwy wielu plików w Linux

Zmień nazwę - narzędzie wiersza poleceń do zmiany nazwy wielu plików w Linux

Często używamy "mv”Polecenie do zmiany nazwy pojedynczego pliku w Linux. Jednak szybko zmiana nazwy wielu lub grupy plików sprawia, że ​​jest to bardzo trudne zadanie w terminalu.

Linux jest wyposażony w bardzo mocne wbudowane narzędzie o nazwie Przemianować. Przemianować Polecenie służy do zmiany nazwy lub grupy plików, zmieniają nazwę plików na małą literę, zmieniać nazwę plików na uplepanie i zastąpił pliki za pomocą wyrażeń Perl.

„„Przemianować„Polecenie jest częścią Perl skrypt i znajduje się pod „/usr/bin/”W wielu rozkładach Linuksa. Możesz uruchomić „Który„Polecenie, aby znaleźć lokalizację polecenia Zmień nazwę.

$, które zmieniają nazwę/usr/bin/zmieniając nazwę
Podstawowa składnia polecenia Zmień nazwę
Zmień nazwę plików S/Old-Nazwa/Nowa nazwa/'

Polecenie zmiany nazwy zawiera kilka opcjonalnych argumentów wraz z obowiązkowym Wyrażenie perla To kieruje nazwy Command do wykonania faktycznej pracy.

Zmień nazwę [-v] [-n] [-f] perlexpr [pliki]
  1. -v: Wydrukuj nazwy plików pomyślnie przemianowane.
  2. -N: Pokaż, jakie pliki zostałyby przemianowane.
  3. -F: Wymuszaj zastąpienie istniejących plików.
  4. perlexpr: Wyrażenie perla.

Aby lepiej zrozumieć tę narzędzie, w artykule omówiliśmy kilka praktycznych przykładów tego polecenia.

1. Podstawowy przykład polecenia Zmień nazwę

Załóżmy, że masz kilka plików z „.html„Rozszerzenie i chcesz zmienić nazwę”.html”Pliki do„.php„Za jednym razem. Na przykład najpierw zrób „ls -l„Aby sprawdzić listę plików za pomocą„.html" rozszerzenie.

# [e-mail chroniony]: ~ $ ls -l łącznie 22532 -RW-RW-R-- 1 Ravisaive Ravisaive 68888896 10 października 12:10 krykieta.html -Rw-rw-r-- 1 Ravisaive Ravisaive 588895 10 października 12:10 rozrywka.html -Rw-rw-r-- 1 Ravisaive Ravisaive 6188895 10 października 12:10 Zdrowie.html -Rw-rw-r-- 1 Ravisaive Ravisaive 6538895 10 października 12:10 Lifestyle.html -Rw-rw-r-- 1 Ravisaive Ravisaive 938895 10 października 12:10 Wiadomości.html -Rw-rw-r-- 1 Ravisaive Ravisaive 938937 10 października 12:11 Zdjęcia.html -Rw-rw-r-- 1 Ravisaive Ravisaive 978137 10 października 12:11 Sport.html

Teraz chcesz zmienić rozszerzenie wszystkich tych plików z „.html" Do ".php". Możesz użyć następujących „Przemianować„Polecenie z Wyrażenie perla jak pokazano niżej.

[e -mail chroniony]: ~ $ Zmień nazwę s/\.html $/\.php/' *.html

Notatka: W powyższym poleceniu użyliśmy dwóch argumentów.

  1. Pierwszy argument to Wyrażenie perla ten substytut .html z .php.
  2. Drugi argument informuje polecenie zmiany nazwy, aby zastąpić wszystkie pliki *.php.

Sprawdźmy, czy wszystkie pliki są przemianowane na „.php”Rozszerzenie, czyniąc ls -l na podpowiedzi.

[e-mail chroniony]: ~ $ ls -l łącznie 22532 -RW-RW-R-- 1 Ravisaive Ravisaive 68888896 10 października 12:10 krykieta.PHP -RW-RW-R-- 1 Ravisaive Ravisaive 588895 10 października 12:10 Rozrywka.PHP -RW-RW-R-- 1 Ravisaive Ravisaive 6188895 10 października 12:10 Zdrowie.PHP -RW-RW-R-- 1 Ravisaive Ravisaive 6538895 10 października 12:10 Lifestyle.PHP -RW-RW-R-- 1 Ravisaive Ravisaive 938895 10 października 12:10 Wiadomości.PHP -RW-RW-R-- 1 Ravisaive Ravisaive 938937 10 października 12:11 Zdjęcia.PHP -RW-RW-R-- 1 Ravisaive Ravisaive 978137 10 października 12:11 Sport.php

Teraz możesz zobaczyć powyżej wszystkie html Pliki są przemianowane na php.

2. Sprawdź zmiany przed uruchomieniem nazwy nazwy

Wykonując krytyczne lub poważne zadania zmieniające nazwę, zawsze możesz sprawdzić zmiany, uruchamiając polecenie Zmień nazwy za pomocą „-N" argument. „„-N„Parametr powie ci dokładnie, jakie zmiany miałyby miejsce, ale zmiany nie są dokonywane w rzeczywistości. Tutaj jest przykład poniższego polecenia.

[e -mail chroniony]: ~ $ Zmień nazwę -n 's/\.php $/\.html/' *.Krykiet PHP.PHP przemianowane na krykieta.HTML Entertainment.PHP przemianowane na rozrywkę.HTML Health.PHP przemianowane na zdrowie.HTML Lifestyle.PHP przemianowany na styl życia.HTML News.PHP przemianowane na wiadomości.Zdjęcia HTML.PHP zmienione na zdjęcia.HTML Sport.PHP przemianowane na sport.html

Notatka: Powyższe wyjście polecenia wyświetla tylko zmiany, ale w rzeczywistości zmiany nie są wykonywane, chyba że uruchomisz polecenie bez „-N" przełącznik.

3. Wydrukuj Zmień nazwę Wyjście

Widzieliśmy, że polecenie zmiany nazwy nie wyświetliło żadnych informacji o zmianach, które dokonuje. Tak więc, jeśli chcesz uzyskać szczegóły polecenia Zmień nazwę (tak jak używaliśmy ”-N„Opcja), tutaj używamy„-v„Opcja, aby wydrukować pełne szczegóły wszystkich zmian dokonanych przez polecenie zmiany nazwy.

[e -mail chroniony]: ~ $ Zmień nazwę -v/\.php $/\.html/' *.Krykiet PHP.PHP przemianowane na krykieta.HTML Entertainment.PHP przemianowane na rozrywkę.HTML Health.PHP przemianowane na zdrowie.HTML Lifestyle.PHP przemianowany na styl życia.HTML News.PHP przemianowane na wiadomości.Zdjęcia HTML.PHP zmienione na zdjęcia.HTML Sport.PHP przemianowane na sport.html

4. Konwertuj wszystkie małe litery na wielkie i oni-versa

Aby przenieść nazwę wszystkich plików za pomocą małe litery nazwiska do duże litery. Na przykład chcę ukryć wszystkie następujące pliki z niżej Do górny sprawa.

Dolna do górnej części
[e-mail chroniony]: ~ $ ls -l łącznie 22532 -RW-RW-R-- 1 Ravisaive Ravisaive 68888896 10 października 12:10 krykieta.html -Rw-rw-r-- 1 Ravisaive Ravisaive 588895 10 października 12:10 rozrywka.html -Rw-rw-r-- 1 Ravisaive Ravisaive 6188895 10 października 12:10 Zdrowie.html -Rw-rw-r-- 1 Ravisaive Ravisaive 6538895 10 października 12:10 Lifestyle.html -Rw-rw-r-- 1 Ravisaive Ravisaive 938895 10 października 12:10 Wiadomości.html -Rw-rw-r-- 1 Ravisaive Ravisaive 938937 10 października 12:11 Zdjęcia.html -Rw-rw-r-- 1 Ravisaive Ravisaive 978137 10 października 12:11 Sport.html

Po prostu użyj następującego polecenia z wyrażeniem perla.

[e-mail chroniony]: ~ $ Zmień nazwę 'y/a-z/a-z/' *.html

Po wykonaniu powyższego polecenia możesz sprawdzić zmiany, wykonując „ls -l".

[e-mail chroniony]: ~ $ ls -l łącznie 22532 -RW-RW-R-- 1 Ravisaive Ravisaive 68888896 10 października 12:10 krykieta.Html -Rw-rw-r-- 1 Ravisaive Ravisaive 588895 10 października 12:10 rozrywka.Html -Rw-rw-r-- 1 Ravisaive Ravisaive 6188895 10 października 12:10 Zdrowie.Html -Rw-rw-r-- 1 Ravisaive Ravisaive 6538895 10 października 12:10 Lifestyle.Html -Rw-rw-r-- 1 Ravisaive Ravisaive 938895 10 października 12:10 Wiadomości.Html -Rw-rw-r-- 1 Ravisaive Ravisaive 938937 10 października 12:11 Zdjęcia.Html -Rw-rw-r-- 1 Ravisaive Ravisaive 978137 10 października 12:11 Sport.Html

Możesz zobaczyć, że powyższe polecenie faktycznie przemianowano na wszystkie nazwy plików dolnej skrzyni (z .Html przedłużenie) do górnego przypadku.

Górny do dolnej skrzynki

Podobnie możesz również przekonwertować wszystkie duże litery postacie małe litery Korzystanie z następującego polecenia.

[e-mail chroniony]: ~ $ Zmień nazwę 'y/a-z/a-z/' *.Html
[e-mail chroniony]: ~ $ ls -l łącznie 22532 -RW-RW-R-- 1 Ravisaive Ravisaive 68888896 10 października 12:10 krykieta.html -Rw-rw-r-- 1 Ravisaive Ravisaive 588895 10 października 12:10 rozrywka.html -Rw-rw-r-- 1 Ravisaive Ravisaive 6188895 10 października 12:10 Zdrowie.html -Rw-rw-r-- 1 Ravisaive Ravisaive 6538895 10 października 12:10 Lifestyle.html -Rw-rw-r-- 1 Ravisaive Ravisaive 938895 10 października 12:10 Wiadomości.html -Rw-rw-r-- 1 Ravisaive Ravisaive 938937 10 października 12:11 Zdjęcia.html -Rw-rw-r-- 1 Ravisaive Ravisaive 978137 10 października 12:11 Sport.html

5. Zastacznij pierwszy list nazwy pliku

Aby wykorzystać tylko pierwszą literę każdej nazwy pliku, użyj następującego polecenia.

# Zmień nazwę s/\ b (\ w)/\ u $ 1/g ' *.ext 
Kapitalizuj nazwę pliku pierwszego listu

6. Nadpisz istniejące pliki

Jeśli chcesz zdecydowanie zastąpić istniejące pliki, użyj „-F„Opcja, jak pokazano poniżej.

[e -mail chroniony]: ~ $ Zmień nazwę -f/a/b/' *.html

Jeśli chcesz dowiedzieć się więcej o Command, wpisz „Zmień nazwę mężczyzny”W terminalu.

Przemianować Polecenie jest bardzo przydatne, jeśli masz do czynienia z wielokrotną lub zmianą nazwisk plików z wiersza poleceń. Spróbuj i daj mi znać, jak daleko jest przydatne pod względem zmiany nazwy plików.