Найти + -printf + конфликт сортировки?

Вам нужно будет использовать echo , чтобы передать $ i в awk. В противном случае он ищет файл.

A=$(echo $i | awk -F_ '{print $1}')

То же самое с B

0
20.01.2019, 11:20
1 ответ

Если все файлы находятся в одном каталоге, и вы хотите передать список отсортированных имен файлов в sox, тогда оболочка bash может сделать это напрямую:

shopt -s nocaseglob
sox *.flac

Параметр оболочки nocaseglobпозволяет подстановочному знаку выбирать foo.FLAC, foo.Flac, foo.flaC и т. д. Подстановочный знак расширяется до списка, отсортированного по алфавиту, почти так же, как обычный sort. Например, 9-file.flacбудет помещено после любого имени файла, начинающегося с 8.

Спасибо @mosvy за упрощение приведенного выше bash -ism в подстановочный знак, который должен работать с любой оболочкой:

sox *.[Ff][Ll][Aa][Cc]

Скобки допускают любую комбинацию букв верхнего -и нижнего -регистра в расширении «flac», чтобы соответствовать тому, что делал ваш find... -iname "*.FlAc".

3
28.01.2020, 02:23

Теги

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