1. 리눅스 파일시스템
쉘 -> 운영체제 제어
1) / 루트
2) /home/ : 윈도우의 사용자 홈디렉토리와 동일한 기능, 사용자계정별로
3) /bin/ : 윈도우의 system(공통파일, 실행파일 두는 곳)
4) /mnt/ : 과거에 다른 것과 엮어서 쓰기위해 mnt라는 폴더를 뒀었는데 현재는 /media에 두고 쓴다
5) /usr/ 프로그램 열어서 설치할 때 program파일 설치해두는 곳
6) /etc : 윈도우에서 registry
리눅스 폴더 구조 https://webdir.tistory.com/101
2. 리눅스 명령어
~ 기호는 home 디렉토리 나타내는 것
clear : 화면에 있는 모든 것을 지울 때
* 명령어 ls -l : long으로 보여줌
mkdir : 디렉토리 생성
rmdir : 디렉토리 삭제
touch : 빈 파일 생성
mv : 파일 이동 / 변경 -> mv bin bin2 (bin 을 bin2로 파일명 바꾸는 것)
rm : 파일 삭제
rm workspace 하면 디렉토리라서 지울 수 없고, rmdir workspace/ 할 경우 안에 비어있지 않으면 못지움
rm -r workspace/ : 하면 재귀적으로 다 지울 수 있다.
rm -ri workspace : 상호작용하면서 지우는 것
cp : 파일 복사
파일 찾기
find ./ -name *.java
find ./ -name *.java -size +1c
파일 들여다 보기
cat Hello.java(전체 들여다 보는 것)
앞에 두 줄만 볼 때 : head -n2 Hello.java
뒤에 두 줄만 볼 때 : tail -n2
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sw4r&logNo=221538733820
https://devlsy.tistory.com/m/69
grep vs find
https://honeyteacs.tistory.com/38
문서 내에서 찾고자 할 때
grep class Hello.java
소대문자 구분하지 않고 찾을 때 -> i
비교하고자 할 때 cmp Hello.java Hello1.java
->differ
differ Hello.java Hello1.java 를 비교할 수 있다.
(일반 파일은 ls -l 했을 때 아무것도 d로 시작하지 않고, d로 시작하는 건 디렉토리의 경우)
* 리눅스에서는 파일이 디렉토리보다 큰 개념, 파일의 한 종류가 디렉토리
3. 파일 편집 및 관리
VI(를 사용하는 경우 드물고 편집기 사용)
i(insert), a(현재 위치에서 뒤에 insert), o(현재 위치의 아랫 줄에서 insert)
화살표 안 먹을 때 h,l(좌우) kj(위아래) 눌러야 한다.
:q(나가는 것), :w(들어와서 쓰고 수정하는 것)
GUN nano이용하여 편집
4. 유용한 명령어
1. history : 기존에 사용한 명령어 확인
2. redirect : 파일에 내용 담아놓을 수 있음
3. ;
4. 파일압축관리 : tar
tar -cf name.tar a b c // 압축 : tar -zcf name.tar.gz a b c
압축 풀기 : tar -xvf name.tar // tar -zxvf name.tar.gz
5. 압축본 JDK 설치
6. 링크 파일 만들기
1) Symbolic link : 바로가기 파일
2) hard link
7. 사용자 관리하기
useradd(adduser) - 사용자 추가
usermod - 사용자 변경
userdel(deluser) - 사용자 삭제
8. 사용자를 추가하는 스크립트 파일 생성
파일과 디렉토리 권한 변경
인자를 이용한 스크립트 파일로 변경하기
향상된 사용자 추가방법(adduser)
프롬프트 변경하기 (PS)
출력 색상 변경하기 (LS)
명령어 별침 만들어 사용하기
9. 네트워크 연결
1. ssh : 보안 프로토콜을 이용해 원격 호스트에 로그인하거나 원격호스트에서 명령어 실행
2. scp : 보안 프롤토콜을 이용해 원격 호스트와 파일을 주고 받음(일괄 처리)
3. sftp : 보안 프롤토콜을 이용해 원격 호스트와 파일을 주고 받음(대화형)
4. ftp : 원격 호스트와 파일 주고받음( 대화형, 안전하지 않음)
5. netcat : 임의의 네트워크 연결을 생성한다.
10. cat, less, tail..
간단하게 짧은 문서를 한번에 출력하려면 cat
긴 문서를 조금 더 꼼꼼하게 확인하고 싶으면 less
문서의 머리부분을 확인하고 싶으면 head
꼬리부분을 보고 싶거나 로그를 실시간으로 확인하고 싶으면 tail (로그 볼 때 tail -f hello.txt)
편집하고 싶으면 vim
'CS > 운영체제(리눅스)' 카테고리의 다른 글
ufw, iptables 차이 (0) | 2023.05.19 |
---|---|
런 레벨(Run Level) (3) | 2023.05.15 |
쉘 스크립트(.sh) (0) | 2022.12.27 |
리눅스 권한 및 사용자 관련 (0) | 2022.12.27 |
리눅스 강의(시니어코딩) (0) | 2022.02.01 |