私はtest.txtファイルを読んでいます。フォーマット:Bash:ファイルを1行ずつ読み込み、分割した行をコマンドライン引数として渡します。
79033d0135a21e45c60e283785f5914b
dde8d97a40cd22667ccb3ca972197586
4fd5ea73cd51db256384fb3333b0eb3d
Iは、(例えば、行1:79 03 3D 01 35 A2 1E 45 C6 0E 28 37 85 F5 91 4B)のような線と分割することによって、このファイルの行を読んでい
bashスクリプト次のとおりです。
#!/bin/bash
while IFS='' read -r line || [[ -n "$line" ]]; do
a="$line" | cut -c1-2
b="$line" | cut -c3-4
c="$line" | cut -c5-6
d="$line" | cut -c7-8
e="$line" | cut -c9-10
f="$line" | cut -c11-12
g="$line" | cut -c13-14
h="$line" | cut -c15-16
i="$line" | cut -c17-18
j="$line" | cut -c19-20
k="$line" | cut -c21-22
l="$line" | cut -c23-24
m="$line" | cut -c25-26
n="$line" | cut -c27-28
o="$line" | cut -c29-30
p="$line" | cut -c31-32
#./a.out "$a" "$b" "$c" "$d" "$e" "$f" "$g" "$h" "$i" "$j" "$k" "$l" "$m" "$n" "$o" "$p"
echo "$line"
echo "$a $b $c $d $e $f $g $h $i $j $k $l $m $n $o $p"
done < test_10.txt
今のところ、変数を印刷しようとしています。私はそれらをコマンドライン引数として後で私のC++プログラムに渡そうとしています。
問題は、私は変数を印刷できません。もちろん私のC++プログラムも引数を取ることができませんでした。
私は間違っていますか?
こんにちは、ありがとう! 2番目の解決策を教えてください。匿名のパイプラインが何を意味するのですか? – algoProg
@algoProg '|'は匿名パイプと呼ばれ、必ず 'echo" $ line "| cut -c1-2'を実行すると、エコーが1つ余分に必要になり、 '<<<'のように2番目のパイプで必要とされないパイプがシェルによって内部的に処理されます。 – heemayl
クリア!ありがとうございました! – algoProg