Моя проблема
Моя основная проблема в том, что мне нужно запустить gnome-keyring-daemon из оболочки c.В bash это довольно просто:
> export `gnome-keyring-daemon`
, что эквивалентно:
> export GNOME_KEYRING_SOCKET=/tmp/0123.1.sds/keyring-abcdef/socket GNOME_KEYRING_PID=012345
Моя цель - получить те же функции в оболочке c, но мои навыки командной строки не верны.до задачи.
Что я попробовал
Если я запустил
echo gnome-keyring-daemon
|tr '=' '' |sed s / GNOME_KEYRING_SOCKET / setenv \ GNOME_KEYRING_SOCKET / |sed s / GNOME_KEYRING_PID / \; setenv \ GNOME_KEYRING_PID /
У меня хорошее начало:
setenv GNOME_KEYRING_SOCKET /tmp/0123.1.sds/keyring-abcdef/socket ;setenv GNOME_KEYRING_PID 012345
Несмотря на то, что я могу скопировать и вставить этот вывод в командную строкуи заставить его работать, если я заключаю это утверждение в тики, чтобы заставить его работать в одну строку, я получаю следующую ошибку:
Недопустимая нулевая команда.
Я исследовали увидел, что это связано с новой строкой, пробирающейся в , которую нужно экранировать или удалить;однако, я все еще получаю сообщение об ошибке даже после добавления команд замены для \ r и \ n, например:
> | tr '\r' ' ' | tr '\n' ' ' |
Что я ищу
Я действительноМне нужно что-нибудь добавить в мой файл .cshrc, который запустит демон gnome-keyring-daemon.Если я на неправильном пути, я был бы рад услышать альтернативный подход.
Спасибо!
Последнее, что я попробовал
Чтобы действительно упростить это, я также попытался установить только одну переменную за раз:
setenv GNOME_KEYRING_PID `echo -n `gnome-keyring-daemon` | sed 's/.*GNOME_KEYRING_PID=\([0-9]\+\)/\1/'`
, что также дает мне «Недопустимая нулевая команда».сообщение, несмотря на то, что это работает:
setenv GNOME_KEYRING_PID `echo '1234'`