Другой способ - использовать grep -h
для простого поиска пустой строки в каждом файле. Это будет соответствовать всем строкам, независимо от того, сколько строк завершается символом новой строки или нет. Результаты grep всегда заканчиваются новой строкой. Параметр -h
подавляет префикс каждой строки вывода с именем файла, из которого оно было получено:
$ printf 'a' > a
$ printf 'b\nB' > b
$ printf 'c\n' > c
$ ls
a b c
$ cat -- *
ab
Bc
$ grep -h '' *
a
b
B
c
$
Или вы можете использовать GNU paste
в -s
erial mode с новая строка в качестве разделителя:
$ paste -s -d '\n' -- *
a
b
B
c
$
Все инструменты командной строки (, в том числе найденный в другом ответе ), НЕ могут взаимодействовать с паролем самой связки ключей, вероятно, по замыслу. Вам почти наверняка придется посмотреть на формат файла и код для «gnome -keyring -daemon» и создать свой собственный. Это, вероятно, не слишком сложно, но вам, возможно, не придется заходить так далеко.
Ближайший инструмент, который я смог найти, называется «морской конек». Я понятия не имею, почему он называется так, а не «gnome -keyring -manager» или что-то в этом роде, но это графический интерфейс для доступа к gnome keyring.
Это графический интерфейс, но мне удалось угадать пароль менее чем за двадцать попыток, поэтому я не удосужился выяснить, могу ли я автоматизировать его с помощью какой-либо формы макрокоманд X. (что НАМНОГО сложнее для Linux, чем для Windows, из соображений безопасности.)
Написать немного Python для прямого доступа к самому файлу набора ключей, вероятно, проще. Вполне вероятно, что это невозможно с использованием существующих инструментов, и это сделано по замыслу. Демон gnome -keyring -, вероятно, не обеспечивает прямой доступ к связкам ключей. Это означает, что графический интерфейс «морского конька», вероятно, на самом деле не запрашивает пароли и не разблокирует вещи, а передает запрос демону, который затем запрашивает пользователя напрямую.
Но это предположение.
Существует скрипт Python gkeyring
, который позволяет взаимодействовать с демоном набора ключей GNOME.
A small Python tool for shell access to GNOME keyring. It provides simple querying for and creating of keyring items.
Example usage:
$ gkeyring.py --all
List all keyring items in the default keyring.
$ gkeyring.py --id 12
Get keyring item with ID 12 in default keyring.
$ gkeyring.py --name 'backup'
Search for keyring item with name 'backup'. You can easily see item names e.g.
in the overview of Seahorse application.
$ gkeyring.py -p account_name=my@jabber.org -i gajim=1 -1
Search for keyring item with property 'account_name' with value 'my@jabber.org'
and property 'gajim' with integer value '1'. Output only the secret(s).
$ gkeyring.py --type network -p server=my.com,protocol=ftp --output user,secret
Search for network keyring item with 'server' and 'protocol' properties. Output
property 'user' followed by item's secret.
$ gkeyring.py --set --name 'foo' -p bar=baz --keyring login
Create a new item in keyring 'login' with name 'foo' and property 'bar'.
$ gkeyring.py --delete --id 12
Delete a keyring item with ID 12.
$ gkeyring.py --lock --keyring login
Lock keyring 'login'.