Во время исследования я обнаружил , что идентификатор ключа обычно представляет собой последние 8 или 16 байтов отпечатка ключа. Поэтому я хотел извлечь только их из вывода. Как этого добиться?
Я нашел следующий подход, который работает:
keyID.sh
#! /bin/bash
KEY_PATH=$1
KEY_FINGERPRINT=$(gpg --with-fingerprint ${KEY_PATH} | grep "Key fingerprint" | cut -d "=" -f 2 | tr -d ' ' | tr '[:upper:]' '[:lower:]')
echo ${KEY_FINGERPRINT} | grep -o '.\{8\}$'
echo ${KEY_FINGERPRINT} | grep -o '.\{16\}$'