headコマンドを使うことでファイルの先頭10行を表示することができます。
今回はheadコマンドを使用せずにファイルの先頭10行を表示する方法をご紹介します。
以下のように、awkコマンドを使います。
1 |
cat ファイル | awk 'NR <= 10’ |
以下では/var/log/dmesgの先頭10行を表示しています。
1 2 3 4 5 6 7 8 9 10 11 12 |
$ cat /var/log/dmesg | awk 'NR <= 10' Initializing cgroup subsys cpuset Initializing cgroup subsys cpu Linux version 2.6.xx-xxx.x.x.xxx.x86_64 (mockbuild@c1bm.rdu2.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC) ) #1 SMP Tue Apr 11 17:13:24 UTC 2017 Command line: ro root=UUID=xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx rd_NO_LUKS rd_NO_MD SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=jp106 LANG=C rd_NO_LVM rd_NO_DM quiet nomodeset clocksource=kvm-clock console=tty0 console=ttyS0,115200n8r crashkernel=auto KERNEL supported cpus: Intel GenuineIntel AMD AuthenticAMD Centaur CentaurHauls BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) $ |
以下の通り、10行表示されていることがわかります。
1 2 3 |
$ cat /var/log/dmesg | awk 'NR <= 10' | wc -l 10 $ |