GitBash下ssh,linux命令体验
前言
由于工作开发测试使用电脑是windows server,在部署Java服务时总有些不便,例如不能tail看日志,服务部署麻烦
于是想在windows下使用ssh,命令行部署,于是找到了windows下有OpenSSH这样一个ssh工具,但是安装完成后才发现,连接后使用的是window cmd终端(当然也可以powerShell),用起来很不舒服,于是有了下面的折腾
准备
- 当然是需要在windows下安装好git啦,教程一大堆 菜鸟教程
- ssh配置,打开gitBash
生成秘钥,每一个三下enter,然后生成服务器端秘钥
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
gitBash环境下启动sshd服务
/usr/bin/sshd
这时sshd服务器就启动好了,可以修改一些配置,如端口号等等,当然配置文件在 你的Git目录\etc\ssh\sshd_config
例如我的就是 D:\App\Git\etc\ssh
命令行启动sshd服务
关闭sshd服务:
打开gitBash终端
netstat -ano | grep 0.0.0.0:22 | awk '{print $5}' | xargs kill -9
- 但是每次启动需要打开git-bash,输入 /usr/bin/sshd很麻烦,于是你可以写成一个简单的小脚本.bat文件,或者注册为windows服务
你的GIT路径\bin\bash.exe -c "/usr/bin/sshd"
例如我的就是
D:\App\Git\bin\bash.exe -c "/usr/bin/sshd"
PS. 此外,其实你也可以执行其他命令,而不用打开git bash窗口,
你的GIT路径\bin\bash.exe -c “你想执行的命令”
- 此外如果习惯了linux命令,gitBash里也有提供,但是我在cmd里也想使用怎么办哪
你可以选择把这些命令加入到你的环境变量下
新建变量名称
path下添加这个变量即可
注意, 命令路径都是 /开头的
这个时候其实git下附带的ssh客户端也是可以使用的