bash - 如何使用 shell 脚本回答运行时问题并期待
问题描述
当我做
git push
我得到命令提示符
Username for 'https://github.com':
然后我手动输入我的用户名
Username for 'https://github.com': myusername
然后我按 Enter 并提示我输入密码
Password for 'https://myusername@github.com':
我希望自动编写用户名,而不是一直手动输入。我试过期望但无法使用它
谁能帮我写一个shell脚本吗?plz :)
解决方案
那么这是一个非常小的脚本,可以做你想做的事
#!/bin/expect
spawn git push origin master
expect "Username for 'https://github.com': "
send "MY_NAME_IN_GITHUB"
interact
这样你只需要输入你的密码。您可以将此脚本绑定到某个 git 命令,它可以接受额外的参数,以便更改您的分支。
但我建议您自己创建ssh
密钥并使用它们。这是一个很棒的教程如何做到这一点:) ssh_tutorial并将GH 连接到 ssh
推荐阅读
- angularjs - AngularJS $http 反馈给用户 ng-if 多逻辑问题
- git - 如何在不同的相应本地分支 package.json 中使用单独的 git 分支作为 npm 包依赖项?
- sql-server - ForeignKey SetNull OnDelete
- r - 如何在单个图中绘制不同数据集的平均线性回归
- java - Junit 无法使用 Spark Structured Streaming 创建的文件删除 @TempDir
- python-3.x - 根据python中的列合并两个数据框
- centos - 如何在 centos 中更改/升级我的 GLIBCXX
- linux - 反转多个 SED 命令
- javascript - 使用 Javascript 修改页面上的一些 href 链接
- wpf - WPF C#如何通过代码创建派生样式