Built in command
built in command를 사용하면 fork의 부담이 거의 없다.
e.g) expr보다 let이나 ((...)) 를 사용하는게 좋다.
time == cpu 시간 측정 (time은 built-in 과 external cmd 둘다 있다.)
xargs == stdin으로부터 argv를 받아서 명령어 생성
sort == ls -l | sort -M -k 6 -k 7n -k 5nr == 6번쨰 기준으로 만약 같으면 7번째 column 같으면 5번쨰 column reverse기준
split == 처리할 데이터(Line 단위) 가 큰 경우 이를 자르는 용도로 주로 사용된다.
큰 파일을 작은 파일로 쪼갤 수 있다.
paste == merge lines of files
-s == paste one file at a time instead of in a parallel
exec #<FILE == 읽기용 파일로 오픈. 오픈된 파일은 파일기술자 #번을 할당받음 (#이 0이면 생략가능)
exex #>FILE == 쓰기용 파일로 오픈. 오픈된 파일은 파일기술자 #번을 할당받음 (#이 1이면 생략가능)
exec #<&- == #번 파일기술자를 닫음 (읽기채널)
exec #>&- == #번 파일기술자를 닫음 (쓰기채널)
exec #<>FILE == 파일을 RW가 가능하도록 오픈
file descriptor는 child process에 상속된다.
exec 3<>/dev/tcp/www.vim.org/80 == 통신을 하면 소캣으로 연결되면 원격통신이 가능하다.
네트워크도 기본적으로 파일과 동일하다 하였다.
초보인 나에게는 난해한 코드다 디버킹 툴인 set -x , set +x 를 유용하게 썼다.
Transient Process
nohub command 같은 경우에는 오래된 것이다.
Load Average
LA == 프로세스 대키큐 의 길이의 정의 를 가짐
vmstat == 시스템의 virtual memory와 cpu usage를 확인
'자율주행 > 김선영님의 리눅스 강의' 카테고리의 다른 글
리눅스 day9 (0) | 2020.12.18 |
---|---|
리눅스 day7 (0) | 2020.12.16 |
리눅스 day7(REGEX) (0) | 2020.12.16 |
리눅스 day6(bash) (0) | 2020.12.14 |
리눅스 day5 (file sytem) (0) | 2020.12.11 |