0

次の例の値「5」を読み取って、ファイル印刷の5つのコピーを発行するにはどうすればよいですか。

たとえば..私の出力は以下のコードに似ています。

注文:101
ゲスト:ラージ
電話番号:xxx-xxx-xxxx

5xバナナ
5xブドウ
5xリンゴ

上記のファイルの値5を読み取り、使用方法は次のとおりです。変数で5を取得する方法がある場合は、lprコマンドで使用できます。

lpr output.txt-#

4

2 に答える 2

0

私はこのようなことをします:

sed -n '/^[0-9]\+ x [A-Za-z]\+/ { s/^\([0-9]\+\) x \([A-Za-z]\+\)/\1 \2/; p }' file |
while read num fruit; do
  echo $num $fruit
  # do whatever with lpr
done

編集

のような文字列がある一意の ## を見つけたいだけの場合は、次のよう## x Somethingに使用できます。

sed -n '/^[0-9]\+ x [A-Za-z]\+/ { s/^\([0-9]\+\) x.*/\1/; p }' file | uniq

それを変数にキャプチャする場合は、次を使用します。

var="$(sed -n '/^[0-9]\+ x [A-Za-z]\+/ { s/^\([0-9]\+\) x.*/\1/; p }' file | uniq)"
于 2012-04-27T02:12:57.433 に答える
0

これは役に立ちます。

egrep '[0-9]+' test | cut -f 1 -d " " | uniq 
于 2012-04-27T07:50:59.557 に答える