kai*_*002 12 command-line bash scripts cuda system-installation
我正在尝试在 Ubuntu 18.04 VM 模板上自动安装 CUDA 作为启动脚本的一部分。总的来说,我对 bash 和云计算很陌生。当我运行安装 CUDA 的命令时,在安装过程中总是提示我通过输入相应的 ID 号从选项列表中选择国家和语言。
基本上,当我运行时:
sudo apt-get -y install cuda
Run Code Online (Sandbox Code Playgroud)
我知道我将不得不手动输入“31”和“1”才能完成安装。作为一个相对的 n00b,我的问题是“我如何自动化这些输入,这样我就不必在每次启动这个 VM 模板的新副本时手动输入它们?”
我最初的方法是这样的:
printf "31\n1\n" | sudo apt-get -y install cuda
Run Code Online (Sandbox Code Playgroud)
但这似乎不像我预期的那样工作。没有输入是自动填充的。
我的最终目标是在一个我不必触及的启动脚本中处理所有事情。
我感谢任何和所有帮助,如果我的问题在其他地方得到了回答,我深表歉意(如果有,我一直无法找到它并且非常感谢被引导到它!)
raj*_*raj 21
安装expect
并编写一个响应提示的预期脚本。这看起来像这样(警告 - 未以任何方式测试):
#!/usr/bin/expect
spawn sudo apt-get -y install cuda
expect "first prompt:"
send "31\r"
expect "second prompt:"
send "1\r"
wait
Run Code Online (Sandbox Code Playgroud)
您需要替换适当的实际提示而不是“第一个提示:”和“第二个提示:”。
在此处查看有关以下内容的更多信息expect
:
https://www.slashroot.in/expect-command-tutorial-linux-example-usage
http://tcl.tk/man/expect5.31/expect.1.html
您可能还对 感兴趣autoexpect
,它可以通过观看您的交互式会话自动生成脚本:
http://tcl.tk/man/expect5.31/autoexpect.1.html
归档时间: |
|
查看次数: |
1782 次 |
最近记录: |