我有一段有用的Bash腳本,我沒有設法翻譯成Python,其中'a'是用戶輸入的天數文件:如何在純Python中表示這個Bash命令
find ~/podcasts/current -mindepth 2 -mtime '+`a`+' -exec mv {} ~/podcasts/old \;
我對最常用的跨平臺元素的os.name和getpass.getuser很熟悉。我也有這個功能,生成的所有文件的全名在〜/播客的當量/列表電流:
def AllFiles(filepath, depth=1, flist=[]):
fpath=os.walk(filepath)
fpath=[item for item in fpath]
while depth < len(fpath):
for item in fpath[depth][-1]:
flist.append(fpath[depth][0]+os.sep+item)
depth+=1
return flist
首先,必須有一個更好的方式來做到這一點,任何建議歡迎。無論哪種方式,例如,「AllFiles('/ users/me/music/itunes/itunes music/podcasts')」在Windows上給出相關列表。大概我應該能夠瀏覽這個列表並調用os.stat(list_member).st_mtime並將所有比特定數字更早的東西移動到歸檔文件中;我有點卡住了。
當然,任何與bash命令簡潔的東西也會有所照亮。
要獲取文件的mtime,請使用os.path.getmtime(全名)而不是os.stat(全名).st_mtime – 2008-09-23 05:49:30
謝謝!成立。 – wnoise 2008-09-23 08:08:07