Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell windows XP中的.ssh目录存在问题_Powershell_Ssh - Fatal编程技术网

Powershell windows XP中的.ssh目录存在问题

Powershell windows XP中的.ssh目录存在问题,powershell,ssh,Powershell,Ssh,我正在尝试使用Powershell在windows XP中使用(git)ssh和ssh密钥 当我运行ssh时,它总是试图从一个在windows上下文中没有实际意义的位置获取密钥和已知主机 i、 e 在windows 7中,此行为似乎会导致创建.ssh目录或从c:\Program Files(x86)\Git\bin读取目录。但是,在Windows XP中,这似乎不是一种行为,请尝试直接指定: ssh -i $HOME/.ssh/id_rsa 此问题似乎是由Powershell和Windows

我正在尝试使用Powershell在windows XP中使用(git)ssh和ssh密钥

当我运行ssh时,它总是试图从一个在windows上下文中没有实际意义的位置获取密钥和已知主机

i、 e


在windows 7中,此行为似乎会导致创建
.ssh
目录或从
c:\Program Files(x86)\Git\bin
读取目录。但是,在Windows XP中,这似乎不是一种行为,请尝试直接指定:

 ssh -i $HOME/.ssh/id_rsa

此问题似乎是由Powershell和Windows中环境变量的工作方式引起/相关的

实际上,(git)ssh似乎正在获取
$env:HOME
的值,这在powershell中与$HOME的值不同

在Windows 7中,可以使用命令
setx HOME/c/Users/james
设置此值。如果要将主位置设置为驱动器(即
z:
),则必须使用尾随斜杠,否则setx将假定它是一个标志。i、 e.
setx HOME/z/

这将在您打开的下一个Powershell窗口中生效(但不会在当前窗口中生效)

在windows XP中,
setx
并不总是可用(它在SP2和SP3上),如果您阅读Microsoft文档,您可能会认为
setx
只是
reg add
的简写,但这实际上是一个谎言

如果使用命令
reg add HKCU\Environment/v HOME/t reg_SZ/d”/c/Documents and Settings/james/“

而这似乎以与
setx
相同的方式更新注册表。在注销/登录周期结束之前,这些更改在(Git)ssh中不可用

 ssh -i $HOME/.ssh/id_rsa