【发布时间】:2016-12-28 14:22:28
【问题描述】:
我在运行 Debian 的树莓派上安装了一个名为 rclone 的备份程序,我已经成功地在 shell 中运行了 cmd 以将文件夹备份到谷歌驱动器,但我真的需要每次都能够这样做一张我的 python 脚本的照片,与其他人相比,我在 Linux 方面的经验很少,我想如果我制作一个带有基本 shebang 的 shell 脚本
#!/bin/sh
或
#!/bin/bash
然后是下面的cmd
rclone copy /var/www/html/camera_images pictures::folder1
然后我使 .sh 文件成为可执行文件,如果我只是在文件夹中单击它并执行,但如果我尝试从 python 调用该 .sh 脚本,则可以使用
os.system('sh /home/pi/py/upload.sh')
或
os.system(' rclone copy /var/www/html/camera_images pictures::folder1 ')
我在 shell 中收到错误提示
Failed to load config file "/root/.rclone.conf" using default - no such directory.
但 .conf 应该位于 /home/pi 中。如果我尝试
os.system(' sh rclone copy /var/www/html/camera_images pictures::folder1 ')
我明白了
sh: 0: Cant open rclone.
如何从 python 运行复制 cmd 或脚本?
这就是我安装 rclone 的方式
cd
解压rclone-v1.34-linux-arm.zip
cd rclone-v1.34-linux-arm
sudo cp rclone /usr/sbin/
sudo chown root:root /usr/sbin/rclone
sudo chmod 755 /usr/sbin/rclone
sudo mkdir -p /usr/local/share/man/man1
sudo cp rclone.1 /usr/local/share/man/man1/
sudo mandb
rclone 配置
【问题讨论】:
-
确保您的 rclone 程序在您的系统路径中
-
包含 rclone.exe 的 rclone 文件夹应该在我的根目录 /home/pi 中,我可以打开 shell 并键入 cmd rclone copy /var/www/html/ camera_images pictures::folder1 即使我改变目录它也能工作。
-
好的,去掉
sh前缀告诉我们 -
k 1 分钟我现在才加载它
-
我尝试了 os.system('/home/pi/py/upload.sh') 和 os.system('rclone copy /var/www/html/camera_images pictures::folder1')我都给出相同的消息,无法加载配置文件“/root/.config.conf” - 使用默认值:打开/root/.rclone.conf:没有这样的目录。