Ubantu20.04 之 expect —— 安装、常用语法保姆级入门

本文介绍了如何在Ubuntu20.04上安装和使用expect进行自动化交互操作,特别是在SSH登录场景中的应用。通过expect,可以编写脚本自动切换用户并输入密码,简化多服务器管理任务。文章详细讲解了下载、安装Tcl和expect的步骤,并提供了bash脚本示例,用于开机启动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言···:

         最近做到一个项目qt需要用ubantu用户的方式去登陆这样一些路径就可以得到,不用特别复杂的重写,为之后的工程省下了很多的事情,从而实现liunx免密码登陆ubantu的用户账户

原理解释···:

        Expect 主要应用于自动化交互式操作场景,可以将ssh、ftp、scp等需人工交互的操作写在一个脚本上使之自动化完成。尤其适用于需要对多台服务器执行相同操作的环境中,可以大大提高系统管理人员的工作效率。

其主要交互流程是:

    spawn启动指定进程(发送命令) -> expect获取指定关键字 -> send发送回应 -> 执行完成 -> 继续或退出.

一、 下载安装

 expect 是由基于Tcl( Tool Command Language )语言开发的,

因此安装前需要安装tcl语言环境。可以使用yum安装或源码安装。

主要实现功能是让其在shell中自动实现切换用户并输入密码,这样就可以调用ros下的sql在服务中

源码地址:

一、下载Expect服务

Ubuntu 20.04 系统上安装 **CUDA 12.2** 和 **cuDNN**,需要遵循以下步骤进行操作: ### 安装 CUDA 12.2 1. 下载并添加 CUDA 的软件仓库: ```bash wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 wget https://developer.download.nvidia.com/compute/cuda/12.2.0/local_installers/cuda-repo-ubuntu2004-12-2-local_12.2.0-535.54.03-1_amd64.deb ``` 2. 安装 CUDA 仓库包: ```bash sudo dpkg -i cuda-repo-ubuntu2004-12-2-local_12.2.0-535.54.03-1_amd64.deb ``` 3. 添加仓库的 GPG 密钥: ```bash sudo apt-key add /var/cuda-repo-ubuntu2004-12-2-local/7fa2af80.pub ``` 4. 更新 APT 包索引: ```bash sudo apt-get update ``` 5. 安装 CUDA 工具包: ```bash sudo apt-get install -y cuda ``` 6. 设置环境变量(可选): 将以下内容添加到你的 `~/.bashrc` 文件末尾以确保系统识别 CUDA: ```bash export PATH=/usr/local/cuda/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} ``` 应用更改: ```bash source ~/.bashrc ``` 7. 验证安装是否成功: ```bash nvcc --version ``` ### 安装 cuDNN 1. 访问 NVIDIA 官方网站下载适用于 CUDA 12.2 的 cuDNN 版本。通常需要注册 NVIDIA 开发者账号。 2. 解压下载的 cuDNN 包: ```bash tar -xzvf cudnn-linux-x86_64-8.x.x.x_cuda12-archive.tar.xz ``` 3. 复制文件到 CUDA 目录: ```bash sudo cp cuda/include/cudnn*.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn* ``` 4. 验证 cuDNN 是否安装成功: 可以通过编译一个使用 cuDNN 的简单程序来验证安装是否正确。 ### 常见问题解决方法 - 如果遇到类似 `test.c:1:10: fatal error: FreeImage.h: No such file or directory` 的错误,请安装相关依赖库: ```bash sudo apt-get install libfreeimage3 libfreeimage-dev ``` ### 卸载 CUDA 12.2 如果需要卸载 CUDA 12.2,可以使用以下命令: ```bash sudo dpkg --remove cuda-repo-ubuntu2004-12-2-local ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

忒懂先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值