![跳过钥匙串,但不跳过 .profile 的其余部分](https://linux22.com/image/1412507/%E8%B7%B3%E8%BF%87%E9%92%A5%E5%8C%99%E4%B8%B2%EF%BC%8C%E4%BD%86%E4%B8%8D%E8%B7%B3%E8%BF%87%20.profile%20%E7%9A%84%E5%85%B6%E4%BD%99%E9%83%A8%E5%88%86.png)
我正在使用keychain
来自 funtoo.org 的 ssh-agent 包装器。
eval
我通过在我的 中添加一行来自动加载它.profile
。例如:
eval `keychain --eval id_rsa github bitbucket`
有时,我第一次登录登录 shell(例如重新启动后)并且不想费心输入密码来立即将密钥添加到 ssh-agent,因为我很懒并且我知道在该会话期间我不会使用 SSH。
如果我按下 Ctrl-C,则会跳过 keychain 和 .profile 的整个其余部分。
是否有内置方法可以跳过钥匙串而不跳过 .profile 的其余部分?
顺便说一下,我的 shell 是 Bash。
答案1
在您的 .profile 中您的行之前插入此行eval ...
。
trap "echo -e '\nkeychain skipped'" SIGINT
您仍然可以使用 Ctrl+C 跳过eval ...
。trap
捕捉您的 Ctrl+C,显示一些文本,然后继续您的 .profile。