答案 0 :(得分:2)
!
或%ls
应该都可以工作。我怀疑您的Shell脚本不在您当前的工作目录中。
您可以通过运行@Override
public <T> T[] toArray(T[] a) {
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
return a;
}
这是运行shell脚本的完整示例: https://colab.research.google.com/drive/1i5lHPcsmcgeoFEGg0Dfwjhblsm2iMExP
答案 1 :(得分:1)
如果您使用的是Shell,则不仅要调用context!!
文件,还应该在自己的终端中遇到相同的错误。您的外壳程序不在当前目录中查找外壳程序命令,因此您需要在脚本中添加一些路径上下文,以使外壳程序知道它是一个实际的可运行程序,通常是通过在脚本之前添加一个点,例如use
.sh
代替
$ . testAllLatin.sh
在Unix Stack Exchange网站上检查What's the meaning of a dot before a command in shell?。最佳答案总结如下:
在这种情况下,点表示将文件的内容“提供”到当前shell中。
$ testAllLatin.sh
本身是shell内置命令。source
和点运算符是同义词。
就Colab和Notebooks而言,source
魔术将整个单元格作为命令运行在Shell中。因此,您应该只需能够在单元格中使用以下内容:
%%shell
该爆炸只在shell中运行该行,因此您可以根据需要穿插Python。因此,您可以在一个单元格中执行以下操作:
%%shell
. path/to/testAllLatin.sh
也许最好使壳细胞保持分离。