기본
- cd - change directroy 로 폴더(디렉토리)를 변경합니다. -cd/<경로명>
- cd.. - 상위디렉토리, cd or cd ~ -홈 디렉토리
- pwd = 현재 경로를 표시합니다,.
- ls = 조건 검색어 - ls st 파일 이름 중간에 st를 포함한 모든 파일을 표시합니다.
- cp = 원본복사 - cp web / bin "web" 폴더를 /bin에 복사합니다.
- mv = 원본이동 - mv web / bin "web" 폴더를 /bin에 이동합니다.
- rm = 원본삭제 - rm web or rm -r web "web"폴더를 삭제합니다.
- mkdir = 폴더 생성 - mkdir web "web" 폴더를 현재 경로에 생성합니다.
- rmdir = 폴더삭제 - rmdir web "web" 폴더를 현재 경로에서 삭제합니다.
- touch = 파일생성 - touch web "web"의 무용량 파일을 생성 합니다.
- grep = 파일안 내용찾기 - grep head index.php "indext.php" 에서 head가 포함된 낱말을 찾어 냅니다.
- ln = 링크 - ln-s /bin/web/ apath main "/bin/web/"의 해당경로를 apath main으로 링크합니다.
- who = 현재 접속 또는 로그인 중인 모든 사용자를 찾아줍니다.
- ps = ps(옵션) = 현재 실행중인 모든 프로세서 표시합니다.
- kill = kill ichat -ichat 프로세서를 강제 종료 합니다.
- find = 조건검색어 - find/root/ -name password 파일 이름에 password를 포함한 파일을 /root폴더에서 검색합니다.
- whereis = whereis ichat"ichat"가 있는 프로세서 경로를 표시합니다.
- sudo - 관리 권한으로 실행 *sudo vi/etc/php.ini root권한으로 /etc/폴더에 php.ini파일을 vi로 편집합니다.
- vi or vim - vim 편집기
- grep - 파일안에 내용 찾기
- clear or cmd + k - 화면 클리어
ls
- ls 옵션
- -a(모든 파일 표시)
- -d(.의 포함된 파일이 아닌 .자체에 대한 정보 출력 /ls -dl)
- -F(dir의 경우/추가)
- -reverse(reverse는 출력항목을 역순 정렬, 시간 알파벳)
- -s 파일 크기 순 정렬
- ls -t 시간순 정렬
- -h 파일크기 바이트아닌 사람이 알기 쉬운 단위로
- -d 디렉토리 정보확인
- -ls -l /usr/~(/usr,root,home dir 세 디렉토리 확인)
- ls 자세히 보기 정보 파일접근 권한 / 하드 링크 수 / 파일 소유자의 사용자 이름 / 파일을 소유한 그룹이름 / 파일크기 / 파일 마지막 수정날짜,시간/ 파일명
- file filename(간단한 파일 정보 출력)
- less filename(파일 내용 보기)
- less 조작키
- b/spacebar(페이지단위 위,아래 이동)
- up/down(줄단위 위,아래 이동)
- g/G(페이지 처음,끝 이동)
/string(/아래방향으로 입력된 문자열 찾기)
- h(도움말)
- q(종료)
와일드카드
파일,디렉토리 조작
- cp(파일 및 디렉토리 복사)
- mv(파일 및 디렉토리 이동)
- mkdir(디렉토리 새성)
- rm(파일 및 디렉토리 삭제)
- ln(하드 링크 또는 심볼릭 링크)
cp 옵션
- -a(파일 및 dir뿐만 아니라 소유자 및 권한 정보와 같은 속성까지 모두 복사)
- -i(기존 파일을 덮어쓰기 전에 확인 메시지를 보여주는 옵션, 안전을 위해 사용)
- -r(dir과 그 안의 내용까지 복사할 때 쓰는 옵션, dir 복사시 사용)
- -u(어떤 dir에 있는 파일을 다른 dir로 복사할 때, 그 dir 에는 없거나 최신 버전인 파일만을 복사하기 위해서 사용)
- -v(복사 완료되엇다는 메시지를 보여주는 옵션)
rm옵션
- -i(삭제하기 전 확인 메시지 출력)
- -r(하위 디렉토리도 삭제)
- -f(파일이 없더라도 실행됨, 존재하지 않는 파일 무시)
- -v(삭제확인 메시지 출력)
커맨드라인 단축키
- clear(화면 지우기)
- ctrl-A(줄 맨 앞으로 커서 이동)
- ctrl-E(줄 맨 뒤로 커서 이동)
- ctrl-L(==clear)
- ctrl-d(==delete)
- ctrl-k(현재 커서부터 해당 줄 끝까지 텍스트 지우기)
- ctrl-u(현재 커서부터 해당 줄 맨 앞 텍스트까지 지우기)
- tab - ls project(project디렉토리를 다 치지 않고 ls pro까지만 치고 tab키 누르면 자동완성)
Permission
- id - 사용자 id표시
- chmod - 파일 모드 변경
- umask - 기본 파일 퍼미션 설정
- su - 다른 사용자로 쉘 실행
- sudo - 다른 사용자로 명령어 실행
- chown - 파일 소유자 변경
- chgrp - 파일 그룹 소유자 변경
- passwd - 사용자 비밀번호변경
파일의 정류
- - - (일반파일)
- d -(디렉토리)
- l -(심볼릭 링크, 항상 777)
- c -(문자 특수 파일, 터미널이나 모뎀같이 바이트의 열로 데이터를 처리하는 디바이스를 나타냄)
- b -(블록 특수 파일, 하드 드라이브나 CD-ROM드라이브 같은 블록 단위의 데이터 처리하는 디바이스 나타냄)
퍼미션 속성
2진법 파일 모드
다른 사용자 ID와 그룹 ID 쉘 실행
간단히 자주 사용하는 명령어들 실행
1.탐색하기
우선 컴퓨터를 조작하는데 있어서 가장 기본이 되는 '탐색'에 대한 명령어들 알아보자
ls : 현재 경로에 존재하는 파일/폴더 확인하기
ls는 list의 약자로, 현재 자신의 위치에 있는 파일과 폴더를을 확인하는 명령어이다. 해당 경로에 존재하는 여러 파일과 폴더들의 이름이 나타는것을 확인할 수 있다.

pwd: 현재 위치한 경로 출력하기
pwd는 print working directroy의 약자로, 현재 어떤 경로의 디렉토리에 있는지 출력해주는 명령어이다.
cd:디렉토리 이동하기
cd는 change directory의 약자로, 경로를 이동할 때 사용하는 명령어이다. 위에서 ls명령어를 사용했을 때 나타났던 여러 폴더와 파일 중에서, Desktop으로 이동해보자
** 만약 폴더 밖으로 이동하고 싶다면 cdenldp ..을 입력하면 된다.
2.파일/폴더 관리하기
컴퓨터를 이용할 때 단순히 폴더에 들어가기만 하지 않는다. 직접 파일이나 폴더를 만들거나 수정하기도 하는데 이를 터미널로 실습해보자.
touch:파일 생성하기
touch는 파일을 생성하는 명령어이다. touch 뒤에 파일명을 적으면 되는데 필자는 test.txt파일을 만들어 보겠다.
mkdir:폴더 생성하기
mkdir은 make directory의 약자로, 새로운 폴더를 생성하는 명령어입니다.
cat:파일 확인하기
cat 는 concatenate의 약자로, 파일의 내용을 확인하는 명령어입니다. test.txt파일에 Hi cmd를 확인해보자

rm:파일 삭제하기
rm은 remove의 약자로, 파일을 삭제하는 명령어입니다. 한 번 test.txt파일을 삭제해보자 밑에 있던 test.txt가 사라진 것을 확인할 수 있다.

rmdir:폴더 삭제하기
rmdir은 remove directory의 약자로, 폴더를 삭제하는 명령어 입니다
rm -r:파일을 갖고 있는 폴더 삭제하기
rmdir은 내부 폴더가 있으면 삭제가 불가능합니다. 폴더에 진앱해서 내부의 파일을 다 삭제한 후에 rmdir을 실행해야 한다. 이런 경우 시간이 오래 걸리기 때문에 rm -r 명령어를 사용합니다.
cp:파일/폴더 복사하기
cp는 copy의 약자로, 폴더/파일을 복사하는 명령어입니다. cp뒤에 복사할 파일/폴더와 원하는 경로/이름을 입력하면 됩니다.
파일/폴더 이동시키기, 이름 변경하기
mv는 move의 약자로, 파일이나 폴더를 이동시키는 명령어 입니다. mv뒤에 이동시킬 파일과 이동시킬 디렉토리를 순서대로 입력하면 됩니다.
기타 유용한 명령어
- clear : 터미널 정리하기
- history : 이전에 사용한 명령어 확인하기
- man : 명령어 메뉴얼 확인하기
cmd도 추가 보완하겠습니다