init version.
[bush.git] / tests / 6.cmd / mapfile / mapfile.tests
blob01f1f2e553c72bd53b0e4d176757c9527a7d8e72
1 #   This program is free software: you can redistribute it and/or modify
2 #   it under the terms of the GNU General Public License as published by
3 #   the Free Software Foundation, either version 3 of the License, or
4 #   (at your option) any later version.
6 #   This program is distributed in the hope that it will be useful,
7 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
8 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9 #   GNU General Public License for more details.
11 #   You should have received a copy of the GNU General Public License
12 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
14 declare -a A
15 mapfile A < mapfile.data
16 for (( i = 0 ; i < ${#A[@]} ; i++ )); do
17     echo -n "${A[${i}]}"
18 done
20 declare -a B
21 mapfile -t B < mapfile.data
22 for (( i = 0 ; i < ${#B[@]} ; i++ )); do
23     echo "${B[${i}]}"
24 done
26 mapfile -C "echo" -c 1 A < mapfile.data
27 mapfile -C "echo" -c 3 A < mapfile.data
28 mapfile -C "echo" -c 19 A < mapfile.data
30 declare -a C
31 mapfile -t -u 3 C 3< mapfile.data < mapfile.tests
32 for (( i = 0 ; i < ${#C[@]} ; i++ )); do
33     echo "${C[${i}]}"
34 done
37 declare -a D
38 for (( i = 0 ; i < 30; i++ )); do
39     D[${i}]="[$i] aaa"
40 done
41 mapfile -O 10 -t D < mapfile.data
42 for (( i = 0 ; i < ${#D[@]} ; i++ )); do
43     echo "${D[${i}]}"
44 done
46 declare -a E
47 for (( i = 0 ; i < 30; i++ )); do
48     E[${i}]="[$i] aaa"
49 done
50 mapfile -O 10 -n 5 -t E < mapfile.data
51 for (( i = 0 ; i < ${#E[@]} ; i++ )); do
52     echo "${E[${i}]}"
53 done
55 ${THIS_SH} ./mapfile1.sub
57 ${THIS_SH} ./mapfile2.sub