Открытие зашифрованных томов с помощью сценария [закрыто]

Присваивает часть имени файла (возможно, с путем) переменной file. В частности, бит перед первым . символ в имени самого файла. Другими словами, он берет что-то вроде /some/path/hello.world и анализирует бит hello.

Советом будет запускать каждую часть конвейера в командной строке:

$ thing="/some/path/hello.world"

$ echo "$thing"
/some/path/hello.world

$ echo "$thing" | xargs -n 1 basename
hello.world

$ echo "$thing" | xargs -n 1 basename | cut -d '.' -f 1
hello

Обратные кавычки используются для возврата вывода конвейера и назначения его файлу. $1 — это первый аргумент в командной строке (для любого скрипта или функции оболочки, частью которой он является).

Вероятно, единственная причина, по которой xargs -n 1 basename используется вместо обычного basename, заключается в том, что утилита basename не читает стандартные ввод, но xargs.

Более короткая (и более быстрая) версия того же самого в bash или ksh93 будет

file=${1##*/}
file=${file%%.*}
1
16.12.2018, 12:28
2 ответа

Глупый я. Я должен был проверить, прежде чем спрашивать.

При выполнении этих команд в сценарии у меня запрашиваются парольные фразы.

0
28.01.2020, 00:21

read -sp ‘Enter passphrase ‘ pw echo “${pw}” | cryptsetup...должно сработать

0
28.01.2020, 00:21

Теги

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