比方說,我有一個文件夾,其文件名的格式爲foo<number1>.bar.o<number2>
。 <number1>
可以由1
,2
或3
數字組成。在某個點移動名稱中有一個或兩個數字的文件
現在,如果我,一些奇怪的原因,將要移動只在其中<number1>
由1
或2
數字的文件,而不是3
,我會寫一個python
腳本:
#!/bin/python
import glob, shutil, re
for f in glob.glob("*.bar.o*"):
print f
numbers = map(int, re.findall('\d+', f))
print numbers
if numbers[0] < 100:
shutil.move(f, "dir/" + f)
問題現在:如果這可以用較少的代碼完成,例如一行(最多80個字符),怎麼辦?
希望可用於bash
shell的解決方案。
你有沒有試過你自己打這個?如果是這樣,你卡在哪裏? –
@TomFenech在'bash'部分,真的。我的問題更多地基於對其他解決方案的興趣,因爲我知道我花了大約10分鐘的代碼遠遠不是最優的。我現在看到這個缺陷,它不是一個真正的問題,或者意味着一個問題,但我仍然感興趣。 –