
Linuxには、次の内容を含むテキストファイルがあります。
help.helloworld.com:latest.world.com
dev.helloworld.com:latest.world.com
次のようにコロンの前に内容をインポートしたいと思います。
help.helloworld.com
dev.helloworld.com
端末内でこれをどのように実行できますか?
答え1
これは以下のcut
ためのものです:
$ cat file
help.helloworld.com:latest.world.com
dev.helloworld.com:latest.world.com
foo:baz:bar
foo
$ cut -d: -f1 file
help.helloworld.com
dev.helloworld.com
foo
foo
区切り文字を:
withに設定し-d:
て最初のフィールド(-f1
)のみを印刷するように指示するだけです。
答え2
または他のオプション:
$ grep -o '^[^:]*' file
help.helloworld.com
dev.helloworld.com
^
コロン()を除いて、各行の先頭()から始まるすべての文字を返します[^:]*
。
答え3
間違いなくお勧めしますawk
:
awk -F ':' '{print $1}' file
フィールド区切り文字として使用され、:
最初のフィールドを印刷します。
答え4
GNU grepが必要です。 macOSや他のBSDではデフォルトのgrepでは動作しません。
どういう意味ですか?
grep -oP '.*(?=:)' file
出力:
help.helloworld.com
dev.helloworld.com