【问题标题】:Google colab changing directory谷歌 colab 更改目录
【发布时间】:2018-11-01 22:10:45
【问题描述】:

我无法更改我在 Google colab 中的目录。当我输入 cd 它给出这样的输出'/ content' 我试图改变目录使用 导入操作系统 os.chdir("驱动器")

但它显示错误 No such file or directory: 'drive' 。如何摆脱这种情况?

【问题讨论】:

    标签: directory google-colaboratory


    【解决方案1】:

    您是否创建了 /drive 目录? (默认情况下,不存在。您需要使用this one 之类的配方安装您的云端硬盘。

    否则,请先创建一个目录。例如,

    !mkdir demo
    %cd demo
    !pwd
    

    将显示/content/demo

    【讨论】:

    • 当我挂载我的 Google Drive 时会怎样?
    • 鲍勃是我的叔叔。感谢破解
    【解决方案2】:

    首先,您必须安装OCaml Fuse才能在Google Colab上使用此功能,运行以下命令安装OCaml Fuse

    !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}
    

    在安装过程中,(通常)Collab 会要求您插入两次验证码,只需点击链接并接受许可,然后将验证码复制并粘贴到出现的表单域。

    安装完成后,运行以下命令:

    !mkdir drive
    !google-drive-ocamlfuse drive
    !ls -lla drive/"Colab Notebooks"
    

    并查看输出,然后您可以像这样引用驱动器上的文件:

    x = "drive/Colab Notebooks/blablablah/blah/file.p"
    y = "drive/Colab Notebooks/blablablah/blah/file.p"
    z = "drive/Colab Notebooks/blablablah/blah/file.p"
    

    希望对你有帮助!

    【讨论】:

    • E: Package 'python-software-properties' has no installation candidate
    【解决方案3】:

    如果要将目录从 google colab 更改为 google drive,请先连接到 google drive。

    from google.colab import drive 
    drive.mount('/content/drive')
    

    它会询问可以获取的身份验证密钥 登录您的 Google Drive 时

    切换到 google drive 目录。

    %cd /content/drive/My\ Drive/
    

    用于验证: !pwd

    你的当前目录是/content/drive/My Drive/

    【讨论】:

    • 传输端点未连接:'/content/drive/My Drive/'。我收到此错误
    • 是的,因为这个答案有点过时了。现在相同的路径应该是:'/content/drive/MyDrive/'。
    • @Googr 它似乎对我不起作用。如果我输入 !ls,我可以看到驱动器文件夹。但是如果我输入 !cd /content/drive/MyDrive/(或 !cd drive/MyDrive/)然后输入 !pwd,我仍然会得到 /content。我还需要做什么才能使 !cd 命令正常工作吗?
    • @BillKet,试试 %cd 而不是 !cd。
    【解决方案4】:
    %cd /content/drive/MyDrive/folder/
    
    !pwd
    

    这会将您的目录更改为您设置的路径。您可以通过输入 !pwd 检查您更改的目录。

    【讨论】:

      【解决方案5】:

      /content/ 是保存所有文件和数据的默认目录。 要更改目录,您可以执行以下操作: 在推荐的/content/ 内创建一个文件夹。然后运行这个: import os os.chdir('/content/folder_name') 如果您运行!pwd,您会看到路径更改为/content/folder_name

      【讨论】:

        【解决方案6】:

        首先检查你正在工作的当前目录,

        !pwd
        

        现在,如果你想改变当前的工作目录,

        import os
        os.chdir('[path you want to move in]')
        

        假设路径是

        os.chdir('/content/drive/My Drive/Colab Notebooks/Data')
        

        现在目录“数据”是当前工作目录。 你可以检查一下,

        !pwd
        

        /content/drive/我的云端硬盘/Colab Notebooks/数据 这表明您的目录已成功更改。 您可以在此处查看完整示例。 https://colab.research.google.com/drive/1CSPBdmY0TxU038aKscL8YJ3ELgCiGGju#scrollTo=SWeWe_Bb8wO0

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2022-11-10
          • 2018-11-08
          • 2020-06-22
          • 2020-07-02
          • 2019-04-01
          • 2020-12-15
          • 2021-09-11
          • 2019-07-29
          相关资源
          最近更新 更多