
언제부턴가 시스템 프로그래밍 수업에 참여하면서 미리 수업을 듣고 오지도 않고, 즉석에서 피피티를 보면서 과제를 하는 내 모습을 발견할 수 있었다.
그리고 과제를 하다보니, 뒤로 갈수록 내용이 연계되는 것이 느껴지고 앞 부분의 내용이 탄탄하지 않으니 점점 더 어려워지는 것을 느낄 수 있었다. 그래서 복습 겸 수업 시간에 다루는 내용들을 블로그에 정리하고자 한다.
manipulate information

/ : 루트 디렉토리
/bin : 실행 파일
/etc : 시스템 구성 파일
etc/password : 패스워드 파일etc/hostname : 서버의 이름/home : 유저 홈 디렉토리
home/linuxer2 : linuxer2라는 유저의 홈 디렉토리home/park : park라는 유저의 홈 디렉토리/usr : 라이브러리, 헤더 파일
/usr/lib : 라이브러리 파일/usr/include : 헤더 파일경로가 /로 시작하면 절대 경로, 그렇지 않으면 상대 경로이다.
cd /home/linuxer/12345 : 절대 경로
cd 12345 : 현재 디렉토리 안에 있는 디렉토리 12345
/home/linuxer1이었다면, /home/linuxer/12345로 이동한다.. : 현재 디렉토리cp f1 ./f2 : f1 파일을 현재 디렉토리 안에 있는 f2 파일에 복사한다... : 부모 디렉토리cp f1 ../f2 : f1 파일을 부모 디렉토리 안에 있는 f2 파일에 복사한다.> : standard output redirection , 표준 출력cat f1 > f3 : f1의 내용을 f3 파일에 overwrite ( = cp f1 f3 )| : pipe, 명령과 명령을 연결, 왼쪽 명령의 실행결과를 오른쪽 명령의 입력으로 전달cat f1 | more : f1의 내용을 more 명령어를 사용하여 화면에 출력한다.* : 모든 파일을 나타내는 기호ls b* : 'b'로 시작하는 모든 파일/디렉토리 이름을 출력한다.ls : 최근 디렉토리에 있는 파일과 서브 디렉토리들을 출력
ls –l : 자세한 내용을 출력
ls –a : 숨겨진 파일이나 디렉토리를 포함하여 출력ls -al : 숨겨진 파일이나 디렉토리를 포함하여, 자세한 내용을 출력ls ex* : 'ex'로 시작하는 모든 파일을 출력pwd : Present Working Directory, 현재 작업 중인 디렉토리 정보를 출력

cd : 경로 이동, 절대 경로와 상대 경로 둘 다 가능
cd / : “/”(root directory)로 이동cd /dev : /dev로 이동cd .. : 부모(상위) 디렉토리로 이동cd . : 현재 디렉토리로 이동, 움직임 Xcd : home directory(로그인했을 때 위치하는 디렉토리)로 이동man : 각종 명령어, 프로그램, c-lib 함수 등의 사용법을 확인하는 명령어, 다음 스크린으로 이동하려면 space, 화면을 나가려면 q 버튼을 누른다.
man ls : ls 명령어의 사용법을 출력ps : 현재 실행중인 프로세스 목록과 상태를 나타내는 명령어

ps –ef : 동작중인 모든 프로세스를 출력ps –ef | more : pipeline the output of ps –ef to more, 모든 프로세스를 자세히 출력하고 한 페이지씩 화면에 출력mkdir : 디렉토리를 생성하는 명령어
mkdir d1rmdir : 디렉토리를 제거하는 명령어
echo : 인수로 전달되는 텍스트/문자열을 표시
echo korea : korea를 터미널에 출력echo korea > f1 : redirect the standard output file ofcp, rm, mv: 파일을 복사, 제거, 이름 변경하는 명령어
grep : 입력으로 전달된 파일의 내용에서 특정 문자열을 찾고자 할 때 사용하는 명령어
-n : 검색 결과 출력 라인 앞에 라인 번호 출력-r : 하위 디렉토리까지 탐색grep –nr “ko” * : "ko" 문자열을 포함하는 모든 파일을 탐색, 라인 번호를 출력하고, 현재 디렉토리의 하위 디렉토리들도 모두 탐색cat : 파일의 내용을 출력하는 명령어
cat f1 : f1 파일의 내용을 출력cat f1 > f2 : redirect the standard output file of “cat” to f2, f1 파일의 내용을 f2 파일에 복사한다.cat > f3 : 키보드로 입력하는 내용을 받아 f3 파일에 저장, ^D로 입력의 끝을 정한다.more : 파일을 읽어 화ㅕㅁㄴ에 화면 단위로 끊어서 출력하는 명령어, space로 다음 화면으로 넘어가고, q 버튼을 이용하여 중단한다.
how the contents of a file one screen at a time.
ps –ef | more : pipeline the output of ps –ef to more, 모든 프로세스를 자세히 출력하고 한 페이지씩 화면에 출력less : more과 같은 목적의 명령어. more는 위에서 아래 방향으로만 출력되어 지나간 내용을 다시 볼 수 없지만, less는 한 번에 보여지는 마ㄴ큼만 읽어서 출력하기 때문에 대용량 파일을 열어 볼 때 빠르게 사용할 수 있음
xxd : 파일을 16진수로 읽는 명령어
xxd f1uname : 시스템의 정보를 확인하는 명령어
whereis : 명령어의 실행 파일 위치, 소스 위치, man 페이지 파일의 위치를 찾아주는 명령어
whereis killwhich : 특정 명령어의 위치를 찾아주는 명령어
-a : 검색 가능한 모든 경로에서 해당 명령어를 찾음which killwhoami : 현재 로그인한 사용자를 보여준다.
find : 파일 및 디렉토리를 검색할 때 사용하는 명령어
find / -name "stdio.h" -print : /에서 시작해서 "stdio.h"의 위치를 찾는다.file : 파일의 종류(타입)을 확인하는 명령어
file f1locate : 파일 및 디렉토리를 이름으로 검색하는 가장 빠르고 간단한 방법