为了测试,我在 Linux 系统上创建了文件list.txt
。其中有如下数字:
4 1 5 2 3
(有时会多一些或少一些)
我如何使用 fallocate 运行这些数字?
fallocate -l 1stnumberG file1
fallocate -l 2ndnumberG file2
fallocate -l 3rdnumberG file3
....
我想到类似的事情
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.
但我没有工作....
如果您尝试在一行中循环遍历由空格分隔的
list.txt
数字序列,那么在 bash shell 中执行此操作的一种方法是将它们读入索引数组:然后你可以做类似的事情
一些其他 shell 具有类似的数组读取功能,但语法略有不同,例如 zsh
read -A
。