Colab 文件操作

Colab常用文件操作

  • 执行shell命令
  • 上传文件
  • 下载文件
  • 使用Google Drive上的文件
  • 载入一个Python脚本

执行shell命令

在常规shell命令前加上!
注意:命令需要紧跟在!

1
2
!pip install numpy
!ls

上传文件

1
2
3
from google.colab import files
uploaded = files.upload()
# 点击输出结果中的Choose Files会打开浏览器的文件上传窗口

上传完成的文件可以通过!ls来查看

下载文件

1
2
from google.colab import files
files.download('example.txt')

运行后会自动下载

使用Google Drive上的文件

因为Colab完全基于云端运行,每次新建一个记事本后台对应的都是一个新建的虚拟机,所以如果本次运行需要额外文件的话,就需要再次手动上传。

直接使用Google Drive上的文件可以免去每次都手动上传文件至Colab的麻烦。

使用Google Drive上的文件共需要三步

1. 将Colab记事本和Google Drive绑定

直接复制粘贴下面的代码至Colab记事本中运行

1
2
3
4
5
6
7
8
9
10
11
12
!apt-get install -y -qq software-properties-common python-software-properties module-init-tools
!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
!apt-get update -qq 2>&1 > /dev/null
!apt-get -y install -qq google-drive-ocamlfuse fuse
from google.colab import auth
auth.authenticate_user()
from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass
!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

运行过程中会出现两次提示打开链接,登录自己的Google账号授权

2. 将Google Drive映射到当前Colab的drive文件夹下

为了好记,将文件夹命名为drive, 也可以命名为其他名字

1
2
!mkdir -p drive 
!google-drive-ocamlfuse drive

此时用!ls命令查看,会发现Colab默认目录下多了一个drive文件夹,drive文件夹内的内容就是我们Google Drive上的所有文件

3. 将Colab默认工作目录更改为Google Drive下某个目录

1
2
import os
os.chdir("drive/.../...") # 你所需要的目录

此时用!ls命令查看,会发现Colab的默认目录已经变成我们指定的目录了。

载入一个Python脚本

参考