vscode中集成bash开发环境

齐凯康
2023-12-01

bash环境需要安装的插件

插件名称说明
Remote Development远程开发【必装】
ShellCheckSHELL静态分析工具,可以帮助我们快速识别语法问题
shell-formatShell脚本自动格式化
AutoComplate shellShell自动完成插件
Shell Syntax实时识别语法错误,并提示修复方法
Shell Banner Comments生成Shell脚本的Banner
bash ideabash语法补全提示
vim将vscode编辑器加入 vim 支持

vscode 中 vim 的常用配置

   "vim.leader": "<space>",
   // 启用easymotion插件
   "vim.easymotion": true,
   // 启用系统粘贴板作为vim寄存器
   "vim.useSystemClipboard": true,
   // 由vim接管ctrl+any的按键,而不是vscode
   "vim.useCtrlKeys": true,
   // 突出显示与当前搜索匹配的所有文本
   "vim.hlsearch": true,
    // 普通模式下的非递归按键绑定
   "vim.normalModeKeyBindingsNonRecursive": [],
    // 插入模式下的非递归按键绑定
   "vim.insertModeKeyBindings": [],
   // 命令模式下的非递归按键绑定
   "vim.commandLineModeKeyBindingsNonRecursive": [],
   // 可视模式下的非递归按键绑定
   "vim.operatorPendingModeKeyBindings": [],
   // 下面定义的按键将交由vscode进行处理,而不是vscode-vim插件
    "vim.handleKeys": {
        "<C-v>": true,
        "<C-c>": false,
        "<C-a>": false,
        "<C-x>": false,
        "<C-z>": false,
        "<C-s>": false,
      }

配置ssh免密登录

为了解决登录重复输入密码的问题,配置免密登录

  • 在windows环境中安装 openssh

  • 找到C:\Users[用户名].ssh目录,将idrsa.pub中的内容复制到Linux服务器中的~/.ssh/authorized_keys文件

  • 如果windows没有.ssh目录,则执行ssh-keygen -t rsa -b 4096生成

  • 将以下三项配置添加到要远程控制的主机的 /etc/ssh/sshd_config 文件中

# PermitRootLogin yes(可选)
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile  .ssh/authorized_keys
  • 重启 ssh 服务
systemctl restart sshd

如果还是不成功的话,大家可以自行百度linux怎么配置免密登录,详细的教程还是很多的

踩坑点

vscode ssh远程连接失败,报 XHR 错误

  1. 网络不好导致 vscode-server.tar.gz 下载不下来, 显示 ssh 链接远程主机 XHR 错误
    手动到该网址 https://update.code.visualstudio.com/commit:(报错的 commitID )/server-linux-x64/stable

  2. 下载 原本的名字为:vscode-server-linux-x64.tar.gz,并将其的名字改为:vscode-server.tar.gz

  3. 将文件上传到远程主机的 用户家目录的 .vscode-server/bin/(commitID) 文件夹下

  4. 修改. C:\Users\308039.vscode\extensions\ms-vscode-remote.remote-ssh-0.84.0\out 目录下的 extension.js 文件

DOWNLOAD_URL=https://update.code.visualstudio.com/commit:$COMMIT_ID/$PLATFORM_DOWNLOAD_PATH${p?"-web":""}/${n}\n\n\twget --version &> /dev/null\n\tif (( $? == 0 ))\n\tthen\n\t\techo "Downloading with wget"\n\t\t\n\t\tif (( 0 ))\n\t\tthen\n\t\t\techo "wget download failed"\n\t\t\techo $WGET_ERRORS\n\t\t\tprintenv_indent\n\n\t\t\tdo_client_download_or_fail ${o.InstallExitCode.ServerDownloadFailed}\n\t\telse\n\t\t\techo "Download complete"

上面主要是把自动下载 vscode-server-linux-x64.tar.gz 改为不下载也不报错,有兴趣可以研究一下,没有兴趣直接将那个上面的文本替换到 extension.js 文件即可

Reference

 类似资料: