리눅스 쉘 스크립트 마스터 - goormEDU

리눅스 쉘 스크립트 마스터

리눅스는 까다롭다? 리눅스, 자신있게 사용하세요.

Lecture Introduction
Difficulty
Easy
Category
Programming - Devops
Tag
리눅스, Linux, 쉘스크립트
Target Audience
- 인공지능 및 자율주행을 연구하시는 분
- 클라우드 컴퓨팅 기술을 기반으로 하는 개발자
- 임베디드 리눅스 개발자
- 리눅스 서버 관리자
- 해킹을 위해 리눅스를 배우셔야 하는 분
- Mac에서 자동화 프로그램을 만들고 싶은 분
🐧리눅스를 공부해야 한다면 꼭 선택해야 할 <리눅스 쉘 스크립트 마스터>



리눅스 쉘 스크립트를 잘하려면?



첫째, 쉘의 문법을 숙지하고 있어야 합니다

예를 들면, 특수문자는 사용되는 위치마다
다른 용도로 사용되기에 주의해야 합니다

'<'와 '>'는 리다이렉션 기호이지만
테스트문에서도 사용하고,
인용부호 같은 경우 역시 작은따옴표와 큰 따옴표를
구별해주어야 하는데, 
명령어와 연동할 때
주의를 기울이지 않으면 오류가 생기기 쉽습니다



둘째, 리눅스의 20~30개 정도의 필수 명령어를
옵션까지 기억하고 있어야 합니다

이는 적합한 명령어를 잘 기억해두어야 파이프 기호를
이용하여 워크플로우를 빨리 구성할 수 있기 때문이죠

cut을 사용할지 tr을 사용할지, 아니면 중괄호 확장을
사용할지 즉각적으로 판단해야 하거든요



왜 리눅스 쉘 스크립트 마스터일까?



입문자도 최대한 이해하기 쉽도록 신경썼습니다

수업을 무리없이 잘 따라갈 수 있도록 풍부한
자막 시스템과 애니메이션으로 기초 용어들을
설명한 뒤, 스크립트 작성 능력 향상을 위해
DRILL이라는 연습 문제를 함께 풀어볼 겁니다



높은 가독성을 위해 최대한 신경썼습니다

모바일 스마트 기기에서도 잘 보일 수 있도록
영상을 검토하고 수정했으며,
검은색 배경과 큰 폰트 사이즈를 이용해
코드 또한 쉽게 볼 수 있도록 노력했습니다



그런데...
리눅스, 왜 배워야 하냐구요?


리눅스는 해커들의 전유물이다👀? 현대 컴퓨팅 환경에서 리눅스는 윈도우즈와 함께 중요한 메인스트림이 된지 오래입니다.



리눅스 쉘 == 포켓 나이프


여러분보다 먼저 개발 필드에서 일해온 수많은
엔지니어들은 
작업할 때 간단한 명령 줄 도구에
직접 액세스하는 것
이 
매우 효율적임을 깨달았죠

쉘은 복잡한 구성 요소를 설치할 필요 없이
사용자에게 
누구나 액세스할 수 있는 공통 환경과
인터페이스를 제공
합니다

JavaScript, Python 등 여러분이 사용해온
다양한 언어들을 
서버 개발에서 사용하고 싶다면
쉘(Shell)을 사용해야 하며,
쉘 기반에서 종속성 및 패키징을 관리해야 합니다

컴퓨터 언어와 개발자 도구의 다양성은 증가했지만,
엔지니어가 사용하는 운영 플랫폼들은
오히려 단순화되었습니다





데브옵스의 동반자, 리눅스


현대 소프트웨어 개발 방법의 주요 흐름인 DevOps
기능 개발과 소프트웨어 운영을 분리했던 것과 달리,
한 그룹에서 이 두 가지를 모두 담당하는 것을 뜻합니다

엔지니어들은 Devops의 대표 주자인 Docker를 통해
운영 환경이 더욱 균일해질 뿐만 아니라
점점 더 Linux와 비슷해질 것이라 얘기합니다

이와 같이 컨테이너화된 작업에서 Linux와 쉘 기술의
중요도와 함께 쉘에 대한 관심도 증가했습니다
오픈 소스는 Linux 컨테이너에서 실행되도록 빌드되는 경우가 많죠!

쉘은 과거부터 지금까지 Linux 시스템을 관리하는
가장 일반적인 방법으로, 많은 개발자들이 Linux
시스템을 운영 환경으로 표준화했기에
쉘 기술이 더욱 중요해졌습니다



자동화와 밀접한 쉘 스크립팅


자동화가 필요한 수많은 작업들은
쉘 스크립트를 사용하여 쉽게 처리할 수 있습니다

이 영상의 촬영 작업에도, 편집 작업에도
쉘 스크립트가 사용되었답니다🥳

스크립팅할 수 없는 경우는 자동화할 수 없지만,
점점 더 복잡해지는 시스템을 운용하는 분들이라면
자동화 기술은 필수로 익혀두셔야 합니다

다만, MacOS 환경이라는 것 주의하세요! :)









임베디드 시스템, 두려워하지 마세요


홍영기

인하대학교에서 전자공학 학사 학위를 받았으며
임베디드 시스템용 소프트웨어 개발자로써
수년간의 경력을 쌓았습니다

임베디드 시스템 및 프로그래밍을 위한
전문 강사
로도 활동 중입니다

아이폰 3GS 등장과 같은 시기에 맥(북)에 입문하였고,
그때부터 맥(북) 자동화에 관심을 갖게 되었습니다

'맥(북)에서 사용할 수 있는 시리 리모트',
'키보드마에스트로를 이용한 구글번역기' 같은
오픈 소스를 
깃허브에 공유했으며
개발 및 유지보수를 겸하고 있습니다

오픈 소스 하드웨어 '비글본블랙'에도
많은 관심을 가지고 있습니다

맥(북) 자동화를 이용하여 생산성을 높일 수 있는
컴퓨터를 사용하는 모든 분야에 관심을 가지고 있고,
이를 필요로 하는 사람들을 돕고 있습니다


 

all Icon made by Freepik from www.flaticon.com

Preview
Expand All
  • 01
    리눅스 기본
  • 심볼릭링크와 하드링크
  • 02
    쉘 기초 명령어
  • 명령어: pushd/popd
  • 03
    쉘 스크립트
  • DOS스타일의 줄끝
  • 04
    정규 표현식과 검색도구
  • 중괄호 확장
  • 06
    배열
  • find와 -print0
Curriculum
Expand All
  • 01
    리눅스 기본
  • 시작하기
    강의 실습 예제 다운로드
    리눅스 파일명 규칙
    자동완성 기능
    리눅스 디렉토리 구조
    경로변경(절대경로와 상대경로)
    파일의 접근권한
    심볼릭링크와 하드링크
  • 02
    쉘 기초 명령어
  • echo의 사용법
    명령의 구조
    glob와 공백
    인용문
    [..]와 테스트
    명령어: wc
    명령어: tail
    별칭: alias
    명령어: pushd/popd
    명령어: printf
    명령어: read
    while..do..done
    실행파일을 사용하는 방법 4가지
  • 03
    쉘 스크립트
  • 쉘 스크립트란 무엇입니까?
    스크립트 작성방법
    DOS스타일의 줄끝
    스크립트의 실행방법 4가지
    특수문자 종류 미리보기
    쉘 변수
    파라미터 대체와 인용부호
    특수 매개 변수
    환경 변수
    declare
    매개변수 확장(PE)
    globe 패턴
    명령어: tr
    명령어: cut
    확장 glob
    쉘 스크립트 문법 검사 도구
    컬러(color) 텍스트
    실습(DRILL)
  • 04
    정규 표현식과 검색도구
  • 정규 표현식
    정규 표현식 비교(if..fi)
    실습(DRILL)
    명령어: grep
    명령어: sed
    중괄호 확장
    명령 대체
    산술 확장
    exit와 종료상태
    논리 연산 &&와 ||
    로그인쉘과 비로그인쉘
    명령분리자
    인라인그룹
  • 05
    비교와 루프문
  • 조건문(if..else..fi)
    [..] vs [[..]]
    인용부호 사용시 주의사항
    비교 메타 문자열
    실습(DRILL)
    while 루프
    실습(DRILL)
    for..in 루프
    실습(DRILL)
    for((;;)) 루프
    명령어: data
    실습(DRILL)
    루프문과 glob
    실습(DRILL)
    명령어: seq
    실습(DRILL)
    case
    실습(DRILL)
    getopts
    select
  • 06
    배열
  • 배열
    배열과 glob 그리고 루프문
    실습(DRILL)
    find와 -print0
    명령어: find
  • 07
    입출력과 환경변수
  • 입력과 출력
    위치 매개 변수
    환경변수와 export
    변수의 범위(스코프)
    파일 디스크립터
    리다이렉션
  • 08
    유용한 유틸리티
  • 커맨트라인포토샵(imagemagick(
    명령어: nohup
    명령어: md5sum
    명령어: tee
    히어독(HEREDOC)
    사례분석
    히어스트링(HERESTRING)
    명령어: uniq
    명령어: sort
  • 09
    파이프와 작업제어
  • 파이프
    프로세스 대체
    서브 쉘
    함수
    명령어: shift
    source와 bashsrc
    작업제어
    디버깅
    명령어: cron
Instructor Introduction
user
홍영기Teacher

Lecture Reviews
  • No reviews have been written.

55,000


Average Rating
0.0
Difficulty
Easy
Lecture Period
Unlimited