: 파일/표준입력의 첫부분 10라인을 출력하는 명령어
a.txt , b.txt 파일의 첫 10라인 출력하기
더보기
$ cat a.txt
hello 1
~~ 중략 ~~
hello 9
hello 10
hello 11
hello 12
hello 13
hello 14
$ cat b.txt
welcome 1
welcome 2
~~ 중략 ~~
welcome 10
welcome 11
welcome 12
welcome 13
welcome 14
$ head a.txt b.txt
==> a.txt <==
hello 1
hello 2
hi 3
hello 4
hello 5
hello 6
hello 7
hello 8
hello 9
hello 10
==> b.txt <==
welcome 1
welcome 2
hi 3
welcome 4
welcome 5
welcome 6
welcome 7
welcome 8
welcome 9
welcome 10
목차
옵션 | 의미 | 기타 |
-c, --bytes=[-]NUM | NUM 바이트 출력 옵션 | - 사용시 끝부분에서 계산해 빼고 적용됨 |
-n, --lines=[-]NUM | NUM 라인 출력옵션 | |
-q, --quiet, --silent | 헤더 표시 제거옵션 | -q, -v 동시 적용시 뒤에옵션 적용됨 |
-v, --verbose | 헤더 표시 옵션 | |
-z, --zero-terminated | 구분자로 개행이 아닌 NUL 사용한 출력옵션 | |
--help | 도움말 표시 | |
--version | 버전표시 |
옵션
-c, --bytes=[-]NUM
: 파일/표준입력의 처음에서 NUM 바이트 까지 출력하는 옵션, 마이너스 입력시 마지막에서 바이트 계산후 출력
더보기
>> 처음부터 20 바이트 출력
$ head -c 20 a.txt b.txt
==> a.txt <==
hello 1
hello 2
hi
==> b.txt <==
welcome 1
welcome
>> -0 입력시 처음부터 끝까지 출력
$ head -c -0 a.txt b.txt
==> a.txt <==
hello 1
hello 2
hi 3
hello 4
hello 5
hello 6
hello 7
hello 8
hello 9
hello 10
hello 11
hello 12
hello 13
hello 14
==> b.txt <==
welcome 1
welcome 2
hi 3
welcome 4
welcome 5
welcome 6
welcome 7
welcome 8
welcome 9
welcome 10
welcome 11
welcome 12
welcome 13
welcome 14
>> 끝부터 50 바이트 제외하고 모두 출력하기
$ head -c -50 a.txt b.txt
==> a.txt <==
hello 1
hello 2
hi 3
hello 4
hello 5
hello 6
hello 7
hello 8
hello 9
==> b.txt <==
welcome 1
welcome 2
hi 3
welcome 4
welcome 5
welcome 6
welcome 7
welcome 8
welcome 9
welcome 1
>> 롱 옵션 사용하기
$ head --bytes -50 a.txt b.txt
$ head --bytes=-50 a.txt b.txt
==> a.txt <==
hello 1
hello 2
hi 3
hello 4
hello 5
hello 6
hello 7
hello 8
hello 9
==> b.txt <==
welcome 1
welcome 2
hi 3
welcome 4
welcome 5
welcome 6
welcome 7
welcome 8
welcome 9
-n, --lines=[-]NUM
: 처음부터 출력할 라인수 지정하기, 음수 입력시 끝에서 부터 NUM 라인 제거후 모두 출력함.
> " -n 10 "일 경우 "-10" 이라고 입력해도 동일하게 동작합니다.
더보기
$ head -n 10 a.txt
hello 1
hello 2
hi 3
hello 4
hello 5
hello 6
hello 7
hello 8
hello 9
hello 10
$ head -n 3 a.txt
hello 1
hello 2
hi 3
$ head --line 7 a.txt
hello 1
hello 2
hi 3
hello 4
hello 5
hello 6
hello 7
$ head --line=7 a.txt
hello 1
hello 2
hi 3
hello 4
hello 5
hello 6
hello 7
$ echo -e "hello\nHi" | head -n 2
hello
Hi
$ echo -e "hello\nHi" | head -n 1
hello
?>> 마이너스 입력시 끝에서 입력 라인만큼 빼고 출력합니다.
$ head --line=-5 a.txt
hello 1
hello 2
hi 3
hello 4
hello 5
hello 6
hello 7
hello 8
hello 9
-q, --quiet, --silent
: 헤더 ( 파일이름)를 출력하지 않는 옵션
>> default
$ head -n3 a.txt b.txt
==> a.txt <==
hello 1
hello 2
hi 3
==> b.txt <==
welcome 1
welcome 2
hi 3
>> 파일이름 표시안하게 하기
$ head -q -n3 a.txt b.txt
hello 1
hello 2
hi 3
welcome 1
welcome 2
hi 3
-v, --verbose
: 항상 헤더(파일이름) 표시옵션
> -q, -v 옵션 동시 사용하면 뒤에 나오는게 적용됩니다.
$ head -v -n3 a.txt
==> a.txt <==
hello 1
hello 2
hi 3
$ head -q -v -n3 a.txt
==> a.txt <==
hello 1
hello 2
hi 3
$ head -v -q -n3 a.txt
hello 1
hello 2
hi 3
-z, --zero-terminated
: 라인구분자가 개행이 아니고 NUL(0x00) 로 지정하는 옵션
$ cat a.txt
hello 1
hello 2hi 3hello 4
hello 5
hello 6
hello 7
hello 8
hello 9
hello 10
hello 11
hello 12hello 13
hello 14
$ hexdump a.txt
0000000 6568 6c6c 206f 3120 680a 6c65 6f6c 2020
0000010 0032 6968 2020 2020 3320 6800 6c65 6f6c <----- 0x10,0x1B번지 값 00
0000020 2020 0a34 6568 6c6c 206f 3520 680a 6c65
0000030 6f6c 2020 0a36 6568 6c6c 206f 3720 680a
0000040 6c65 6f6c 2020 0a38 6568 6c6c 206f 3920
0000050 680a 6c65 6f6c 2020 3031 680a 6c65 6f6c
0000060 2020 3131 680a 6c65 6f6c 2020 3231 6800 <---- 0x6f번지 값 00
0000070 6c65 6f6c 2020 3331 680a 6c65 6f6c 2020
0000080 3431 000a
0000083
>> null 로 끝나는 한줄 출력하기
$ head -z -n1 a.txt
hello 1
hello 2c
--help
: 도움말 출력
$ head --help
Usage: head [OPTION]... [FILE]...
Print the first 10 lines of each FILE to standard output.
With more than one FILE, precede each with a header giving the file name.
With no FILE, or when FILE is -, read standard input.
Mandatory arguments to long options are mandatory for short options too.
-c, --bytes=[-]NUM print the first NUM bytes of each file;
with the leading '-', print all but the last
NUM bytes of each file
-n, --lines=[-]NUM print the first NUM lines instead of the first 10;
with the leading '-', print all but the last
NUM lines of each file
-q, --quiet, --silent never print headers giving file names
-v, --verbose always print headers giving file names
-z, --zero-terminated line delimiter is NUL, not newline
--help display this help and exit
--version output version information and exit
NUM may have a multiplier suffix:
b 512, kB 1000, K 1024, MB 1000*1000, M 1024*1024,
GB 1000*1000*1000, G 1024*1024*1024, and so on for T, P, E, Z, Y.
Binary prefixes can be used, too: KiB=K, MiB=M, and so on.
GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Full documentation <https://www.gnu.org/software/coreutils/head>
or available locally via: info '(coreutils) head invocation'
--version
: 버전 출력
$ head --version
head (GNU coreutils) 8.32
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by David MacKenzie and Jim Meyering.
반응형
'리눅스 (linux) > 명령어' 카테고리의 다른 글
리눅스 dmesg 명령어 사용법(-C/-c/-d/-e/-F/-f/-H/-k/-P/-r/-T/--since/--until/-t/--time-format/-u/-w/-W/-x ) (0) | 2024.07.19 |
---|---|
리눅스 route 명령어 사용법 (-C -F -v -n -e -A -net -host reject add del) (0) | 2024.07.15 |
리눅스 lsusb 명령어 사용법(-v,-s,-d,-D,-t,-V) (0) | 2024.05.02 |
리눅스 tree 명령어 사용법 ( -d, -a, -f, -L, -P,- l, -p, -u, -h, -s,-o) (0) | 2022.02.24 |
리눅스 tail 명령어 사용법 (-c, -f, -n, -s, -v) (0) | 2022.02.23 |