Para teste eu crio no meu sistema Linux o arquivo list.txt
. Nele existem números como:
4 1 5 2 3
(às vezes há mais ou menos números)
Como executo esses números com fallocate?
fallocate -l 1stnumberG file1
fallocate -l 2ndnumberG file2
fallocate -l 3rdnumberG file3
....
eu penso em algo como
declare -i counter ; counter=1 ; for i in "'seq 1 $(wc -w list.txt | cut -c 1)'" ; do fallocate -l ${i}G "file$counter" ; (( ++ counter )) ; done
fallocate: unerwartete Anzahl an Argumenten
declare -i counter ; counter=1 ; for i in "'seq 1 $(wc -w list.txt | cut -c 1)'" ; do fallocate -l ${i}G "file$counter" ; (( ++ counter )) ; done < $(cat list.txt)
V: $(cat list.txt): Mehrdeutige Umlenkung.
mas eu não trabalhei....
Se você estiver tentando fazer um loop em uma sequência de números separados por espaços em branco em uma única linha,
list.txt
uma maneira de fazer isso no shell bash seria lê- los em uma matriz indexada :Então você pode fazer algo como
Alguns outros shells possuem recursos de leitura de array semelhantes, com pequenas diferenças de sintaxe, por exemplo, zsh
read -A
.