일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 정보처리기사
- 도커 elk
- 백준
- 데이트
- 도커
- python
- streamsets 강의
- 클라우드
- 도커 mysql
- 코딩
- ansible install
- 스트림셋
- 알고리즘
- nvidia docker
- 푸시푸시
- MySQL
- 스트림셋이란?
- java
- C언어
- 파이썬
- c
- elk stack
- docker
- c++
- 데이터베이스
- mysql on docker
- 자바
- 도커 시작하기
- mysql docker
- 앤서블 설치
- Today
- Total
리그캣의 개발놀이터
네트워크 - 유닉스 명령어 본문
exit
터미널 종료 명령어.
pwd
print working directory /가 디렉토리를 말함.
지금있는 디렉토리를 모르거나 다른 디렉토리에 대한 정보를 얻고자 한다면 "pwd"는 정확한 패스네임(pathname)을 알려준다.
사용자가 login 하자마자 "pwd"를 명령을 실행하면 시스템 관리자가 부여한 사용자의 작업디렉토리인 홈디렉토리(HOME DIRECTORY)를 나타내 준다.
예] $ pwd
/users/guest ☞ 현재디렉토리는 루트밑에 users $ 디렉토리밑에 guest 디렉토리임
list(ls:list)
디렉토리 내용 조회 ,명령형식 : ls [옵션] [화일명..] 현재 디렉토리나 특정 디렉토리에 포함되어 있는 파일이나 하위 디렉토리를 조회한다. OPTION없이 "ls" 만 실행 시키면 화일및 디렉토리 이름만 보여준다.
[OPTION] -l "long form"으로 표시된다.
-t 수정한 시간별로 SORT해서 표시된다.
-a 모든 화일과 하위디렉토리가 표시된다.
-s 블럭크기가 표시된다.
-d 디렉토리의 상태를 알수가 있다. 그 디렉토리 밑에 있는 화일에 관한 정보는 표시되지 않는다.
-r "-t"와 같으나 SORT가 역으로 된다.
-u 최후에 수정한 시간이 아니고 최후에 ACCESS한 시간을 SORT하여 표시된다.
-f 각 인수를 디렉토리로 해석하고 화면에 나타내준다.
(이 옵션은 -l, -t, -s, -r을 무효로 하고, -a를 유효로 한다)
-g 소유자 ID 대신에, 그룹 ID를 출력한다.
예] $ ls -al ¿ ☞ 현재디렉토리의 모든화일및 하위 디렉토리를 long form으로 출력
디렉토리 이동 (cd : change directory)
예] $ ls -al ¿ ☞ 현재디렉토리의 모든화일및 하위 디렉토리를 long form으로 출력
다. 디렉토리 이동 (cd : change directory)
명령형식 : cd 디렉토리명
이 명령어에는 옵션(OPTION)이 없지만, 디렉토리 대신 몇개의 기호(Symbol) 를 사용 할 수 있다.
/ : "cd" 다음에 한칸 띄고 이 기호가 있으면 시스템루트디렉토리를 의미
. : 현재 디렉토리를 의미
.. : 현재 디렉토리 한 단계위의 디렉토리를 의미
예] $ pwd ¿ ☞ 현재 디렉토리를 조회하면 /usr/dick "/usr/dick" 임
$ ls ¿ ☞ 현재 디렉토리에 있는 화일및 A 하위디렉토리 조회
$ cd A ¿ ☞ 하위디렉토리인 "A" 로 이동
$ pwd ¿ ☞ 현재 디렉토리를 조회하면 /usr/dick/A "/usr/dick/A" 임
$ cd ../.. ¿ ☞ 현재디렉토리에서 상위디렉토리 "/usr/dick"으로 이동한 후 상위 디렉토리인 "/usr"로 이동
$ pwd ¿ ☞ 현재 디렉토리를 조회하면 /usr "/usr" 임
$ cd / ¿ ☞ 시스템루트디렉토리로 직접 이동
$ pwd ¿ ☞ 현재 디렉토리를 조회하면 / 시스템루트디렉토리인 "/" 임
디렉토리 작성(mkdir : make directory)과 삭제(rmdir : remove directory)
명령형식 : mkdir 디렉토리명 [디렉토리명...]
명령형식 : rmdir 디렉토리명 [디렉토리명...]
새로운 디렉토리를 만들거나 지울때에는 해당 디렉토리로 이동 한 후 이 명령어를 실행 한다.
이 명령어에는 옵션(OPTION)은 없고, 1개 또는 여러개의 디렉토리를 만들 거나 삭제 할 수 있다. 단, 삭제는 접근권한이 허가된 사용자만이 삭제 할 수 있다.
예] $ pwd ¿ ☞ 현재 디렉토리를 조회하면 /usr/dick "/usr/dick" 임
$ ls ¿ ☞ "/usr/dick"에 화일및 하위디렉 A 토리 조회
$ mkdir b c ¿ ☞ "/usr/dick"에 "b","c"라는 하위 디렉토리 작성
$ ls ¿ ☞ "/usr/dick"에 있는 화일및 디렉토리 조회해보면 "b","c" 디렉토리가 추가 됨
$ rmdir A ¿ ☞ "/usr/dick"에 있는 "A"디렉토리 삭제, 단 "A" 는 빈 디렉토리이어야 함
$ ls ¿ ☞ "/usr/dick"에 있는 화일및 디렉토리 조회해보면 "A" 디렉토리가 삭제 됨
이 명령의 실행이 정상 완료된 때에는 프롬프트($)가 나오지만, 명령이 이루어 지지 않았을 때에는 다음과 같은 진단메시지가 먼저 나온다.
◎ 해당하는 화일이 없을 경우
" rmdir : 디렉토리명 : Directory does not exist "
◎ 허가된 디렉토리가 아닌 경우
" rmdir : 디렉토리명 : Search or write permission needed "
◎ 디렉토리안에 화일이 있을 경우
" rmdir : 디렉토리명 : Directory not empty "
화일 삭제 (rm : remove)
명령형식 : rmdir [옵션] 파일명 [화일명...]
하나 이상의 화일을 디렉토리 안에서 삭제하는 명령어로 해당 화일에 대해 허가된 사용자만이 삭제 할 수 있다.
화일 전체를 지우려면 화일명 대신 "*"를 입력하면 된다.
[OPTION] -f 화일 권한(Permission)에 "Write"가 지정 안되어 있을때 삭제 할 것이냐는 응답메시지를 출력시키는데 "-f" 옵션은 이것을 무시하고 삭제시킨다.
-r 모든 화일과 하위디렉토리를 삭제한다.
-i 각 화일을 삭제할 때 마다 응답메시지를 출력한다.
이때 "y"는 삭제, [ENTER]는 삭제취소이다.
예] $ ls ¿ ☞ 현재 디렉토리 내의 내용을 조회하여보니 "A" 디렉토리, "abc",
"pi.cbl"화일이 있음
$ rm -r A ¿ ☞ 현재 디렉토리내에 있는 "A"
디렉토리내의 파일과 하위 디렉토리 전부를 삭제, 디렉토리명까지 삭제됨
실행 결과 이상 종료 진단메시지는 다음과 같다.
◎ 해당하는 화일이 없을 경우
" rm : 화일명 : File does not exist "
◎ 허가된 화일이 아닌 경우
" rm : 화일명 not removed."
" Permission denied."
화일의 연결 (cat : Concatenation)
명령형식 : cat [-u] 파일명 [화일명...]
이 명령어에 의해 2개 이상의 화일을 연결하거나, 새로운 일반 화일을 생성하거나, 화일의 내용을 화면으로 출력 시킬 수 있다.
"-u" OPTION 한개만 있으며, 이 옵션을 지정하면 시스템의 임시기억장소에 화일내용을 기억시켜놓는 버퍼링(Buffering)을 하지 않는다.
예] $ cat > ab ¿
this is a test file. ¿
abcdefg ¿
☞ "ab"라는 파일안에 Ctrl + C를 동시에 눌러 끝내기 까지 입력된 내용을 담아 화일 생성
$ cat ab ¿
this is a test file.
abcdefg
☞ "ab" 화일의 내용을 화면에 출력
$ cat ab test.dat ¿
this is a test file.
abcdefg
1234567890abcdefg
가나다라
☞ "ab"화일과 "test.dat" 화일의 내용을 순서대로 화면에 출력
$ cat ab test.dat > ab.dat ¿
$ cat ab.dat ¿
this is a test file.
abcdefg
1234567890abcdefg
가나다라
☞ "ab"화일과 "test.dat" 화일의 내용을 합쳐 "ab.dat" 라는 새로운 화일로 병합
$ cat test.dat ab >> ab.dat ¿
$ cat ab.dat ¿
this is a test file.
abcdefg
1234567890abcdefg
가나다라
1234567890abcdefg ☜ 새로 추가된 부분
가나다라
this is a test file. ☜ 새로 추가된 부분
abcdefg
☞ "ab"화일과 "test.dat" 화일의 내용을 합쳐 기존"ab.dat" 화일내용 뒤에 추가시킴
화일의 복사 (cp : copy)
명령형식 : cp source-화일명 target-화일명
cp source-화일명 [source-화일명...] 디렉토리명
하나의 화일을 새로운 이름으로 복사하고 같은 이름의 화일이 있으면 기존 내용을 무시하고 복사된다. 또한 여러개의 화일을 하나의 디렉토리 안에 복사할 수 있다.
예] $ cp ab.dat AB ¿
☞ "ab.dat"화일의 내용이 "AB"라는 화일로 복사. 단, "AB"가 하위디렉명이라면 "AB"디렉토리내에 "ab.dat" 화일명으로 복사
$ cp ab.dat AB.DAT ../DATA ¿
☞ "ab.dat"화일과 "AB.DAT" 화일을 상위디렉토리에 있는 "DATA" 디렉토리에 같은 화일명으로 복사
화일의 이동 (mv : move)
명령형식 : mv source-화일명 target-화일명
mv source-화일명 [source-화일명...] 디렉토리명
mv 디렉토리명 디렉토리명
이 명령어는 복사명령어(cp)와 유사하나, "source-화일"이 없어지는 점이 다르다. 또한 어느 디렉토리의 내용을 그대로 다른 디렉토리로 옮길 수도 있다. 단, 디렉토리 이동시에는 같은 계층에 있어야 한다.
예] $ mv ab.dat AB ¿
☞ "ab.dat"화일이 "AB"라는 화일명으로 변경된다. 단,"AB"가 하위 디렉토리명이라면 "AB"디렉토리 밑으로 이동된다. 현재디렉토리에 "ab.dat" 화일은 없어진다.
$ mv tmp data ¿
☞ 현재 디렉토리 밑에 있는 "tmp" 디렉토리에 있는 모든 화일이 "data" 디렉토리로 이동된다. "tmp" 디렉토리내에는 화일이 없어진다.
'프로그래밍 기본 > 네트워크 프로그래밍' 카테고리의 다른 글
네트워크 - 서버 모델 (0) | 2018.01.25 |
---|---|
네트워크 - 프로토콜 계층 (0) | 2018.01.25 |
네트워크 - 필드, 파라미터, 상태, 동작 내용 (0) | 2018.01.25 |
네트워크 - 리눅스 터미널 c 컴파일 하기 (0) | 2018.01.25 |
네트워크 - 소켓과 point (0) | 2018.01.25 |