
가짜연구소 9기 "AI를 잘 활용하는 개발자로 성장하기" 프로젝트에 참여하여 Datacamp의 "Machine Learning Engineer" 강의를 수강하고 해당 내용을 정리한 게시글입니다.
Datacamp Machine Learning 코스 페이지
이전까지의 강의들은 동영상 강의 + 연습문제 형태로 구성되었는데, 이번에는 모든 챕터가 Linux 관련 명령어 연습 문제로만 구성되어있다는 점이 독특했습니다.
직접 쉘에서 작업 하듯이 CLI와 유사한 UI에서 명령어를 입력하는 식인데, 강의로 보고 넘기는 것 보다 직접 명령어를 입력하면서 익히니까 훨씬 더 기억에 잘 남는 것 같습니다.
이번에는 간단하게 기존에 잘 사용하지 않아서 몰랐던 명령어나, 중요한 것 같은 내용만 간단히 정리하려고 합니다.
pwd (print working directory) : 현재 위치한 디렉토리 출력less : cat과 유사하게 파일의 내용을 출력하지만, 페이지 단위로 탐색할 수 있는 pager 제공:n - 다음 페이지 이동:p - 이전 페이지 이동:q - pager 나가기cat과 달리 pager를 나가면 이전 내용이 그대로 보인다는 장점이 있다man (manual) : 입력한 명령어의 매뉴얼을 출력cut : 파일의 내용을 구분자로 구분하여 column 단위 탐색 가능history : 지금까지 입력한 명령어를 출력!<번호>, !<명령어> 등을 통해 이전에 실행한 명령을 재사용 가능grep <PATTERNS> <FILES> : 파일, 출력 결과 등에서 패턴과 일치하는 줄의 내용만을 골라 출력man 참조)sort : 출력 결과를 정렬uniq : 출력 결과 중 인접한 중복 출력을 삭제sort를 함께 사용해 중복을 인접하게 만든 뒤 사용cut -d , -f 2 seasonal/winter.csv | grep -v Tooth | sort | uniqwc (world count) : 글자 수, 단어 수, 라인 수를 순서대로 출력-c, -w, -l로 한 종류만 출력하는 것도 가능값을 알 수 없는 불특정 문자를 나타내는 기호로, 패턴 매칭에 주로 사용
*: 임의의 개수의 문자와 일치?: 단일 문자와 일치[]: 대괄호 안의 문자 중 하나와 일치[]: 대괄호 안의 문자들을 제외{}: 중괄호 안의 콤마로 구분된 패턴 중 하나와 일치> : 왼쪽(명령어)의 출력 결과를 오른쪽(파일)에 저장| : 왼쪽(명령어)의 출력 결과를 오른쪽(명령어)의 입력으로 사용-d , -f 2 seasonal/summer.csv | grep -v Tooth리눅스에는 시스템을 제어하기 위해 다양한 환경 변수가 저장되어있어 전역 변수처럼 사용 가능
set : 등록된 모든 환경 변수와 시스템 함수를 검색export : 등록된 환경 변수만 검색= 기호를 이용하여 로컬 변수를 정의하여 사용할 수 있음환경 변수, 로컬 변수를 불러와서 사용하려면 $를 변수명 앞에 붙여서 호출 가능
for ...variable... in ...list... ; do ...body ; done 문법으로 반복문 사용for filetype in docx odt pdf ; do echo $filetype ; donebash 명령어와 함께 호출하여 내부의 명령을 순차적으로 실행 가능bash 명령어와 함께 인자를 전달하면, 내부에서 변수처럼 사용 가능$@ : 스크립트에 인자로 제공된 모든 파라미터를 지칭하는 기호$1, $2 .. 으로 n번째 파라미터를 지정 가능리눅스는 기본적으로 nano라는 텍스트 편집기를 제공하기 때문에 편한 단축키 몇 개를 알아 두는 것이 좋다.
man을 통해 모르는 명령어를 바로바로 배울 수 있다는 것을 알게 되었습니다.