cloc 사용 time exceeded error time exceeded timeout error가 발생해도 $?은 0이다.
device 파일 찾기 명령|description|link :---|:---|:--- $ cat /proc/devices|Character, Block device 구분|/proc/devices 링크 $ udevadm|device file의 sysfs 찾아줌|udevadm 링크 $ blkid -o list|디바이스 파일 / 파일 시스템 / 라벨 / 마운트포인트
$ dd dd역할: if 로 지정된 파일을, 1번에 최대 bs 크기로 count만큼 of로 지정된 파일로 copy!!! dd 명령은 && sync로 같이 쓰는게 좋음 I/O를 미쳐 끝내지 않고 사용자가 터미널을 빠져나가거나 할 수 있음 주요 옵션 if=file: 입력 파일. (default: STDIN) of=file: 출력 파일. (default: STDOUT) dd option |description :---|:--- bs|Bytes, 한번에
tee tee 명령은 입력: STDIN 출력: STDOUT, file_IO 기존 >> 와 pipe 단점 기존 redirect는 file에 write하긴하나.. 사용자에게 출력을 안보여주는 단점 tee: redirect + stdout출력 tee : > + 화면 표시
parallel install GNU parallel package: https://ftpmirror.gnu.org/parallel/parallel-latest.tar.bz2 압축 푼 폴더가서 설치 man page: https://linux.die.net/man/1/parallel 참고 pdf: https://www.gnu.org/software/parallel/parallel.pdf 명령어를 argument로 하나씩 pass해서, parallel 하게 동작 시킬 수 있다. Options|Description :---|:--- -j |parallel thread 개수의 최대 -l |새 job을 시작할 때, 시스템의 로드 평균을 피하기 위해 필요한 wait -n|한번에 커맨드에 pass할 argument의 갯수 (Default is 1)<b
du option|Description :---|:--- -a|모든 파일들의 기본정보를 보여준다 -B, --block-size=size|지정한 size를 블록 사이즈로 사용한다. -b|표시단위를 기본 KB대신 Byte로 한다 -k|표시단위르 KB단위로 한다 -m|MB 단위로 보여줌 -h|사용량을 1K, 234M , 2G 등의 형태로 보여준다 -c|모든 파일의 디스크 사용정보를 보여주고 나서 합계를 보여준다 -s|총 사용량만 표시한다 (KB 단위 출력) -x|체크하는 경로안에 다른 시스템이 있으면 생략한다 -D|심볼릭 링크 파일이 있을경우 원본의 값을 보여준다 -L|-D 옵션과 같다 --max-depth=1|현재 위치에서 바로 아래단 까지만 결과를
tr 문자열 변환/삭제 소문자 -> 대문자 소문자 대문자 -d : 제거 문자 치환 숫자 -> * 문자로 치환 예제 '/' split해 배열로 floating 연산 Byte -> {K,M,G,T}Byte sort sort는 텍스트로된 파일의 '행'단위 정렬 기본으로 '오름차순' 각 행의 첫 번째 단어를 알파벳 오름차순으로 정렬한다. 첫 번째 단어가 동일할 경우 두번째 문자를 비교한다. uniq cut cut -d 구분자 -f필드번호
group 조회 $ cat /etc/group sudo 권한이 있는 사용자 조회(Password는 요구함) $ groupadd 그룹추가 $ groupmod $ usermod처럼 그룹을 관리하는 $ groupmod가 있다. options|description|example :---|:---|:--- -g, --gid GID|지정한 GROUP의 <span style="color:re
ctags c, sh 프로그램을 vim 사용 시, 함수 혹은 변수가 정의된 위치로 왔다 갔다 해야할 일이 많은데 이를 수행 사용법 ctags를 사용할 디렉토리에서 아래의 명령어 사용 하위 디렉토리까지 재귀적으로 사용하려면, 아래의 명령어 사용 결과 tags 파일이 만들어진다. vim 연동 결과인 tags 파일을 vim에서 사용하려면, vim 내부에서 아래와 같이 명령어를 내려야한다. 하지만 vim 을 켤 때마다 명령하는 것은 귀찮기 때문에 보통은 ~/.vimrc에 아래와 같이 작성해 기본 연동한다. 커맨드 Tag Command|*
atime atime = access time 파일에 마지막 접근 시간 cat, vi등으로 파일에 액세스 하면, atime이 변경된다. 이 ?time들은 find 명령어와 자주 쓰인다. find 명령어 참고 mtime (ls -l로 보이는 것) mtime = modified time 파일 마지막 수정 시간 vim, echo "msg" >> file 등으로 내용이 수정되면 변경된다. ctime ctime = inode changed time 아이노드가 변경된 시간 inode 변경 조건 1-1. file permission (chmod ... ) 1-2. file owner (chown, chgrp ... )
종류|동작|명령|opt :---|:---|:---|:--- tar|1. 내용 보기2. tar묶기3. tar풀기 |$ tar -tvf .tar$ tar -cvf .tar$ tar -xvf .tar -C |- gz|1. gz압축2. gz풀기 3. 원본파일 두기: -k 옵션|$ gzip $ gzip -d
sleep [sec] sleep [second] 명령은 명시된 초 만큼 프로세스 실행을 중지(중지도 running상태) ctrl+{c,z,d} ctrl+c 프로세스 강제 종료 kill -INT PID와 같다. foreground job에 interrupt 신호(SIGINT)를 보내 종료 시킨다. 파일 이름 2)아이 노드 3) 데이터 블록 을 가지고 있다. 아이노드가 참조 0이되면 최종 삭제된다. 하드링크 cp와 혼동하면 안된다!! 같은 아이노드를 가진 복사본이라 생각하자!! 하나를 수정하면 하드링크도 수정된다!! 원본이 지워져도 상관 없다!! **nums of refere
eUID, rUID 모든 프로세스는 하나 이상의 UID를 가진다. eUID: 유효 사용자 ID; effective UID: 프로세스에 대한 접근 권한 규정 rUID: real 사용자 ID; real UID: 프로세스를 처음 시작한 사람 일부 프로그램들은 rUID를 root로 가지는 것을 좋아하지 않는다. sudo가 <span st
time real: user + sys 총 실행 시간 user: user 영역에서 실행된 시간 sys: 커널에서 실행된 시간 -f 옵션 포맷 지정 date $ date 현재 날짜, 시간, 기준 등을 STDOUT으로 출력 출력은 LC_TIME에 따라 다름 LCTIME = koKR.UTF-8 일 경우  처리 디렉토리 스택을(dirs stack) 출력 디렉토리 스택: 거쳐갔거나 pushd, popd로 제어한 stack dirs -l 현재 디렉토리 스택(dirs stack)을 출력(/home도 자세히) dirs -v: 레벨 보여줌 dirs 스택 <span