리눅스의 폴더구조
- 리눅스의 폴더구조는 /로 부터 시작됩니다.
- root아래에는 다양한 폴더들이 있습니다.
- 핵심 폴더는 아래와 같습니다.
/home (사용자의 홈 디렉토리) (윈도우 c/사용자) /usr (응용프로그램 저장소) /etc (프로그램이 시작되기 위해 필요한 설정파일 저장소) /var (시스템 운영중에 발생한 데이터와 로그가 저장되는곳)
눅스의 명령문에는 많은 옵션들이 들어가게 됩니다.
이런 옵션들은 처음부터 다 외우기보다는 주로 사용되는 옵션들은 기억하고 좀 더 궁금하다면 구글에 검색하세요.
- 경로 이동 명령문 cd
- 현재위치확인
- 경로이동
- 폴더 파일 구조확인
- ls -l
- ls -al
- ls -a
- 절대경로와 상대경로로 이동하기
- 상대경로 ./
cd 경로
cd ./경로
- 절대경로 /
cd /
cd /절대경로
cd ~ (나의홈디렉토리로)
-
- 파일삭제파일 or 폴더 생성하고 다루기 mkdir, rmdir, touch, rm, mv, cp
- 디렉토리 생성
- 디렉토리 삭제
- 파일생성
- rm 파일명 (*표현식사용가능)
- 파일삭제파일 or 폴더 생성하고 다루기 mkdir, rmdir, touch, rm, mv, cp
- rm -r 폴더명 (하위모든폴더 삭제, -r 리컬시브옵션)
- rm -ri 폴더명 (묻고답하기로 삭제, -ri 리컬시브, 인터렉티브옵션)
- 파일이동(이름변경)
- 파일복사(파일복사 or 디렉토리복사)
- cp 파일명 파일명 파일명... 복사될경로
- 편집기 다루기 vi, nano
- 편집기(윈도우메모장) 다루는 방법으로는 대표적으로 vi모드가 있습니다.
- vi는 명령모드에 따라서 조작하는 방법입니다.
- 상세한 내용은 아래 링크를 확인하세요
- https://danielit.tistory.com/15
요 정도만 알아도 사용 가능 합니다
esc i
esc :w
esc :q
esc :wq
esc :q! (!는 강제실행)
- 편집기(윈도우메모장) 다루는 방법으로는 대표적으로 nano가 있습니다.
^ -> ctrl
M -> alt
- 파일찾기와 파일정보 확인 find, cat, head, tail, grep, diff
- 파일 찾기
- find ./ -name Hello.java
- find /home/coding404 -name *.java
- find 경로 -name 파일명
특정 위치에서 파일을 크기로 찾습니다.
c는 바이트를 의미함 +는 보다 큰파일, - 는 보다 작은파일
find 경로 -size 파일크기
find ./ -size +1024c
find /home/coding404 -size -1024c
옵션은 나열이 가능
find 경로 -name *.java -size -1024c
find 명령을 사용하여 큰 파일 찾기(용량정리에 유용)
sudo find . -xdev -type f -size +100M
- 파일 확인하기
파일의 전체를 한눈에 확인합니다.
cat 파일명
cat Hello.java
파일의 위 부분을 출력합니다. (옵션 -n )
head 옵션 파일명
head Hello.java
head -n5 Hello.java
파일의 아래 부분을 출력합니다. (옵션 -n)
tail 옵션 파일명
tail Hello.java
tail -n5 Hello.java
파일의 실시간 로그 출력합니다 (옵션 -f)
tail -f Hello.java
tail -fn30 Hello.java
파일 안에서 찾을 값을 검색합니다.(Hello.java에서 hel 단어를 찾는다.)
- 정규표현식으로 사용되거나 or 다른 명령문과 조합되서 많이 사용됩니다.
grep 찾을값 파일명
grep hel Hello.java
파일을 비교하여 다른 부분을 보여줍니다.
diff 파일명 파일명
diff Hello1.java Hello2.java
- 파일 압축하기, 압축풀기
- tar옵션을 따라 묶기만 할 수도 있고, 압축으로 묶을 수도 있습니다.
- 추후 압축 파일을 FTP도구를 이용해서 옴긴다면 압축을 해제해서 사용 할 수 있습니다.
- tar옵션은 파일을 묶거나 풀어내는 옵션입니다.
- 주요옵션
-c : tar로 묶기
-x : tar로 풀기
-z : gzip으로 압축하거나 해제함
-v : 묶거나 파일을 풀 때 과정을 화면으로 출력
-f : 파일명지정
- 파일명 지정하여 파일 묶고 풀기
tar 옵션 압축명 압축파일1 압축파일2 ….
파일묶기
tar -cf myJava.tar Hello2.java Hello.java
파일풀기
tar -xf myJava.tar
- 파일명 지정하여 파일 압축하여 묶고 풀기
압축하기
tar -zcf myJava.tar.gz *.java
압축해제
tar -zxf myJava.tar.gz
압축해제 과정을 로그로 출력
tar -zxvf myJava.tar.gz
- 심볼릭 링크 만들기 ln
- 리눅스를 사용하면서 화살표 모양을 보게 됩니다.
- 바로 심볼릭 링크입니다.
- 심볼릭 링크는 window의 바로가기 입니다.
링크의 두가지 개념
심볼릭링크(바로가기) vs 하드링크(동일한 실행 파일만들기)
- 심볼릭 링크는 window의 바로가기 입니다.
- 하드 링크는 완전 동일한 구조의 파일을 또 만드는 것입니다.
- 두 링크 모두 수정 시에 원본 파일이 변경됩니다.
- 두 링크 모두 삭제 시에 원본 파일에 영향은 없습니다.
두 링크의 차이
심볼릭 링크는 원본 삭제 시 영향이 있습니다.
하드 링크는 원본 삭제 시 영향이 없습니다.
보통 바로가기 수준의 심볼릭 링크가 많이 사용됩니다.
명령문으로 확인하기
- 옵션
-s : 심볼릭 링크로 생성
- 하드링크
ln 옵션 원본파일명 링크파일명
ln Hello.java Hello.ln
- 심볼릭링크
ln -s Hello.java Hello.ln
'리눅스' 카테고리의 다른 글
apt로 외부 파일 설치 (웹서버구현) (0) | 2024.07.10 |
---|---|
사용자생성과 소유권, 실행권한 (0) | 2024.07.04 |
리눅스 접속을 위한 SSH서버 설치 (0) | 2024.07.04 |
개발자가 알아야 하는 리눅스명령문 (0) | 2024.07.04 |