【问题标题】:How to access Linux's downloads folder using python?如何使用 python 访问 Linux 的下载文件夹?
【发布时间】:2022-01-26 01:18:24
【问题描述】:

在 ubuntu 中,下载文件夹位于 home\ubuntu\Downloads,但我不知道不同的发行版是否具有相同的“样式”(例如 home\arch\Downloads)。是否有适用于所有发行版的“通用路径”? 对于任何想知道我需要在下载中创建一个新目录的人。

【问题讨论】:

  • 其实它位于用户路径下。您可以通过~/Downloads 轻松访问它,其中~ 表示用户的主文件夹。你可以在python中获取用户主目录的绝对路径。
  • 我重新打开了这个问题,因为我认为这个answers 并不令人满意。 freedesktop 从未被提及,尽管它现在是 Linux 下的标准。

标签: python python-3.x linux directory distro


【解决方案1】:

在 Linux 上,您可以使用 freedesktop.org 项目中的xdg-user-dir。它应该适用于所有最近的桌面环境(KDE、Gnome 等)和所有最近的发行版:

import shutil
import subprocess

xdg_bin = shutil.which('xdg-user-dir')
process = subprocess.run([xdg_bin, 'DOWNLOAD'], capture_output=True)
download_path = process.stdout.strip().decode()
print(download_path)

# Output:
/home/corralien/Downloads

【讨论】:

    【解决方案2】:

    您的“主目录”(在功能上类似于 Windows 上的 C:\Users\YOUR_USERNAME)在 大多数 Linux 发行版上位于 /home/YOUR_USERNAME,这也是下载文件夹通常所在的位置。最确定获取正确目录的方法是使用pathlib.Path.home()

    from pathlib import Path
    downloads_path = str(Path.home() / "Downloads")
    

    Taken from this answer

    【讨论】:

    • 哦,现在说得通了。我已将我的 ubuntu 用户命名为“ubuntu”
    猜你喜欢
    • 2018-04-29
    • 1970-01-01
    • 2011-12-16
    • 1970-01-01
    • 2016-10-19
    • 2020-07-17
    • 1970-01-01
    • 1970-01-01
    • 2022-06-13
    相关资源
    最近更新 更多