wap*_*ppa 5 windows ssh config path git-bash
我目前正在 Windows 上使用 Git Bash 通过 SSH 连接到 Linux 服务器。
\n\n目录中正在使用配置文件:“\xe2\x80\xaa\xe2\x80\xaa\xe2\x80\xaa\xe2\x80\xaaC:\\Users\\FirstName LastName.ssh\\config”
\n\n配置文件如下所示:
\n\nHost hub\n HostName 192.168.1.151\n User root\n IdentityFile \xe2\x80\xaa\xe2\x80\xaa\xe2\x80\xaa\xe2\x80\xaaC:\\Users\\FirstName LastName\\.ssh\\hub\n
Run Code Online (Sandbox Code Playgroud)\n\n正如您所看到的,IdentityFile 中的名字和姓氏之间有一个空格字符。这会导致 Git Bash 无法读取指定的路径。它打印此错误:/c/Users/FirstName LastName/.ssh/config line 4: garbage at end of line; "LastName\\\\.ssh\\\\hub".
我尝试使用引号来指定字符串,并且尝试在 IdentityFile 路径中使用 %USERPROFILE% 变量,因此没有空格。
\n\n带引号的解决方案会导致此错误:
\n\nno such identity: \\342\\200\\252\\342\\200\\252\\342\\200\\252\\342\\200\\252C:\\\\Users\\\\FirstName LastName\\.ssh\\\\hub: No such file or directory\n
Run Code Online (Sandbox Code Playgroud)\n\n然后向我询问密码:
\n\nroot@192.168.1.151\'s password:\n
Run Code Online (Sandbox Code Playgroud)\n\n%USERPROFILE% 的解决方案给了我这个错误:
\n\npercent_expand: unknown key %U\n
Run Code Online (Sandbox Code Playgroud)\n\n所以我基本上被困在这里,关于如何解决这个问题有什么想法吗?
\n所以,当我使用 IdentityFile 的引号时,我实际上正确地解决了这个问题。问题是,当我将路径(我从 Windows 资源管理器内的文件属性复制)粘贴到配置文件中以定义 IdentityFile 时,有些字符对编辑器来说是不可见的。这些字符让 Git Bash 中的 SSH 客户端感到困惑。复制路径的开头出现意外字符。
Windows 有时很奇怪:/
通常,在文件上运行此命令将删除不可见字符:
sed -i '1s/^.*#//;s/\r$//' {FILENAME}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8109 次 |
最近记录: |