-
리눅스 기초 명령어System/Linux 2020. 4. 23. 20:16
리눅스 명령어 형식
command [-단일 문자 옵션] [--다중 문자 옵션]
디렉터리의 표현
/ : 최상위 root 디렉터리 (절대 경로 표현의 기준)
./ : 현재 디렉터리 (상대 경로 표현의 기준 : 생략 가능)
../ : 현 디렉터리의 상위 디렉터리
~/ : 각 사용자의 홈 디렉터리cd [이동할 디렉토리명]
디렉터리를 이동하는 명령어, 보통 옵션이 없이 사용한다.
pwd
현재 위치한 디렉터리를 절대 경로 표현법으로 출력한다.rmdir [삭제할 디렉토리명]
지정한 디렉터리를 삭제한다.
디렉터리가 비워져 있는 경우만 삭제 가능하다.mkdir [옵션] [생성할 디렉토리명]
지정한 디렉터리를 생성한다.
생성된 디렉터리는 생성한 유저의 소유가 된다.
-옵션- -p, --parents
(필요하다면 생성하고자 하는 상위의 디렉터리까지 생성한다.)
ls [옵션]
현재 디렉터리의 목록을 출력한다.
-옵션- -a, --all : 숨겨진 파일의 목록까지 출력
- -l : 파일에 대한 정보를 자세히 출력
- -R : 하위 디렉터리의 내용까지 출력
- -h : 사람이 이해하기 쉽도록 파일의 크기를 출력
- -k : kb단위로 파일의 크기 출력
- -i : 파일의 inode 번호를 같이 출력 (고유번호)
리다이렉트
표준 입출력 지시자> : 표준 출력 지시자
- command > 파일 : 명령 결과를 파일로 저장
>> : 추가 표준 출력 지시자
- command >> 파일 : 명령 결과를 파일에 추가
< : 표준 입력 지시자
- command < 파일 : 파일의 내용을 명령의 입력 값으로 사용
cat [옵션] [출력 대상 파일]
-옵션- -n : 행 단위 번호
- -b : 공백 라인을 제외하고 행 단위 번호
파일의 입출력 제어
# cat [< 입력 파일 > 출력 파일]- 기본 입력 파일 : 키보드
- 기본 출력 파일 : CRT
입력 파일의 경우 < 기호 생략 가능
>> : 출력 파일이 존재하는 경우 내용 추가
# cat a.txt -> a.txt 내용을 화면에 출력
# cat < a.txt > b.txt -> a.txt 내용을 b.txt에 출력(복사)echo [환경변수 | 문자열]
환경 변수나 입력 내용을 출력
리다이렉트를 이용하면 파일을 생성할 수도 있다.
ex)
# echo $HOME
# echo '$HOME'# echo "$HOME" 은 화면에 환경변수 내용이 아닌 $HOME을 출력한다.
$를 쓰지 않으면 문자열을 출력한다.
env
모든 환경 변수를 출력한다.cp [옵션] 원본 파일 복사 파일명
파일이나 디렉터리를 복사한다.
-옵션- -a : 원본의 속성유지
- -r : 하위 디렉터리나 파일 모두 복사
- -f : 강제 실행
- -p : 파일의 소유와 권한 등을 보존한 채 복사
- -u : 새 파일 덮어쓰기 금지
cp -arfp 원본 파일 복사 파일명
이렇게 옵션을 한 번에 다 줘서 사용하는 것이 좋다.
mv [옵션] 원본 파일 이동 파일명
파일이나 디렉터리를 이동한다.
-옵션- -f : 강제 실행
- -b : 파일이 덮어 쓰일 경우 백업 파일을 생성한다.
- -d : 디렉터리 삭제
- - i : 삭제 전 일일이 삭제 여부 확인
- -v : 삭제 파일 만들기
mv 명령어를 통해 파일명을 변경할 수 있다.
rm [옵션] 대상 파일
파일이나 디렉터리를 삭제한다.
-옵션- -f : 강제 실행
- -r : 대상 중에 디렉터리가 있는 경우 디렉터리도 삭제
ln [옵션] 원본 파일 링크 파일
link 파일 생성 (symbolic(soft), hard)
-옵션- -s : soft link 생성 (디렉터리의 경우 soft link만 가능)
- -f : 대상이 존재하는 경우 지우고 link파일 생성
유닉스는 디렉터리에도 하드 링크가 가능하지만 하지 않는 것이 좋다.
-하드 링크와 소프트 링크의 차이점
실제 파일인 a.txt가 하드디스크의 저장공간을 가리키고 있을 때
링크 파일인 b.txt가 소프트 링크 파일이라면 a.txt 파일을 가리키고
하드 링크라면 하드디스크의 저장공간을 가리킨다.하드 링크는 실제 파일을 만드는 것과 비슷해서 잘 쓰지 않는다.
파일을 관리할 때 똑같은 파일이 두 개가 생기면 관리하기 힘들기 때문이다.more 파일
화면 출력을 화면 단위로 제어
출력되는 내용이 많아서 화면을 넘어가는 경우 사용
|
앞쪽 명령의 결과를 뒤쪽 명령의 입력 값으로 이용ex) # ls –al | more
grep
출력 문자 열중에 원하는 단어나 글자가 들어있는 라인만 출력하고자 할 때 이용한다.(필터링)
ex) # ls –al | grep [필터링 문자열]head, tail
파일의 일부분을 출력. 각각 앞 뒤에서 10 라인씩 출력
-옵션- -n : 지정한 라인만큼 출력
- -c : 지정한 byte 만큼 출력
- -f : tail에서만 사용, 실시간 추가되는 내용도 출력
주로 log 정보 확인 시 사용한다.
find 검색경로 옵션 옵션에 대한 값
파일 시스템에서 조건에 만족하는 파일을 검색한다.
-옵션- -name : 파일명으로 검색 (와일드카드 문자 사용)
- -perm : 특정 퍼미션을 가진 파일을 검색
- -empty : 크기가 0인 파일 검색
- -user 지정한 사용자가 소유한 파일
- -group 지정한 그룹이 소유한 파일
- -nouser 소유자가 없는 파일
- -nogroup 그룹 소유자가 없는 파일
- -type 검색하고자 하는 파일의 종류 지정
b(block), c(char), d(dir), l(slink). f(regular) - -mount 마운트 된 파일 시스템만 검색
-name 옵션 사용 시 에러가 발생하면 문자열을 '로 감싸준다.
tar [옵션] [압축 파일명] [대상]
여러 개의 파일을 하나의 파일로 압축한다. 단 용량은 줄어들
지 않는다. 용량을 줄이기 위해서는 gzip을 이용하거나 특별
한 옵션을 이용한다.
-옵션- -c : 압축
- -x : 풀기
- -v : 작업내용을 출력
- -z : gzip를 이용 압축(압축해제)
- -j : bzip2 이용
- -f : 파일명을 지정
- -p : 퍼미션 유지
보통은 압축할 때는 cvfz 옵션을 한 번에 다 주고
압축을 풀 때는 xvfz 옵션을 모두 준다.
이때는 -를 붙이지 않는다.
clock [옵션]
리눅스 시스템에 탑재된 BIOS의 시간을 출력하거나 변경한
다.
-옵션- -r : BIOS의 시간을 읽어 표준 출력으로 출력한다.
- -w : BIOS의 시간을 시스템의 시간으로 변경한다.
- -s : BIOS의 시간으로 시스템의 시간을 변경한다.
date [+포맷]
지정한 포맷으로 시스템의 날짜를 출력한다.
-포맷(시간)- 시 : %H(00..23), %I(01.. 12), %k(0.. 23), %l(1.. 12), %p(AM, PM)
- 분 : %M(00..59)
- 초 : %S(00..59)
- 시간 : %r(hh12:mm:ss AM), %T(hh24:mm:ss), %X (로케일)
- 기타 : %s (1970년 1월 1일 이후 경과된 초)
-포맷(날짜)
- 년 : %Y(YYYY), %y(yy)
- 월 : %m(01..12), % B(January.. December), %b(Jan.. Dec)
- 일 : %d(01..31)
- 요일 : %A(Sunday .. Saturday), %a(Sun.. Sat), %w(0.. 6)
- 기타 : %D(mm/dd/yy), %x(로케일), %j(00.. 365)
rdate [옵션] [시간 제공 서버 주소]
인터넷상에 제공되는 서버로부터 시간 정보를 받아 시간을 출
력하거나 시스템의 시간을 재설정한다.
-옵션- -p : 타임 서버로부터 제공된 시간을 출력한다.
- -s : 타임 서버로부터 제공된 시간을 이용 시스템의 시간을
재설정한다.
stat 파일
파일의 시간 정보를 출력한다.
리눅스 파일의 타임스탬프
- atime
- 파일에 마지막으로 접근한 시간
- 시스템이나 응용프로그램이 마지막으로 파일에 접근한 시간 - ctime
- 파일의 퍼미션 등 속성이 변경된 시간. - mtime
- 파일의 내용이 마지막으로 수정된 시간
- mtime이 수정되면 ctime도 수정된다.
touch [옵션] 파일
파일의 시간 정보를 현재 갱신한다. 파일이 없으면 빈 파일을
생성한다.
-옵션- -t [YYYYMMDDhhmi] : 임의의 시간으로 변경
- -a : 최근 사용 시간 변경
- -m : 파일의 최근 수정 시간 변경
- -r [file] : 지정한 파일과 동일한 시간으로 변경
- -c : 파일을 생성하지 않는다.(존재하지 않을 때)
'System > Linux' 카테고리의 다른 글
파일시스템과 파티션 (0) 2020.04.27 리눅스 파일 구조 및 퍼미션 (0) 2020.04.27 리눅스 사용자 관리 (0) 2020.04.23 vi 에디터 (0) 2020.04.23 CentOs 7 설치 후 설정 - 2 (0) 2020.04.13 - -p, --parents