2016-03-24 23 views
1

sütun adından kabuk alma giriş döngü için "{$ ID}" içeren benzer kısmi dosya adları ile benzer dosyaları bir grup üzerinde yinelemeli bir görev gerçekleştirmek istiyorum. Program, her bir ayrı dosya için manuel olarak çalışıyor. Bir txt dosyasından 'ID' almak ve görevi yapmak için kabukta for döngüsünü yazmak istedim. Bir while döngü ile dosyanın üzerineBir satır ayrılmış dosya

for ID in 'values in coloumn1 of test.txt file' 
    do 
    file1=xyz_{$ID}.txt 
    file2=abc_{$ID}.txt 
    execute the defined function using file1 and file2 
    write to > out_{$ID}.txt 
done 
+0

olası çift (http://stackoverflow.com/questions/28725333/looping-over-pairs-of-values-in-bash) – tripleee

cevap

1

Bıkmadan, hem girişi bir çizgi read icar: Ben Eaxmple sınama.txt dosyanın coloumn1 değerlerden döngü içinde giriş argüman kimliğini ver alamıyorum her satırın ilk sütununu dosyalayıp ayırmak. kolonlar boşluk dışında bir karakterle sınırlanmış ise

while read -r ID rest; do 
    ... 
done < test.txt 

, tek karaktere belirtmek için IFS kullanın. [Bash değerleri çifti boyunca döngü] arasında

# comma-delimited files 
while IFS=, read -r ID rest; do 
    ... 
done < test.txt 
İlgili konular