この数値表をcsv
次のファイル形式で保存しました。
5, 6, 9, 5,
2, 8, 1, 1,
1, 2, 3, 6,
. . . . .
. . . . .
. . . . .
. . . . .
この表の各行は、長方形のサイズを説明しています。
次のように、コマンドラインに1行に4つの数字を入力して長方形を作成したいと思います。
rectang -cs x1 x2 x3 x4 # rectang is a script to create rectangle; -cs flag means dimensions; x1, x2, x3 x4 the rectangle dimensions
table.csv
csvファイル""をタブ区切りのテキスト" table.txt
"ファイルに変換し、次のようにforループで使用しようとしています。
for i in $(cat table.txt); do
rectang -cs x1 x2 x3 x4
done
しかし、テーブル内の「長方形」コマンドでx1 x2 x3 x4を提供する方法がわかりません。
助けてくれてありがとう。
ベストアンサー1
このread
コマンドは、文字で区切られた複数の単語をキャプチャできます$IFS
(デフォルト:スペース、タブ、改行)。
while read -r d1 d2 d3 d4; do
rectang -cs "$d1" "$d2" "$d3" "$d4"
done < file.csv
変更されたデータ(カンマとスペースで区切られたフィールド)が与えられたら、次の操作を行います。
while IFS=",$IFS" read -r d1 d2 d3 d4; do # ...
フィールド区切り記号としてカンマを含めます。