git 命令在 运行 来自脚本时不起作用
git commands not working when ran from a script
我正在尝试 运行 来自脚本的波纹管命令:
eval $(ssh-agent -s)
ssh-add
它们背后的目的是避免在当前会话的剩余时间被要求提供我的 git 密钥。一个一个地输入命令就可以了,所以我把它们放在这个脚本中:
#!/bin/bash
eval $(ssh-agent -s)
ssh-add
在 运行 之后,我从 git 得到了正确的回应:
$ gitnopasskey.sh
Agent pid 4260
Enter passphrase for /u/.ssh/id_rsa:
Identity added: /u/.ssh/id_rsa (/u/.ssh/id_rsa)
但每次我获取、拉取等时,系统仍会提示我输入密钥。我已经复制了脚本中使用的命令并一一输入,以确保我输入的是相同的命令,但结果是一样的 - 输入命令时有效,从脚本 运行ning 命令时无效。
脚本 运行 在它们自己的 shell 中。尝试采购脚本:
source gitnopasskey.sh
否则所有环境变量都不会在您的父目录中被触动shell(就像脚本中的 cd 不会触及您父目录的工作目录一样)
我正在尝试 运行 来自脚本的波纹管命令:
eval $(ssh-agent -s)
ssh-add
它们背后的目的是避免在当前会话的剩余时间被要求提供我的 git 密钥。一个一个地输入命令就可以了,所以我把它们放在这个脚本中:
#!/bin/bash
eval $(ssh-agent -s)
ssh-add
在 运行 之后,我从 git 得到了正确的回应:
$ gitnopasskey.sh
Agent pid 4260
Enter passphrase for /u/.ssh/id_rsa:
Identity added: /u/.ssh/id_rsa (/u/.ssh/id_rsa)
但每次我获取、拉取等时,系统仍会提示我输入密钥。我已经复制了脚本中使用的命令并一一输入,以确保我输入的是相同的命令,但结果是一样的 - 输入命令时有效,从脚本 运行ning 命令时无效。
脚本 运行 在它们自己的 shell 中。尝试采购脚本:
source gitnopasskey.sh
否则所有环境变量都不会在您的父目录中被触动shell(就像脚本中的 cd 不会触及您父目录的工作目录一样)