回答編集履歴
5
実際の状況と質問文で差があるかもしれない(けどawkは処理できている)ことについて言及。
answer
CHANGED
@@ -14,4 +14,7 @@
|
|
14
14
|
```
|
15
15
|
$ echo "test1,test2, ,test4" | awk -F, '{print $1","$2","$3","$4}'
|
16
16
|
test1,test2, ,test4
|
17
|
-
```
|
17
|
+
```
|
18
|
+
|
19
|
+
問題点を提示するためにechoを使用しているだけで実際の処理は違うのかもしれませんが、
|
20
|
+
少なくとも上記の例ではawkは複数の空白を1文字にまとめること無く処理できています。
|
4
表現ちょっと修正。
answer
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
test1,test2, ,test4
|
10
10
|
```
|
11
11
|
|
12
|
-
echo
|
12
|
+
echoの側を修正すれば意図通り表示されると思います。
|
13
13
|
|
14
14
|
```
|
15
15
|
$ echo "test1,test2, ,test4" | awk -F, '{print $1","$2","$3","$4}'
|
3
「"」でも「'」でもどちらでも可能であることを追記。
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
awkの問題ではなく、echoの段階で空白1文字になってしまっています。
|
2
2
|
これはお使いのシェルが引数区切りの空白の連続を1文字にまとめてしまうためです。
|
3
|
-
|
3
|
+
クォーテーション(「"」または「'」)で囲めばこれを回避できます。
|
4
4
|
|
5
5
|
```
|
6
6
|
$ echo test1,test2, ,test4
|
2
表現ちょっと修正。
answer
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
awkの問題ではなく、echoの段階で空白1文字になってしまっています。
|
2
|
-
これはお使いのシェルが引数区切りの
|
2
|
+
これはお使いのシェルが引数区切りの空白の連続を1文字にまとめてしまうためです。
|
3
3
|
ダブルクォーテーションで囲めばこれを回避できます。
|
4
4
|
|
5
5
|
```
|
1
表現ちょっと修正。
answer
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
awkの問題ではなく、echoの段階で空白1文字になっています。
|
1
|
+
awkの問題ではなく、echoの段階で空白1文字になってしまっています。
|
2
|
-
これはお使いのシェルが引数区切りの空白を1文字にまとめてしまうためです。
|
2
|
+
これはお使いのシェルが引数区切りのn連続した空白を1文字にまとめてしまうためです。
|
3
3
|
ダブルクォーテーションで囲めばこれを回避できます。
|
4
4
|
|
5
5
|
```
|