次のファイルがあります。 (dmesgの情報を含む)
more /tmp/file.txt
@@@@@@@@@@@@@@@@@@@@@@@@ worker01.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
@@@@@@@@@@@@@@@@@@@@@@@@ worker02.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
@@@@@@@@@@@@@@@@@@@@@@@@ worker03.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
@@@@@@@@@@@@@@@@@@@@@@@@ worker04.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
@@@@@@@@@@@@@@@@@@@@@@@@ worker05.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
@@@@@@@@@@@@@@@@@@@@@@@@ worker06.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
@@@@@@@@@@@@@@@@@@@@@@@@ worker07.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
ファイルを作成したい
worker01.miss.com.txt
worker02.miss.com.txt
worker03.miss.com.txt
.
.
.
たとえば、worker01.miss.com.txt
ファイルを作成するとコンテンツが含まれます。
@@@@@@@@@@@@@@@@@@@@@@@@ worker01.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
例: コンテンツがいつworker02.miss.com.txt
含まれるか
@@@@@@@@@@@@@@@@@@@@@@@@ worker02.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
など。
答え1
使用awk
$ awk '/^@/ {close(dmesg_info); dmesg_info=$2".txt"} {print > dmesg_info}' input_file
$ cat worker01.miss.com.txt
@@@@@@@@@@@@@@@@@@@@@@@@ worker01.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.
$ cat worker02.miss.com.txt
@@@@@@@@@@@@@@@@@@@@@@@@ worker02.miss.com @@@@@@@@@@@@@@@@@@@@@@@@
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuset
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpu
[Fri Jan 8 06:29:09 2021] Initializing cgroup subsys cpuacct
.
.