Wikipedia

Search results

001

下面是一个自动化的Shell脚本示例,适用于Linux和macOS系统(Windows Git Bash也可以用,但复制公钥到剪贴板部分可能需要根据环境调整)。此脚本会:

- 生成SSH密钥(默认ed25519)
- 启动SSH代理并添加私钥
- 自动将公钥复制到剪贴板(根据系统自动判断)
- 提示你手动去GitHub添加公钥
- 测试SSH连接

请先把脚本中的 `your_email@example.com` 替换成你的邮箱,然后保存为 `setup_ssh_github.sh`,在终端执行:

```bash
bash setup_ssh_github.sh
```

---

````bash
#!/bin/bash

# 请替换为你的邮箱
EMAIL="your_email@example.com"

echo "1. 生成SSH密钥..."
ssh-keygen -t ed25519 -C "$EMAIL" -f ~/.ssh/id_ed25519 -N ""

echo "2. 启动ssh-agent..."
eval "$(ssh-agent -s)"

echo "3. 添加私钥到ssh-agent..."
ssh-add ~/.ssh/id_ed25519

echo "4. 复制公钥到剪贴板..."

PUB_KEY_FILE=~/.ssh/id_ed25519.pub

if command -v pbcopy &> /dev/null
then
    pbcopy < "$PUB_KEY_FILE"
    echo "公钥已复制到剪贴板 (macOS pbcopy)"
elif command -v xclip &> /dev/null
then
    xclip -selection clipboard < "$PUB_KEY_FILE"
    echo "公钥已复制到剪贴板 (Linux xclip)"
elif command -v clip.exe &> /dev/null
then
    cat "$PUB_KEY_FILE" | clip.exe
    echo "公钥已复制到剪贴板 (Windows clip.exe)"
else
    echo "无法自动复制公钥,请手动打开文件并复制: $PUB_KEY_FILE"
fi

echo ""
echo "请登录GitHub,进入 Settings -> SSH and GPG keys -> New SSH key,粘贴公钥并保存。"
read -p "按回车继续测试SSH连接..."

echo "5. 测试SSH连接..."
ssh -T git@github.com

echo "脚本执行完毕!"
````

---

### 注意事项

- 脚本中生成的密钥文件会覆盖 `~/.ssh/id_ed25519`,如果已有密钥请先备份。
- Windows用户如果用Git Bash,确保 `clip.exe` 命令可用。
- 复制公钥失败时,脚本会提示你手动复制。

如果需要我帮你写Windows批处理脚本或者PowerShell版本,也可以告诉我!

No comments:

Post a Comment

TAPERING OF HOST-NATION LIQUIDITY PREMIUM INTENSIFIES; MEXICAN PESO SLUMPS 0.9%, BRAZILIAN REAL HITS 15-MONTH LOW

[ SYSTEM_MATRIX: EM_CURRENCY_CAPITULATION ] NODE: EVENT_PREMIUM_FADE // HOST_LIQU...