bashの配列で質問です。
空白で区切られた3つの要素を配列に代入
declare -a array=( "A B C" "C D E" "F G H" );
for ((i = 0; i < ${#array[@]}; i++)) { echo "array[$i] = ${array[i]}" }
結果は予想通り
array[0] = A B C
array[1] = D E F
array[2] = G H I
今度は改行で区切られた3つの要素の内容を、awkで逆順した結果に「"」とつけて配列に代入。
declare -a array=( $(echo -e "A B C\nD E F\nG H I" | awk '{printf "\"%s %s %s\"\n", $3, $2, $1}') );
for ((i = 0; i < ${#array[@]}; i++)) { echo "array[$i] = ${array[i]}" }
しかし、実際はクォーテーションの機能も無視され、空白でバラバラに区切られ配列に代入されてします。
array[0] = "C
array[1] = B
array[2] = A"
… 略 …
array[7] = H
array[8] = G"
配列に代入しなければ期待通りの結果が出力されます。この結果を望んでいます。
echo -e "A B C\nD E F\nG H I" | awk '{printf "\"%s %s %s\"\n", $3, $2, $1}'
"C B A"
"F E D"
"I H G"
どうすれば配列の要素に上記の結果を代入することができますか?
くだらねえ質問はここに書き込め! Part 238
■ このスレッドは過去ログ倉庫に格納されています
209login:Penguin
2019/10/31(木) 00:50:56.71ID:reP6OUR1■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ロシア外相 「日本とドイツは軍国主義」 国連で声明 ★3 [お断り★]
- 【自動車】なんて恐ろしい契約を…「残クレ」で念願のアルファードを手に入れた年収600万円・45歳サラリーマンの末路 ★3 [ぐれ★]
- 【野球】アジア大会・決勝の日韓戦が“地上波中継なし” 「冷遇されてる」「メダルかかってるのに...」との声も [尺アジ★]
- 【野球】セ・リーグ G 11-0 S [9/27] 巨人連敗脱出 小笠原5回無失点自らタイムリー、泉口3打点 ヤクルト高橋6四死球7失点 [鉄チーズ烏★]
- 【音楽】Ado所属事務所社長 誹謗中傷への法的対応示唆「アーティストを守るため」 出演フェス巡りSNSで賛否 [Ailuropoda melanoleuca★]
- 【サッカー】森保一監督が堂安律と塩貝健人の確執を否定「選手自身が傷つくことになっている」 報道陣に異例の要望 [ニーニーφ★]
- 井上拓真×那須川天心2 WBCバンタム級12回戦 8
- 井上拓真×那須川天心2 WBCバンタム級12回戦 7
- 井上拓真×那須川天心2 WBCバンタム級12回戦 9
- 井上拓真×那須川天心2 WBCバンタム級12回戦 6
- 西武線 2
- とらせん 見物 ★4
- 【悲報】亜月ねね先生の家、巨大監視カメラが設置されておわる ★2 [398059782]
- 【実況】博衣こよりのえちえちねぽっくす打ち上げ🧪
- 【悲報】亜月ねね先生の家、巨大監視カメラが設置されておわる [398059782]
- 

 _,,,
 _/::o・ァ
∈ミ;;;ノ,ノ
 ヽヽ 🏡
- VIPでウマ娘
- VIPでウマ娘