Теперь проще (? )— использовать команду с опцией --verbose
, но без указания опции --key-slot
:
# cryptsetup --verbose open --test-passphrase /dev/sda2
Enter passphrase for /dev/sda2:
Key slot 4 unlocked.
Он автоматически проверит для вас правильный слот, не заставляя вас искать подходящий слот:)
#!/bin/bash
#first you take the input of the file, in two separate strings
IFS=$'\n'
{
read line1
read line2
} < yourfile
#then you create arrays out of the strings, by modifying IFS to
IFS=$'\t'
a=($(echo "$line1"))
b=($(echo "$line2"))
if [[ ${#a[@]} -eq ${#b[@]} ]] #if you want no var to be empty
then
num=0
while [[ -n "${a[$num]}" ]]
do
declare -g "$(echo ${a[$num]})"="$(echo ${b[$num]})"
((num++))
done
fi
теперь вы можете вызывать свои переменные по имени или косвенно как ${!a[0]} и т. д.
Создайте назначения переменных с помощью awk
и источник вывода, используя подстановку процесса.
. <(awk -F'\t' '{ for(i=1;i<=NF;i++) if (FNR==1) a[i]=$i; else print a[i] "=" $i }' file)
То же самое с GNUdatamash
:
. <(datamash --output-delimiter== transpose <file)