Не самый элегантный из решений, имеет несколько недостатков, но вот что я получил:
find . -type f -name "*.wav" -printf "***%p\n" -exec file {} \; | awk '/\*\*\*/{printf $0"|"};{gsub(/\,/,"");for(i=1;i<=NF;i++) if($i~/Hz/) printf " "$(i-1)"|"$i"\n" }' | sort --field-separator="|" --numeric -k 2
В основном мы используем команду find для поиска файлов с расширением «.wav» , внутри /my/audio/folder. Мы печатаем путь к каждому файлу, заполняя его тремя знаками подстановочных знаков и выполняем команду file для каждого из них. Выход stdout проходит через трубу к длинному коду awk, который считывает каждую строку; если строка имеет три звездочки - это имя файла, напечатайте его; если в строке, помещенной в строку, содержится Hz, мы печатаем число перед этим полем и само поле. Все напечатано таким образом, чтобы иметь выход в формате ***/path/to/file | number | (k)Hz. Наконец, вывод обрабатывается командой sort, которая сортируется численно на основе столбца 2 (число).
Большим ограничением является то, что он работает нормально с файлами того же типа, но если вы смешаете mp3 и wav, то вы заметите, что mp3-файлы отображают свою частоту как 44,1 кГц, и это разбивает сортировку.
Пример вывода, который у меня есть, например:
***./test.wav| 8000|Hz
***./odeath.wav| 44100|Hz
***./Front_Center.wav| 48000|Hz
Используйте опцию --gecos, чтобы пропустить интерактивную часть chfn.
adduser --disabled-password --gecos "" username
Все это на странице руководства. Не самая очевидная формулировка.
--gecos GECOS
Set the gecos field for the new entry generated. adduser will
not ask for finger information if this option is given.
Поле GECOS является списком, разделенным запятыми: Full name,Room number,Work phone,Home phone, несмотря на то, что упоминается страница man finger information Подробности - Wikipedia
Надеюсь, это поможет вам.
Используйте опцию --gecos, чтобы пропустить интерактивную часть chfn.
adduser --disabled-password --gecos "" username
Все это на странице руководства. Не самая очевидная формулировка.
--gecos GECOS
Set the gecos field for the new entry generated. adduser will
not ask for finger information if this option is given.
Поле GECOS является списком, разделенным запятыми: Full name,Room number,Work phone,Home phone, несмотря на то, что упоминается страница man finger information Подробности - Wikipedia
Надеюсь, это поможет вам.
useradd также может добавлять пользователей и не имеет встроенных встроенных подсказок.
useradd -m -p <encryptedPassword> -s /bin/bash <user>
-m, --create-home: создать домашнюю директорию пользователя -p, --password: указать пароль пользователя -s, --shell: оболочка по умолчанию для пользователя входа в систему. Blank будет использовать стандартную логическую оболочку, указанную переменной SHELL в /etc/default/useradd Substitute <user>, с именем входа. Замените <encryptedPassword> на зашифрованный пароль Существует много реализаций crypt3, которые могут генерировать хешированный пароль.
Результирующий формат вывода: механизм хеширования ($6 для sha-512), случайная соль (восемь
-m, --create-home: создать домашнюю директорию пользователяПолученный формат вывода: первые 2 байта - ваша соль, остальная часть - полезная нагрузка. Все это ваш хешированный пароль.
mkpasswd: mkpasswd (предоставляется пакетом whois) -p, --password: Укажите пароль пользователя perl: perl -e "print crypt('password', 'sa');" /!\ Выбирайте свою собственную случайную двухбайтную соль вместо 'sa' -s, --shell: оболочка по умолчанию для пользователя входа в систему Blank будет использовать стандартную логическую оболочку, указанную переменной SHELL в /etc/default/useradduseradd также может добавлять пользователей и не имеет встроенных встроенных подсказок.
useradd -m -p <encryptedPassword> -s /bin/bash <user>
-m, --create-home: создать домашнюю директорию пользователя -p, --password: указать пароль пользователя -s, --shell: оболочка по умолчанию для пользователя входа в систему. Blank будет использовать стандартную логическую оболочку, указанную переменной SHELL в /etc/default/useradd Substitute <user>, с именем входа. Замените <encryptedPassword> на зашифрованный пароль Существует много реализаций crypt3, которые могут генерировать хешированный пароль.
Результирующий формат вывода: механизм хеширования ($6 для sha-512), случайная соль (восемь
-m, --create-home: создать домашнюю директорию пользователяПолученный формат вывода: первые 2 байта - ваша соль, остальная часть - полезная нагрузка. Все это ваш хешированный пароль.
mkpasswd: mkpasswd (предоставляется пакетом whois) -p, --password: Укажите пароль пользователя perl: perl -e "print crypt('password', 'sa');" /!\ Выбирайте свою собственную случайную двухбайтную соль вместо 'sa' -s, --shell: оболочка по умолчанию для пользователя входа в систему Blank будет использовать стандартную логическую оболочку, указанную переменной SHELL в /etc/default/useradd