回答編集履歴
2
Update
test
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
#!/bin/bash
|
3
3
|
|
4
4
|
function callback {
|
5
|
-
read -r p_root
|
5
|
+
read -r p_root param <<<"$2"
|
6
|
-
eval "$
|
6
|
+
eval "$param"
|
7
7
|
echo "ここでのid結果" ${p_root}
|
8
8
|
echo "ここでのnum1結果" ${p_open}
|
9
9
|
echo "ここでのnum2結果" ${p_close}
|
1
Update
test
CHANGED
@@ -1,14 +1,24 @@
|
|
1
1
|
```bash
|
2
2
|
#!/bin/bash
|
3
3
|
|
4
|
+
function callback {
|
5
|
+
read -r p_root ev <<<"$2"
|
6
|
+
eval "$ev"
|
7
|
+
echo "ここでのid結果" ${p_root}
|
8
|
+
echo "ここでのnum1結果" ${p_open}
|
9
|
+
echo "ここでのnum2結果" ${p_close}
|
10
|
+
}
|
11
|
+
|
4
12
|
test="p_root=0000000001 p_open=0900 p_close=1800 p_root=0000000002 p_open=0830 p_close=2000"
|
5
|
-
|
6
|
-
mapfile -t -s 1 ip_array <<< "${test//p_root=/$'\n'}"
|
13
|
+
mapfile -t -s 1 -c 1 -C callback ip_array <<< "${test//p_root=/$'\n'}"
|
7
|
-
|
8
|
-
echo "${ip_array[0]}"
|
9
|
-
echo "${ip_array[1]}"
|
10
|
-
|
11
|
-
#
|
12
|
-
0000000001 p_open=0900 p_close=1800
|
13
|
-
0000000002 p_open=0830 p_close=2000
|
14
14
|
```
|
15
|
+
**実行結果**
|
16
|
+
```bash
|
17
|
+
$ bash p_root.sh
|
18
|
+
ここでのid結果 0000000001
|
19
|
+
ここでのnum1結果 0900
|
20
|
+
ここでのnum2結果 1800
|
21
|
+
ここでのid結果 0000000002
|
22
|
+
ここでのnum1結果 0830
|
23
|
+
ここでのnum2結果 2000
|
24
|
+
```
|