get_ で始まる全単語のみ grep [閉じる]

get_ で始まる全単語のみ grep [閉じる]

grep私のファイルから.で始まる単語全体が欲しいですget_

例: o/p は次のようになります。

set_output_delay -clock clk_i  3  [get_ports xyz]
set_clock_latency 0  [get_clocks clock]
set_disable_timing [get_pins u_phy/enable]

答え1

これを使用してください(GNU grep):

grep -oP '\[\Kget_\S+' file

またはパールを使用してください:

perl -lne 'print $& if /\[\Kget_\S+/' file

またはawkを使用してください:

awk -F'[ \\[]' '{print $1}' file

出力

get_ports
get_clocks
get_pins

答え2

質問:

grep は get_ で始まる全単語のみを表示します。

答え:

grep -P -o '\bget_.*?\b'

テスト実行:

==> input.txt <==
set_output_delay get_post -clock clk_i 3 [get_ports xyz]
set_clock_latency 0 [get_clocks clock] ==>get_lost<==
set_disable_timing [get_pins u_phy/enable]
$ grep -P -o '\bget_.*?\b' input.txt
get_post
get_ports
get_clocks
get_lost
get_pins

関連情報