
Цитат (anger @ Март 05 2005,16![]() |
Здравейте, Опитвам се да напиша едно скриптче, което чете стойности от .txt файл с n реда и m полета на ред. Доколкото прочетох, bash поддържа само едномерни масиви, а на мен ми се искаше да вкарам в масив данните от файла и да мога да оперирам с тях. Ако можете, дайте ми някакъв прост пример с цикъл, четене от фаил и масив. Благодаря предварително |
Примерен код |
#!/bin/bash -f _file="anger.txt" # file:anger.txt: # # 11 12 13 # 21 22 23 # 31 32 33 _ncol=$1 _nrow=$2 _i=1 for _item in $(cat $_file); do a[$_i]=$_item (( _i++ )) done function index { local _row=$1 local _col=$2 local _index=$(echo "($_row - 1) * $_ncol + $_col" | bc) echo $_index } for (( _i = 1; _i <= _nrow; _i++ )); do for (( _j = 1; _j <= _ncol; _j++ )); do _index=$(index $_i $_j) echo -n "${a[_index]} " done echo done # ouptut: ./anger.bash 3 3 # # 11 12 13 # 21 22 23 # 31 32 33 exit 0 |