명령어의 법칙
pwd
/home/sevas
1. ls -l /home /sevas /korea
2. ls -l /home sevas korea
=> ls -l
1 = /home
2 = /test/sevas/sevas
3 = /test/sevas/korea
=========================================================
ls , cd ,mkdir , pwd , passwd , ifconfig , man , clear ,date, uname
ls : list 목록보기 파일/디렉토리 목록
=========================================================
- 사전실습 : 모든명령은 경로를 생성한뒤에 실행해야한다.
# touch
- 0byte의 파일 생성
# touch /touch/1 (절대경로)
# touch ./2 (상대경로)
# touch 3 (상대경로)
- 디렉토리 생성은 되지만 파일생성은 되지 않는다.
# mkdir aa/
# touch a/
# touch /home/cc bb ./aaa
- bb와 aaa는 /touch 에 있는 것을 알 수 있다.
- cc 는 /home 에 있는 것을 알 수 있다.
==>
# touch /home/cc bb ./aaa
현재위치(pwd) = /touch
- cc = /home/cc [절대경로]
- bb = /touch/bb [상대경로]
- aaa = /touch/aaa [상대경로]
경로 연습
# mkdir /home/A B ./C
경로연습
# ls -l ../home ./
=========================================================
# 수업준비 및 문제
/korea와 /cptest 를 생성하고
/korea에는 1 2 3 4 개의 파일과 a b c d 라는 4개의 디렉토리 생성
/cptest로 이동하여 pwd 입력시 /cptest가 출력되도록 하세요
#mkdir /korea /cptest
#touch /korea/1 /korea/2 /korea/3 /korea/4
#mkdir /korea/a /korea/b /korea/c /korea/d
#cd /cptest
#pwd
#ls -l /cptest /korea
[상대경로 & 절대경로]
#mkdir -p /korea /cptest
#cd /korea
#touch 1 2 3 4
#mkdir a b c d
#ls -l
#cd /cptest
#pwd
#ls -l /cptest /korea
[확인]
#ls -l /korea /cptest
#pwd
/cptest
=========================================================
# cp
- copy 파일 복사
# 옵션
-r : 디렉토리 복사
-p : 보존복사(속성)
-i : 확인(y/n)
-a : 모든 옵션 포함
pwd => /cptest
#예제
1.
# cp /korea/1 /cptest/1
# ls -l /korea/1 /cptest
2.
# cp -p /korea/2 /cptest/2
# ls -l /korea /cptest
3.
# cp -i /korea/1 /cptest -> n
# cp -i /korea/1 /cptest -> y
4.
# cp -p /korea/2 /cptest/e
# cp -p /korea/3 samsam
# ls -l /korea /cptest
5.
# cp /korea/a /cptest : (X)
- 에러가 발생 한다. (a는 디렉토리)
# cp -r /korea/a /cptest
# cp -rp /korea/a /cptest
# ls -l /korea /cptest
==> 안에 내용이 있으면 복사 안됨
# cp -a /korea/b /cptest
6.
# cp -rp /korea/1 sevas1
# cp -p /korea/c /cptest/cream
# ls -l /korea /cptest
7.
# cp -rp /korea/c /korea/d /korea/3 /cptest
# ls -l /korea /cptest
===TIP===
# cp / mv 사용법
$1
- 원본과 target의 이름이 같을경우
file/dir명 생략가능 (#2,#3,#5)
$2
- 원본과 target의 이름이 다를경우
복사/이동과 동시에 target이름으로 변경(#4,#6)
$3
- 여러경로 존재시 가장 마지막경로가 target (#7)
=========================================================
## 실습문제 ##
Rocky Linux_기초문제(cd,ls,pwd,touch,mkdir,cp)
- 경로가 없으면 만들어 줍니다.
- 환경이 없으면 만들어 냅니다.
- 압축을 새로 풀고 싱글부트를 진행하세요, 푸티 접속 후 스냅샷 찍기
1. 다음과 같은 파일이 존재하는지 확인하세요. (3개 나와요~♡)
/etc/login.defs
/home/passwd
/etc/inittab
/boot/grub2/grub.cfg
/bin/vsftp
# ls -l /etc/login.defs
# ls -l /home/passwd
# ls -l /etc/inittab
# ls -l /boot/grub2/grub.cfg
# ls -l /bin/vsftp
2. 1번에서 존재하는 파일 3개를 /backup 디렉토리에 복사하세요
# mkdir /backup
# cp /etc/login.defs /backup
# cp /etc/inittab /backup
# cp /boot/grub2/grub.cfg /backup
# ls -l /backup
3. 복사되어 있는 파일을 앞자리 3글자만 따서 /backup/test 디렉토리에 이름변경복사하세요.
# mkdir test
# cp grub.cfg /backup/test/gru
# cp inittab /backup/test/ini
# cp login.defs /backup/test/log
4. 한줄명령으로 다음과 같은 디렉토리에 test1~3 파일을 생성해보세요
dir(디렉토리) | file(파일) |
/home | test3 |
/backup | test1 |
/backup/test | test2 |
# touch /home/test3 /backup/test1 /backup/test/test2
5. ./backup/test 디렉토리를 /home/test/c/d/linux 이름이 되도록 이름변경 보존복사하세요.
# mkdir -p /home/test/c/d
# cp -rp ./backup/test /home/test/c/d/linux
6. /home으로 이동한뒤에 /sevas 디렉토리를 만들어주세요
# cd /home
# mkdir /sevas
7. pwd 입력시 /root가 출력되는 곳에서 이동을 하지 않고
/home /backup /backup/test에 있는 test1 test2 test3 파일을 /sevas에 한줄 명령으로 복사하세요.
# cp /home/test3 /backup/test1 /backup/test/test2 /sevas
8. /backup에 있는 파일 4개를 /home/test/c/d/test 디렉토리에 한줄명령으로 복사하세요
c ( -a -r 옵션 쓰지 말것)
# cp ./grub.cfg ./inittab ./login.defs ./test1 /home/test/c/d/test
/test1 디렉토리에 파일 1 2 3 4
/test2 디렉토리에 dir a b c d
pwd -> /mvtest 이 나오게 출력
# mkdir /test1 /test2 /mvtest
# cd /test1
#touch 1 2 3 4
# cd /test2
# mkdir a b c d
# cd /mvtest
# ls –l /test1 /test2 /mvtest
=========================================================
#mv (move)
- 파일/디렉토리 이동
**특징 옵션이 거의 필요 없다.**
#예제
1.
#mv /test1/1 /mvtest
ls -l /test1 /mvtest
2.
#mv /test2/a /mvtest
ls -l /test2 /mvtest
3.
#mv a apple
ls -l
4.
#mv /test2/b /test1/2 /test1/3 /mvtest/
ls -l /test1 /test2 /mvtest
=========================================================
#rmdir
- 빈 디렉토리 삭제 (거의 안씀)
(옵션)
-p : 필요한경우 경로상의 상위 빈 디렉토리도 삭제
- 환경 <== 옵션 -p 를 사용하기
dir => /rmdir/a/b/c/d/e/f/g
file => /rmdir/a/b/c/test
- 확인하기
#ls -lR /rmdir/a/b/c
# rmdir /rmdir/a/b/c/d/e/f/g/h (X)
- 오류 : h 디렉토리가 없기 때문에
# rmdir /rmdir/a/b/c/d/e/f (X)
- 오류 : 디렉토리가 비어있지 않기 때문에
# rmdir /rmdir/a/b/c/d/e/f/g
- g 디렉토리가 지워짐
# ls -lR /rmdir/a/b/c
# rmdir -p /rmdir/a/b/c/d/e/f/
- /rmdir/a/b/c 디렉토리가 비어있지 않기 때문에 d, e, f 디렉토리
까지만 지워짐을 알 수 있다.
=========================================================
#rm
- remove약자
- 파일 삭제
/rmtest 디렉터리 생성 후
내부에 a b c d 디렉터리
1 2 3 4 파일을 생성
pwd 입력시 /rmtest 출력
- 파일 삭제 (remove)
- 옵션
-r : 디렉토리삭제
-f : 강제
-i : 확인
1.
# rm 1
#ls -l
2.
# rm -i 2
#ls -l
3.
# rm a (X)
# rm -r a
#ls -l
4.
# rm -fi 3 -> (n)
ls -l
# rm -if 3
ls -l
5.
# rm -ri /rmtest ( y n n n n )
- 하나하나 다 물어봄
# rm -rf /rmdir ****
6.
# ls -ld /test1 /test2
# rm -rf /test1 /test2
# ls -ld /test1 /test2
=========================================================
- 사전 준비
# pwd
# /rmtest
# touch 111 112 122 222 211 221
==tip==
@정규표현식
- * 문자전체 ( 에스터르크 )
- ? 대체문자(한자리) : 필터링
박세찬
*박* 박세찬
박* 박세찬
*세* 박세찬
박세찬
? (에러)
?? (에러)
??? (박세찬)
?박 (에러)
박?찬 (박세찬)
#예제
1.
#ls -l * (전체)
#ls -l 1* (1로 시작하는 모든 문자)
#ls -l *1 (1로 끝나는 모든 문자)
2.
#ls -l ? (한글자로 된것만 출력)
#ls -l ?? (에러, 두글자인게 없음)
#ls -l ??? (세글자로 된것만 출력)
#ls -l ?1? (중간에 1이 들어간 세자리 출력)
##실습##
1.
#rm -rf ./*
#rm -rf /* [절대 하면 안되는 명령어]
#rm -rf *
#rm -rf ./*
=========================================================
논리연산자
&& = and
|| = or
a && b
- a성공시 b실행
- a실패시 b미실행
# pwd && b (pwd 성공시 b 실행)
# b && pwd (b 실패시 pwd 미실행)
a || b
- a성공시 b미실행
- a실패시 b 실행
# pwd || b (pwd 성공시 b 미실행)
# b || pwd (b 실패시 pwd 실행)
a | b (pipe, 연계)
- a의 내용을 받아 b로 출력
==>프로세스 우선순위에 따라서 실행 (낮은 순위 먼저 실행)
#grep : 문자포한 열 추출
ex)
# ls -l /etc
# ls /etc |grep yum
- grep : 문자포함 열 추출
=========================================================
#alias
- 단축키 지정 (별명)
# alais (확인)
# alias c='clear’ (단축키지정)
# unalias c (단축키삭제)
TIP. # alias는 로그아웃하면 내용 삭제됨, 영구적사용은 shell에 부여해야
#alias : 확인
#unalias : 삭제
ls -l , ls -ld , ll
***실습문제***
- a1 = /alias 디렉터리 생성
==> #alias a1='mkdir /alias'
- a2 = /alias 디렉토리 내부에 test1 파일
test2 디렉토리 생성
==> #alias a2='mkdir -p /alias/test2 && touch /alias/test1'
- a3 = /alias 디렉터리 강제 삭제
==> #alias a3='rm -rf /alias'
- a4 = /alias 디렉터리 생성과 같이 /alias 내부에
test1 파일 test2디렉터리 생성
==> # alias a4=’mkdir –p /alias/test2 && touch /alias/test1
==> #alias a4='a1 && a2'
==> alias를 묶어서 사용할 수 있다.
'보안 국비 용 > 보안 7월' 카테고리의 다른 글
정보 보안 과정 형 평가 7일차 (2024.07.31) (0) | 2024.07.31 |
---|---|
정보 보안 과정 형 평가 6일차 (2024.07.30) (0) | 2024.07.30 |
정보 보안 과정 형 평가 4일차 (2024.07.26) (0) | 2024.07.26 |
정보 보안 과정 형 평가 3일차 (2024.07.25) (0) | 2024.07.25 |
정보 보안 과정 형 평가 2일차 (2024.07.23) (0) | 2024.07.23 |