0

次のコードから期待される結果が得られません。

#!/bin/bash
cat /home/opmeitle/html/fiesta-one.html | grep -oiE '([$][0-9.]{1,7})'

これは出力されます:

$90.850
$0
$389
$469
$670
$750
$684
$21.744
$604

これが私が望むコンソールでの結果です。

$90.850 $0 $389 $469 $670 $750 $684 $21.744 $604

私はあなたの答えに感謝します。ありがとう

ルイス。

4

2 に答える 2

2

簡単な修正は、改行をスペースに変換することです(私はあなたの不必要な使用も削除しましたcat):

grep -oiE '([$][0-9.]{1,7})' /home/opmeitle/html/fiesta-one.html | tr '\n' ' '
于 2012-07-31T02:41:15.840 に答える
2

他にも多くの解決策があります。

$ echo $(grep -oiE '([$][0-9.]{1,7})' /home/opmeitle/html/fiesta-one.html)
$ grep -oiE '([$][0-9.]{1,7})' /home/opmeitle/html/fiesta-one.html | xargs echo
$ grep -oiE '([$][0-9.]{1,7})' /home/opmeitle/html/fiesta-one.html | tr '\n' ' '
$ grep -oiE '([$][0-9.]{1,7})' /home/opmeitle/html/fiesta-one.html | perl -pe 's/\n/ /;'

そしてなしgrep

$ perl -ne 'print "$1 " if /([\$][0-9.]{1,7})/' /home/opmeitle/html/fiesta-one.html
于 2012-07-31T05:38:00.997 に答える