簡體   English   中英

如何使變量成為bash中文件夾中文件名的序列? 並在for循環中使用兩個變量?

[英]How to make a variable be a sequence of file names from a folder in bash? And use two variables in for loop?

我正在嘗試制作一個簡單的bash腳本,該腳本可以一次運行多個文件的程序一次,並考慮使用for循環來實現。 這就是為什么我認為使用帶有文件名的seq的原因,我可以手動設置,但我認為學習如何以更優雅的方式進行操作更有趣。 有人能幫我嗎? 這就是我正在嘗試的

folder=/user/folder/files_1.fi
folder2=/user/folder/files_2.fi
mypath=/path/to/files/

seq1= folder{??}
seq2= folder2{??}

for x,y in seq1 seq2
output= ${x:0:5}

do

program options -1 $mypath/$seq1 -2 $mypath/$seq2 -o $output



done

我想出一種解決自己的問題的方法,我在這里發帖尋找其他尋找相同或相似問題的人。

還是要謝謝你。

$ cat script.sh
#!/bin/bash

seq1=(/path/to/files/*._1.fq)
seq2=(/path/to/files/*._2.fq)

for ((i=0;i<=${#seq1[@]};i++)); do

 output=$(echo ${seq1[$i]} | awk '{print substr ($0, 28, 8)}')
program options -1 ${seq1[$i]} -2 ${seq2[$i]} -o $output
done

暫無
暫無

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

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