カットはエコーを使用できますが、エコーなしでは使用できません。

カットはエコーを使用できますが、エコーなしでは使用できません。

だから私は次のようなものを抽出しようとしています。

x=($discover nginx --human=nood)

これは私に次のような結果を与えます

i-03099 nginx IPヌードルフィッシュピップb4b966d280546c6b070f5f952c281d3294308048

また、他の変数からpip列を抽出したいと思います。私がするとき

echo "$x" | cut -f6

私が望む出力を得たが、試してみたとき。

y= "$x" | cut -f6 

空の出力が表示されます。

なぜこれが起こるのか、そしてあなたが望む結果を得る方法を説明してください。よろしくお願いします。

ベストアンサー1

また、他の変数からpip列を抽出したいと思います。私がするとき

echo "$x" | cut -f6

私が望む結果を得た[...]

これは変です。なぜならこれはうまくいかないからです。

‘-f FIELD-LIST’
‘--fields=FIELD-LIST’
     Select for printing only the fields listed in FIELD-LIST.  Fields
     are separated by a TAB character by default.  Also print any line
     that contains no delimiter character, unless the ‘--only-delimited’
     (‘-s’) option is specified.

-f特に設定しない限り、フィールドがTABで区切られている場合にのみ有効です-d

単語の後にフィールドを抽出するには、pipこのようなスクリプトが私にとって効果的でした。

x="i-03099 nginx IP noodlefish pip b4b966d280546c6b070f5f952c281d3294308048"

y=$(echo -n "$x" | cut -d ' ' -f 6 -)

echo "$y"

おすすめ記事