본문 바로가기

자기개발/Linux

Linux 공부 1일차

IT계열쪽으로 취업을 하기 위해서 그리고 또 이왕이면 네트워크 쪽으로 가고 싶어서 리눅스를 공부하기 시작했습니다.

opentutorials.org/course/1

 

생활코딩

hello world 생활코딩의 세계에 오신 것을 환영합니다. 생활코딩은 일반인들에게 프로그래밍을 알려주는 무료 온라인, 오프라인 수업입니다.  어떻게 공부할 것인가를 생각해보기 전에 왜 프로그

opentutorials.org

잠깐 자바를 배우던 시절에 쉽게 이해할 수 있도록 알려주던 생활코딩(유튜브도 있음)채널을 통해서 배우기 시작했습니다.

혹시나 하고 들어가봤는데 있어서 기분이 좋았습니다.

codeonweb.com/

 

CodeOnWeb

Provides integrated environment with teaching, practicing and sharing. Lecture note with live running codes, communities for classes and study groups, Code sandbox to share your creatures. All on your web browser. Support Python 2/3, C/C++, PHP, Java, R, n

codeonweb.com

사이트에 있는 터미널 툴(?)을 이용하여 테스트를 했기 때문에 아무것도 없는 상태로 시작했습니다.

오늘은 우선 기본적인 명령어들에 대해서 배웠습니다.

 

 

ls입니다

ls는 현재 디렉토리 안에 들어있는 것들을 보여줍니다.

하지만 현재는 아무것도 없기 때문에 없습니다.

 

 

하지만 ls -a를 사용하면 숨겨져 있던 파일들이 드러납니다.

ls -a는 ls -all로도 사용할 수 있으며 숨겨진 파일까지 전부 볼 수 있습니다.

앞에 .이 붙어 있는 파일명의 경우에는 숨김파일이라는 것을 알 수 있습니다.

 

 

다음은 mkdir입니다 이것은 make directory의 약자로 폴더를 생성하는 명령어입니다

mkdir helloworld라고 되어있는데 그 옆에는 생성할 폴더의 이름입니다.

mkdir 생성할폴더이름 

그 뒤에 ls를 통해 파일을 확인하니 아까와는 달리 생긴 것을 확인할 수 있습니다.

 

 

다음은 다시 ls -a입니다

숨겨진 파일들과는 다르게 helloworld폴더만 앞에 .이 없다는 것을 알 수 있습니다.

 

 

다음은 ls -l입니다.

이건 아마 ls -list의 약자로 알고 있습니다.

상세보기가 가능합니다 다른건 아직 모르겠지만 제일 앞이 d로 시작하는 것들은 폴더라고 합니다 뒤에는 생성 날짜와 시간이 적혀 있습니다.

 

 

그리고 이 둘을 붙여 쓸 수 있는 ls -al 혹은 ls -la입니다. 순서는 전혀 상관없으며 숨겨진 모든 파일까지 포함해서 상세보기가 가능합니다.

 

 

ls --help입니다. 이것은 ls로 할 수 있는 부가적인 기능?을 전부 확인할 수 있습니다. 

하지만 영어로 되어 있기 때문에 조금 불편할 수도 있어서 검색을 먼저 하고 잘 모르겠다면 찾아보면서 번역을 하는게 좋을 것 같습니다.

 

 

다음은 man ls입니다.

제가 사용하는 툴에서는 작동을 안해서 동영상에서 캡쳐를 해왔습니다. 

출처: opentutorials.org/course/2598/14172

 

--help 와 man - 생활코딩

수업소개 리눅스의 명령어 사용법을 확인하는 방법을 알아봅니다. 강의

opentutorials.org

ls --help와는 다르게 인터페이스가 메뉴얼 개념으로 바뀌어버립니다.

 

 

그리고 mkdir을 효과적으로 사용하는 방법인데 부모디렉토리를 생성해서 하위까지 한번에 만들어내는겁니다.

사실 무슨 얘기인지는 잘 모르겠지만 상위디렉토리를 만들 수 있다는 개념으로 생각하고 있습니다.

mkdir -p 제일 밖에 있는 폴더/그 안/그 안/제일 안쪽에 있는 폴더

함께 나온 cd는 cd 폴더이름을 하면 그 폴더로 이동되며 작업하는 공간이 바뀝니다. 

원래는 명령어 치는 곳 옆에 표기가 되어야하는데 여기서는 표기가 안돼서 일일이 ls를 사용해 확인했습니다.

 

 

이번엔 한 번에 다수의 디렉토리를 생성하는 방법입니다. 

아주 간단하게 mkdir 폴더이름 폴더이름을 적으시면 됩니다.

원래는 없던 bye와 good디렉토리가 생성된 것을 확인할 수 있습니다.

 

 

이건 저도 잘 모르겠는데 touch의 동작은 원래 이것은 아니지만 빈파일을 만들 수 있다며 이것으로 진행했습니다.

원래의 사용용도는 파일의 정보를 최신화(ls -a를 했을 경우에 보여지는 시각을 현재시각으로)할 때 이용한다고 합니다.

그 파일명을 가진 파일이 없을 경우에는 빈파일을 생성합니다.

 

 

다음은 cp입니다 cp는 copy입니다. 복사를 하는 것이죠 따로 붙여넣기를 하는 것이 아니라 

cp 복사할파일 복사한파일을붙여넣기할곳 이렇게해서 바로 붙여넣기를 진행합니다.

내용에서 확인할 수 있듯이 dir4안에 집어 넣었고 들어간 ls로 dir4를 확인해보니 emptyfile.txt가 들어있는 것을 확인할 수 있습니다.

그리고 cp로 복사를 하면서 바로 파일이름을 변경할 수 있는데 들어갈 디렉토리 대신에 변경할 이름을 넣어주면 됩니다.

cp 복사할파일 복사후바뀔이름

 

 

다음은 mv입니다 파일을 이동하는 것이죠

복사와는 달리 원본을 남기지 않고 이동합니다.

mv 이동할파일 이동된파일

원본은 남기지 않고 파일이 이동된 것을 볼 수 있습니다.

 

 

이동하면서 이름을 바꾸는 방법도 있습니다.

mv를 이용하는데 mv 이동할파일 이동된파일에다가 도착할 이름을 바꿔주면 됩니다.

그런데 위에서 dir1/mv.txt dir2/trans.txt가 실행이 안돼서 cd로 디렉토리 안으로 들어가 실행을 했는데 왜 안된것인지 조금 궁금한데 이 점 아시는 분이 있다면 댓글 남겨주신다면 정말 많은 도움이 될 것 같습니다.

 

 

다음에 배운 것은 sudo입니다 super user do의 줄임말이라고 합니다.

제가 사용하는 툴에서는 역시 작동하지 않아서 영상에서 캡쳐해왔습니다. 출처는 위와 같습니다.

처음에 apt-get install git라고 명령어를 적어 git이라는 프로그램을 다운로드 하려고합니다.

하지만 권한이 없다며 are you root?하고 물어보면서 실행이 되지 않는데

밑에서 sudo를 앞에 넣어서 진행을 하니까 됩니다. 권한이 주어진거죠

 

 

다음은 나노입니다. 편집 툴 종류 중 하나라고 하고 이외에는 vi라는 것이 있는데 nano는 보통 초급자에게 vi는 중상급자들에게 많이 쓰인다고 합니다.

아무튼 저렇게 nano라고 입력한 뒤에 엔터를 치시면

 

 

이런 화면으로 진입할텐데 인터페이스가 생겨서 뭔가 생소한 느낌이 듭니다.

밑에 인터페이스에서 보면 ^으로 표기되어 있는데 컨트롤을 뜻한다고 합니다.

^G는 말대로 도움말들을 볼 수 있고

^O는 작성을 끝낼 수 있습니다. 그리고 저장할지 안할지를 고릅니다.

^W는 내용 중에서 원하는 부분을 검색할 수 있으며

^K는 오려내기라고 생각하시면 됩니다 하지만 복사 붙여넣기가 따로 없기 때문에 복사 붙여넣기 용도로 쓰이빚다.

^U를 이용해서 붙여넣기를 합니다. 

^X는 작성을 종료하고 나가는겁니다. 작성을 종료하는 O랑 조금 다른 것 같긴한데 뭐가 다른지는 잘 모르겠습니다. 아마도 프로그램을 종료하는게 관건 아닐까 생각합니다.

 

 

nano 수정할파일이름

이렇게 하면 기존에 있는 파일의 내용을 수정할 수 있습니다.

 

 

이번에는 리눅스에서 다운로드를 받는 방법입니다.

wget 다운받을주소

이렇게 다운로드가 쉽게 됩니다.

위에서 나온 것처럼 index.html로 저장이 됐습니다.

 

 

제일 위에 index.html이 있고 그 밑에는 이제 다운로드를 받는 파일이름을 다른이름으로 저장하는 방법입니다

wget -O 저장할이름 다운받을주소

이렇게 간단하게 이름까지 바꿔서 저장이 가능합니다!

git에 관한 것도 배웠는데 여기에 다루기에는 조금 애매한 부분이 있는 것 같아서 올리지 않겠습니다.

그래도 github사이트를 통해서 많은 것들을 clone화해서 사용하는 방법이 있다고 하는데요

또 우연히 발견했는데 명령어가 안먹는 상황이 생기고나하면 컨트롤c 혹은 컨트롤z를 됩니다 둘의 차이점은 종료냐 정지냐 입니다.
오늘은 처음이라서 아직은 잘 모르겠지만 천천히 조금씩이라도 매일 배워나갈 생각입니다.

 

'자기개발 > Linux' 카테고리의 다른 글

TCP 3-Way HandShaking과 4-Way HandShaking  (0) 2021.03.31
Linux 공부 5일차  (0) 2021.01.30
Linux 공부 4일차  (0) 2021.01.24
Linux 공부 3일차  (0) 2021.01.23
Linux 공부 2일차  (0) 2021.01.22