shell - 如何在 Google Colab 中运行 shell(终端)?
问题描述
我知道我可以调用!ls
来向 shell 发出ls
命令。
但我想要历史记录或制表符补全等功能。
可以在 Google Colab 中这样做吗?
解决方案
您可以使用支持的 jQuery Terminal Emulatorgoogle.colab.kernel.invokeFunction
这是一个示例笔记本。
关键部分在这里,你用 shell 函数支持它。
def shell(command):
return JSON([getoutput(command)])
output.register_callback('shell', shell)
这里是你如何使用invokeFunction
:
try {
let res = await google.colab.kernel.invokeFunction('shell', [command])
let out = res.data['application/json'][0]
this.echo(new String(out))
} catch(e) {
this.error(new String(e));
}
这是一个屏幕截图。
更新(2020 年 7 月)
我已将@Anant 的答案添加到我的库中。现在您可以轻松运行控制台
!pip install kora
from kora import console
console.start() # and click link
更新 (12/2020)
如果您订阅 Colab Pro,现在可以使用终端。只需单击左侧窗格中的“终端”图标。
推荐阅读
- csv - 通过批处理合并 2 个 csv 文件
- c# - 组合框不显示某些负数
- python - sqlite3.ProgrammingError:提供的绑定数量不正确。当前语句使用 0,并且提供了 1
- javascript - 子组件不更新道具更新
- python - pd.fillna() 不适用于所有数字列
- excel-formula - 如果范围内的任何单元格不是“”(空)
- java - 对范围报告器使用测试名称而不是方法名称
- performance - 在 kotlin 中加入两个可变列表的最佳方式或最佳性能是什么?
- python - 使用python根据标题标签自动生成嵌套目录
- javascript - 如何在 Angular 中消除键盘输入(keyUp)的抖动并引入主题/可观察对象