我有一个python脚本可将所有文件从USB存储设备复制到Ubuntu计算机中的目标文件夹.我以前从未用Python编程过.
import os
import shutil
from shutil import copytree,ignore_patterns
files = os.listdir('/media/user/HP drive')
destination = '/home/user/Documents/Test/%s'
try :
for f in files:
source = '/media/user/HP drive/%s' % f
copytree(source,destination,ignore=ignore_patterns('*.pyc','tmp*'))
except Exception as e:
print(e)
上面的脚本运行良好,但是它在Test文件夹内用锁定符号创建了一个文件夹%s.当我删除%s而只使用
destination = '/home/user/Documents/Test/'
它给我[Errorno 17]文件存在.
这是安装USB设备时要运行的bash脚本(copy.sh).
#!/bin/sh
python /var/www/html/copy_flash.py #This doesn't work.
# echo "My message" > /var/www/html/thisisaverylongfilename.txt #This works
因此,当我插入USB时,python命令不起作用,但是echo命令起作用.
这是我在/etc/udev/rules.d/test.rules中添加的行
ACTION=="add",KERNEL=="sdb*",RUN+="/var/www/html/copy.sh"
是因为bash脚本运行时USB驱动器未准备好吗?
>如何将USB驱动器的内容复制到常规文件夹而不是%s中?
>我实际上如何复制内容?