как удалить файлы, которые могут быть в нижнем / верхнем регистре

shntool в Ubuntu 14.04

sudo add-apt-repository -y ppa:flacon
sudo apt-get update
sudo apt-get install -y flacon
shntool split -f *.cue -o flac -t '%n - %p - %t' *.ape

flacon - это графический интерфейс для shntool , но он поставляется со всеми необходимыми кодеками ...

В частности, flacon PPA предоставляет Пакет mac (Monkey's Audio Console), от которого зависит flacon , в котором есть инструмент CLI mac , который, кажется, является основным недостающим компонентом.

3
20.02.2018, 15:55
4 ответа

Para Bash -solución específica:

$ shopt -s nocaseglob

y luego ejecute el comando rm.

Nota para desactivar esta opción, useshopt -u nocaseglob

Para completar, señalaría una solución alternativa pero menos elegante:

$ rm [sS][tT][oO][cC][kK].[rR][eE][pP][oO]
7
27.01.2020, 21:10

Puedes hacerlo usando el comando find

find /path/to/directory -type f -iname stock\.repo -exec rm -f {} \;

Pero tenga mucho cuidado. Funciona de forma recursiva desde /path/to/directory. Debería considerar usar la opción de profundidad máxima y familiarizarse más con este comando antes de ejecutarlo en el sistema de producción donde se pueden producir daños permanentes.

5
27.01.2020, 21:10

Я сделал это, используя описанный ниже метод. Ответ, приведенный выше, довольно хорош. Ниже моя попытка

ls -ltr | awk '{print $9}' | sed -n '/^STOCK.Repo$/Ip'  |awk '{print "rm" " " $1}'| sh
-1
27.01.2020, 21:10

С помощью оболочек zshи ksh93вы можете сделать сопоставление нечувствительным к регистру -для каждого -глобуса:

  • zsh:

    set -o extendedglob # best in ~/.zshrc
    rm -- (#i)$filename
    
  • ksh93:

    rm -- ~(i:"$filename")
    

    Однако обратите внимание, что если нет подходящего файла, литерал ~(i:stock.repo)будет передан в rm. И если этот файл существует, он будет удален(zshвыше, завершится ошибкой и вообще не вызовет rmв этом случае ).

    Однако вы можете установить флаг Nв дополнение к флагу i:

    rm -- ~(Ni:"$filename")
    

    Затем, в случае отсутствия совпадения -, будет вызван rm, но с пустым аргументом (, вероятно, ошибка, вызванная кавычками, поскольку она предназначена для передачи без аргумента в все тогда ). Затем вы получите ошибку типа rm: cannot remove '': No such file or directory, но, по крайней мере, она не удалит неправильный файл.

0
27.01.2020, 21:10

Теги

Похожие вопросы