2022. 1. 7. 01:02ㆍLinux
해당 강의는 생활코딩 이고잉 님의 강의로 공부한 내용입니다.
--help 그리고 man
--help와 man 둘다 Linux 사용시 잘 모르겠는 명령어나 옵션을 보기 위해 사용합니다.
--help와 man의 차이점은 창의 크기라고 생각하시면 되겠습니다.
--help (터미널 안에서 보여줌 다음 명령어 사용 가능)
mkdir --help
간단한 명령어의 경우 내용이 없을 수 있습니다.
man (터미널 전체에서 명령어를 설명하는 창으로 덮힘. q를 눌러야 빠져나옴)
--help에 비해 상세한 도움말을 많이 제공해줍니다.
man mkdir
※ - 그리고 --의 차이점
한 번 짚고 넘어가면 좋을 것 같습니다.
- 약어 & -- 단어 단위의 옵션
쉽게 말해 - 는 축약형이고, --는 풀네임을 써줘야 합니다.
ls -a 와 ls --all 은 같은 의미입니다.
ls는 디렉토리 내 파일을 출력하되 -a가 붙으면 디렉토리 내 숨긴 파일까지 모두 나타난다는 뜻이죠.
(단순 ls만 한다면 숨김 파일은 안보입니다)
덧붙여, ls -alS는 디렉토리 내 숨김 파일까지 모두 나타냄 + S는 파일 크기를 나타냅니다.
위에서 노란색으로 표시된 4096,569,190,79,32,0,0 이 파일 크기입니다.
mv(move) 파일 이동하기 그리고 파일 이름 변경하기
현재 dir1 디렉토리 내에 mv.txt 파일이 있습니다.
mv.txt를 mv2.txt로 바꾸기 위해서는 아래와 같이 입력이 필요합니다.
mv2.txt로 정상적으로 이름이 바뀌었습니다. 파일의 이름이 바뀌는 것도 mv의 한 예시입니다.
mv 현재파일경로 이동할경로
명령어의 버전 확인하기
해당 명령어 --version
명령어 하나하나 다 글쓴이가 다르네요..!
mkdir -p 여러개 디렉토리 만들기
기본적으로 mkdir은 1개의 디렉토리를 생성합니다.
하지만 좌르륵 디렉토리를 만들고 싶다면? -p 옵션을 사용하면 됩니다.
만약에 dir4만 만들고 싶은데 자동적으로 dir1부터 dir4까지 만들고 싶다면
-p 옵션을 사용하면 됩니다. dir1~dir3이 없는 것을 감안하여 차례대로 부모 디렉토리를 만들어줍니다.
mkdir -p dir1/dir2/dir3/dir4
존재하는 에러가 없는 한, 필요한 대로 부모 디렉토리를 만들어준다.
만약에 -p 옵션을 주지 않고 여러 디렉토리를 만드려고 한다면 아래와 같은 오류가 발생합니다.
Sudo
dir5의 하위 디렉토리로 dir6까지 생성되었습니다.
sudo mkdir -p dir5/dir6
그렇다면, 위에서 sudo는 무엇인가요?
sudo는 super user do = 슈퍼유저가 하는 일입니다.
슈퍼유저는 최상위 디렉토리, 즉 root죠?
저번 포스팅에서도 Linux는 파일을 효율적으로 관리하기 위해 디렉토리를 사용하는데
이 디렉토리는 계층구조(tree형태)를 가지고 있습니다.
전체 파일을 용도에 따라 계층 디렉토리로 구분하고 관리하여 이것을 파일 시스템이라고 합니다.
제가 sudo를 사용해서 디렉토리를 생성한 이유는 아래와 같습니다.
글과는 다른 예제입니다.
디렉토리를 생성하려고 했는데 Permission denied 라는 에러가 출력됩니다.
리눅스를 사용하다보면, "permission denied"라는 에러를 마주하게 됩니다.
유저가 파일을 수정할 권한이 없기 때문에 이 에러가 발생합니다.
Root(/)는 모든 파일과 폴더(디렉토리)에 접근할 수 있으며 어떤 파일이든 수정할 수 있습니다.
그러나 다른 유저는 그러한 수정을 할 때는 허락이 되지 않을 것입니다.
Root나 Sudo 권한을 가진 유저만 파일과 폴더(디렉토리)에 대한 접근 권한을 변경할 수 있다는 것을 기억
저도 디렉토리를 생성할 접근 권한이 없었기 때문에 명령어 앞에 sudo를 붙여주고
dir5/dir6 디렉토리를 생성했습니다.
틀린 점이 있다면 언제든지 지적 환영입니다 !
읽어주셔서 감사합니다.
'Linux' 카테고리의 다른 글
220411 Linux) 리눅스 디렉토리 구조 (0) | 2022.04.12 |
---|---|
Linux 생활코딩 - I/O Redirection (output) (0) | 2022.01.20 |
Linux 생활코딩 (5) wget,git (0) | 2022.01.10 |
Linux 생활코딩 (4) nano,apt,yum (0) | 2022.01.07 |
Linux 생활코딩 (1) 역사 + 간단한 명령어 (0) | 2022.01.03 |