GNU/Linux >> Znalost Linux >  >> Linux

Jak v Linuxu přejmenuji všechny složky a soubory na malá písmena?

Ještě menší se mi docela líbí:

rename 'y/A-Z/a-z/' *

U souborových systémů nerozlišujících malá a velká písmena, jako je HFS+ OS X, budete chtít přidat -f příznak:

rename -f 'y/A-Z/a-z/' *

Stručná verze s použitím "rename" příkaz:

find my_root_dir -depth -exec rename 's/(.*)\/([^\/]*)/$1\/\L$2/' {} \;

Tím se vyhnete problémům s přejmenováním adresářů před soubory a pokusem o přesun souborů do neexistujících adresářů (např. "A/A" do "a/a" ).

Nebo podrobnější verzi bez použití "rename" .

for SRC in `find my_root_dir -depth`
do
    DST=`dirname "${SRC}"`/`basename "${SRC}" | tr '[A-Z]' '[a-z]'`
    if [ "${SRC}" != "${DST}" ]
    then
        [ ! -e "${DST}" ] && mv -T "${SRC}" "${DST}" || echo "${SRC} was not renamed"
    fi
done

P.S.

Ten umožňuje větší flexibilitu s příkazem move (například "svn mv" ).


Linux
  1. Přejmenujte všechny soubory a názvy adresářů na malá písmena v Linuxu

  2. Jak přejmenovat soubory v Linuxu

  3. Jak přesunout všechny soubory a složky pomocí příkazu mv

  1. Jak archivovat a komprimovat soubory na Linuxu

  2. Metamorphose 2 – Dávkové přejmenování souborů a složek v systému Linux

  3. Jak najít všechny soubory/složky s oprávněním 777 v Linuxu?

  1. Jak přejmenovat soubory v Linuxu

  2. Jak přejmenovat soubory a adresáře v Linuxu

  3. Jak komprimovat soubory a adresáře v Linuxu