mkdir : 디렉터리 생성한다. 파일명, 디렉토리명은 영어로 한다. 중복 불가능하다.
: 불가능하다.mkdir report/2021/05
mkdir -p report/2021/05 (parent) : report/2021/05 디렉터리를 한 번에 생성한다. 부모 디렉터리까지 생성한다.
ls -R (recursive) : 디렉토리 아래의 모든 내용까지 반복해서 보여준다.
touch : 인자로 지정한 이름의 빈 파일을 생성한다. 여러 개 만들 수 있다.
파일의 타임스탬프를 현재 시간으로 변경한다.
존재하는 파일을 지정해도 내용이 지워지지 않고 타임스탬프만 갱신된다.
rm : 묻지 않고 바로 삭제한다.rm newfile
rm *.html
touch f1.txt f2.txt f3.txt → rm f?.txt
rm -r : 재귀적으로 디렉터리 트리를 삭제한다.
디렉토리는 rm으로 지울 수 없다.
디렉터리 트리를 모두 지워야 하기 때문에 -r(recursive) 옵션을 사용해야 한다.
ls 로 확인하고 삭제해야 한다.
리눅스의 철학 : 주어진 명령을 단순히 실행한다.
rm -i (interact) : 물어보고 지운다. prompt before every removal
y/n 을 입력받고 실행여부를 결정한다.
rmdir : 빈 디렉터리를 삭제한다. 비어있지 않은 경우 삭제가 불가능하다.
touch .hidden : 숨김 파일을 생성한다. ls -a를 사용하여 확인해야 한다.
cat f2.txt : 파일이 있는 경우 내용을 출력한다.
cat /etc/hostname : user1@user1-VirtualBox 에서 hostname의 내용인 을 보여준다.
cat /etc/crontab : cron table cron명령어가 사용하는 테이블이다. 특정 명령어를 스케줄에 맞게 자동으로 실행하는 설정 파일이다.
cat -n : 행 번호가 함께 출력된다.
cat hello world를 입력하면 내용을 그대로 출력한다. 종료하려면 ctrl+d : 입력을 그만하겠다는 의미이다.
cat > myname : myname에 출력된다는 의미이다. 파일을 생성할 수 있다. cat myname으로 확인할 수 있다.
less /etc/bash.bashrc : 한 페이지씩 보여준다. 엔터, 화살표, j, k로 스크롤 한다. q로 탈출한다.
- 단축키
/: 열려있는 파일에서 문자열을 검색할 수 있다.n(next) : 밑으로 내려간다.N: 이전 검색 결과로 이동한다.?: 문자열을 위 방향으로 검색한다.
cp file1 file2 : file1을 file2에 복사한다. file2가 없으면 생성한다.
cp 원본 복사본명
cp file1 dir1 : file1을 dir1에 복사한다. 디렉토리면 그 안에 파일을 생성한다.
cp file1 file2 dir2 : dir2에 파일 2 개를 복사한다.
cp 빈 파일 파일 : 파일이 빈 파일로 덮어쓰기 된다.
cp -i 빈 파일 파일 : 물어보고 덮어쓰기 된다.
cp -r dir1 dir2 : dir1을 dir2에 복사한다. 하위 디렉터리까지 복사한다.
디렉토리가 이미 있는 경우라면 dir2 밑에 dir1이라는 이름으로 복사된다.
없는 경우 디렉토리 생성된다.
mv file1 file2 : 이름을 바꾼다. file1의 이름을 file2로 변경한다.
mv 파일명 새로운파일명 : 두개 다 파일이면 이름이 변경된다.
mv file2 dir1 : file2를 dir1로 이동한다.
mv 파일명 장소
mv file1 file2 file3 dir1 : file들을 dir1로 이동한다.
mv -i file1 file2 : file1을 file2에 덮어쓴다. 물어보고
mv dir1 dir2 : dir2가 존재하지 않는 경우 dir1이 dir2에 덮어쓰기 되면서 이름이 변경된다.
dir2/dir1이 된다.바로가기 링크를 만든다.
파일에 별명을 붙이는 기능이다.
하드링크 : 거의 사용하지 않음.
심볼릭 링크 : 주로 사용된다. 윈도의 바로가기와 비슷하다.
ln 링크할파일 링크
한 원본에 이름을 여러 개 붙인다.
소유자 옆에 하드링크 개수를 알 수 있다.
ln file1 file1.ln : 현재 위치에 file1.ln 생성한다. 완전히 내용이 같다.
file1 → 정보 inode → 파일 내용
파일 생성 때마다 file1, inode, 파일 내용 이 생성된다.
하드링크의 경우 file1.ln은 file1의 inode와 파일 내용이 공유된다. 이름만 한개 더 생긴다.
어떤 것이 원본인지 구분하지 않고 모두 같은 원본이다.
단점
삭제
rm file1.ln : 이름표가 또 있으므로 이름만 삭제한다.
하드링크가 2개 이상이면 inode와 파일 내용을 삭제하지 않고 한 개 뿐이면 완전히 삭제한다.
ln dir3/dir2/file2 myfile2.ln : 현재 위치에 file2의 바로가기를 생성한다.
원본 파일에 대한 정보가 담긴 작은 특수 파일이며 하드 링크와 달리 원본과 구별된다.
ln -s file1 file2 : file1의 심볼릭 링크를 file2로 만든다.
ln -s 원본 링크
하드링크의 개수는 변하지 않고 1이다.
file1의 inode, 내용file2의 inode, 파일내용이 새로 만들어진다.
이때 file2의 내용이 file1을 가리키고 있다.
내용이 다른 파일을 가리키기만 하면 되므로 file2의 용량이 매우 작다.
ls -l로 확인하면 file2 → file1으로 화살표로 표시한다.
삭제
rm file2 : 원본에는 영향을 주지 않고 하드링크 개수도 변하지 않는다.