簡體   English   中英

如何使用Bash遍歷一系列文件

[英]How to loop through a series of files with Bash

我試圖遍歷一系列文件並對其進行修改。 這些文件遵循一種模式,但是我不能使用模式,因為我不需要與模式匹配的所有文件,而只需要某些數字序列之間的文件。

例:

for files in D70_3113.NEF...D70_3330.NEF;do exiftool -GPS...; done

如果要遍歷數字列表,可以使用大括號擴展名:

for files in D70_{3113..3330}.NEF; do exiftool -GPS...; done

這取決於您對命名方案的期望。 我無法確定您的文件范圍是

D70_3113.NEF to D79_9999.NEF

要么

D70_3113.NEF to D70_3999.NEF

或你有什么。 假設是后者,您可以執行以下操作:

for files in D70_3[0-9][0-9][0-9].NEF; do exiftool -GPS...; done

...只要讓shell的模式匹配為您完成工作即可。

注意:如果文件太多,“ for”命令行可能太長。 在這種情況下,您需要查找輸出並將其輸出傳遞到“ while”循環中。 但是今天的命令行可以運行很長的時間...超過100,000個字符。 請參閱Bash命令行和輸入限制

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM