리눅스 쉘 스크립트 마스터
리눅스 쉘 스크립트 마스터
수강정보
(5개의 수강평)
122명의 수강생
스킬태그 #Linux, #Shell Script
27% 할인, 18시간 남음
40,150원
55,000원
지식공유자 : 홍영기
101회 수업 · 총 6시간 8분 수업
기간 : 평생 무제한 시청
수료증 : 발급 강의
수강 난이도 : 초급

이 강의는

본 강의는 리눅스의 까다로운 배쉬 쉘 문법 중 인용부호와 파이프, 리다이렉션을 속 시원하게 풀이해드리고 쉘 코딩의 절차적인 방법을 제시해 드립니다. 이를통해 리눅스 환경의 개발에 대한 강한 자신감을 갖는 기회로 만들어보세요

리눅스 쉘 스크립트(Linux Shell Script)
서버를 자동화하고, 막강한 기능을 경험하세요.

현대 컴퓨팅 환경에서 리눅스는 윈도우즈와 함께 중요한 메인스트림이 된 지 오래되었습니다.

리눅스는 더 이상 해커들의 전유물이 아니며 많은 개발자들이 리눅스 환경에서의 개발을 요구받고 있습니다. 인공지능, 자율주행, 머신러닝, 빅데이터, 클라우드 컴퓨팅, 사물인터넷 등 미래 기술의 총아들이 모두 리눅스 환경의 기반 위에서 만들어지고 있습니다.

공개되는 수많은 오픈 소스는 리눅스에서 먼저 테스트되고 지원됩니다.

🎨 리눅스 쉘은 개발자들에게 스위스 아미 나이프와 같은 것

서버 측 JavaScript, Python 및 기타 언어의 경우 개발 환경은 실제로 입니다. 많은 엔지니어들은 작업할 때 간단한 명령 줄 도구에 직접 액세스하는 것이 매우 효율적일 수 있다는 사실을 깨달았습니다. 현대 프로그래밍 언어들을 이용하기 위해 쉘 기반에서 종속성 관리 및 패키징 등을 관리할 수 있습니다. 리눅스 셸

은 복잡한 구성 요소를 설치하지 않고도 누구나 액세스할 수 있는 공통 환경 그리고 인터페이스를 사용자에게 제공합니다.

프로그래밍 언어와 개발자 도구의 다양성은 증가했지만, 여러 면에서 엔지니어가 사용하는 운영 플랫폼은 오히려 단순화되었습니다.

🎨 많은 기업 고객들이 Unix에서 Linux 플랫폼으로 이동했습니다

엔지니어들은 Docker를 통해 운영 환경이 훨씬 더 균일하고 Linux와 비슷할 것으로 기대합니다.

컨테이너화 된 작업의 경우 Linux 및 셸 기술이 중요합니다. 이것은 쉘에 대한 관심도 증가를 불러왔습니다.
오픈 소스의 경우 Linux의 컨테이너에서 실행되도록 빌드되는 경우가 많습니다.
쉘은 Linux 시스템을 관리하는 가장 일반적인 방법으로써 지금에 이르고 있으며, 많은 개발자들이 Linux 시스템을 운영 환경으로 표준화함으로써 쉘 기술이 더욱 중요해졌습니다.

현대 소프트웨어 개발 방법의 주요 흐름인 DevOps는 한 그룹이 기능 개발에 집중하고 다른 그룹이 안정적인 소프트웨어 운영에 중점을 두는 대신 단일 그룹이 이 두 가지를 모두 담당합니다.

🎨 자동화는 셸 스크립팅과 밀접하게 연결되어 있습니다.

자동화가 필요한 많은 작업은 쉘 스크립트를 사용하여 쉽게 처리할 수 있습니다. 스크립팅할 수 없는 경우 자동화할 수 없으며 점점 더 복잡해지는 시스템을 운용하려면 자동화가 필수적으로 필요합니다

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

다만, MacOS 환경이라는 것이 함정! :)

🎨 이번 강의는 이상과 같은 취지에 의해 제작되었습니다

10년 이상 쉘 스크립트를 사용하면서 어떤 것이 어렵고 무엇이 중요한 부분인지 잘 알고 있습니다.

리눅스의 쉘 스크립트를 잘하려면 두 가지 요소가 필요합니다.

첫째, 쉘의 문법을 숙지하고 있어야 합니다.
특수문자는 사용되는 위치마다 다른 기능으로 사용될 수 있습니다. 예를 들어 리다이렉션 기호 < 와 >는 테스트 문에서도 사용됩니다.
또한, 인용부호 같은 경우 작은따옴표와 큰 따옴표는 서로 구별해서 써야 하는데, 명령어와 연동될 때 상당히 주의를 기울이지 않으면 실패하기 쉽습니다.

둘째, 리눅스의 20~30개 정도의 필수 명령어를 옵션까지 기억하고 있어야 합니다.
이것이 필요한 이유는 파이프 기호를 이용해서 신속하게 워크플로우를 구성할 때 적합한 명령어가 생각이 나야 사용할 수 있을 것입니다. cut을 사용할지 tr을 사용할지, 중괄호 확장을 사용할지 즉각적으로 판단해야 하거든요.

리눅스 입문자들도 최대한 이해하기 쉽도록 신경 써서 영상을 만들었습니다.
수업을 무리없이 잘 따라갈 수 있도록 기초적인 용어들은 풍부한 자막 시스템과 애니메이션을 이용하여 설명을 해드리고 있습니다.

🎨 이 영상물의 특징은 다음과 같습니다

특징 1. 모바일 스마트 기기에서도 잘 보일 수 있도록 영상을 만들었습니다.

특징 2. 검은색 배경과 큰 폰트 사이즈를 사용해서 눈이 아프지 않도록 배려하였습니다.

특징 3. 영상 속의 DRILL(연습문제)을 이용해서 수강자가 직접 스크립트를 만들어 볼 수 있습니다.

특징 4. 애니메이션을 활용하여 학습의 집중도를 높였습니다.

이런 걸 배워요

  • 쉘에서 사용하는 모든 특수 문자의 역할을 이해
  • 작은따옴표와 큰따옴표의 차이를 포함한 인용부호의 올바른 사용
  • find 와 xargs
  • 쉘변수와 환경변수의 차이를 이해하기
  • 리눅스 필수 명령어(tr, sort, seq, cat, hexdump, cut, uniq, tee, echo, printf, read, wc, comm)
  • EXPORT를 목적에 맞게 올바르게 사용하기
  • 함수와 앨리아스의 차이점
  • 자동화 스크립팅 예약 만들기
  • 스크립트를 실행하는 4가지 방법
  • 스크립트의 효율적인 디버깅 방법 3가지
  • 히어도큐먼트와 히어스트링
  • eval
  • 정규 표현식 과 grep, sed
  • 해커처럼 BASH 쉘 스크립트 작성하기

도움 되는 분들

  • 리눅스 서버 관리자
  • 인공지능및 자율주행을 연구하는 분
  • 클라우드 컴퓨팅 기반의 개발자
  • 임베디드 리눅스 개발자
  • 해킹을 원하는 사람
  • 리눅스를 잘 다루고 싶은 분
  • Mac에서 자동화 프로그램을 만들고 싶은 분
  • NAS서버, cpdf, imagemagick, ffmpeg 등의 워크플로우 작성이 필요한 분

선수 지식

  • 리눅스 기초 명령어

공개 일자

2020년 9월 04일 (마지막 업데이트 일자 : 2020년 9월 04일)

지식공유자 소개

인하대학교 공과대학에서 전자공학 학사 학위를 받았으며 임베디드 시스템용 소프트웨어 개발자로써 수년간의 경력을 쌓았습니다. 임베디드 시스템 및 프로그래밍을 위한 전문 강사로도 활동 중입니다 아이폰 3GS 등장과 같은 시기에 맥(북)에 입문하였고, 그때부터 맥(북) 자동화에 관심을 갖게 되었습니다 '맥(북)에서 사용할 수 있는 시리 리모트', '키보드마에스트로를 이용한 구글번역기' 같은 오픈 소스를 깃허브(https://github.com/guileschool) 에 두고 개발 및 유지보수하고 있습니다. 오픈 소스 하드웨어 '비글본블랙' 에도 많은 관심을 가지고 있습니다 맥(북) 자동화를 이용하여 생산성을 높일 수 있는 컴퓨터를 사용하는 모든 분야에 관심을 가지고 있고, 이를 필요로 하는 사람들을 돕고 있습니다.

5.0
5개의 수강평
default_profile.png
Generalist 26일 전
개인적으로 리눅스를 운영하는 사람이라면 반드시 알아야 할 내용이라고 생각합니다. 전반적으로 폰트 크기나, 애니메이션 사용 등이 수업에 더욱 잘 집중이 되도록 도왔으며, 수강생에 대한 배려로 느껴져 감동이었습니다.
홍영기

홍영기 26일 전
Generalist님! 도움이 되셨다니 오히려 제가 더 감동입니다. 앞으로 더 나은 영상으로 찾아뵙겠습니다~

default_profile.png
최영호 2달 전
완강했습니다. 원래 부분적으로 알고 있었는데, 강의듣고 이것저것 많이 배우고 보충해 갑니다. 감사합니다.
홍영기

홍영기 2달 전
영호님! 끝까지 완주하신 것 정말 축하드립니다. 첫번째 수강 후기라 저에게는 또한 너무 소중하네요.

default_profile.png
likebat 2일 전
잘 들었습니다!
홍영기

홍영기 2일 전
likebat님!! 댓글 남겨주셔서 감솨드리고요. 즐거운 리눅스 라이프되세요^^~

교육과정

모두 펼치기 101 강의 6시간 8분
섹션 0. 리눅스 기본
8 강의 31 : 54
시작하기
03 : 07
강의 실습 예제 다운로드
리눅스 파일명 규칙
01 : 10
자동완성 기능
02 : 18
리눅스 디렉토리 구조
07 : 38
경로변경(절대경로와 상대경로)
04 : 51
파일의 접근권한
07 : 04
심볼릭링크와 하드링크
05 : 46
섹션 1. 쉘 기초 명령어
13 강의 50 : 02
echo의 사용법
07 : 03
명령의 구조
02 : 14
glob와 공백
02 : 23
인용문
02 : 22
[..] 와 테스트
03 : 13
명령어(wc)
02 : 20
명령어(tail)
04 : 29
별칭(alias)
06 : 04
명령어(pushd/popd)
02 : 51
명령어(printf)
02 : 43
명령어(read)
04 : 32
while..do..done
04 : 09
실행파일을 사용하는 방법 4가지
05 : 39
섹션 2. 쉘 스크립트
18 강의 61 : 05
쉘 스크립트란 무엇입니까?
02 : 59
스크립트 작성방법
04 : 39
DOS스타일의 줄끝
04 : 07
스크립트의 실행방법 4가지
01 : 36
특수문자 종류 미리보기
09 : 14
쉘 변수
01 : 30
파라미터 대체와 인용부호
02 : 46
특수 매개 변수
07 : 01
환경 변수
02 : 56
declare
03 : 40
매개변수 확장(PE)
06 : 19
globe 패턴
01 : 32
명령어(tr)
04 : 23
명령어(cut)
03 : 04
확장 glob
02 : 39
쉘 스크립트 문법 검사 도구
00 : 44
컬러(color) 텍스트
01 : 46
실습(DRILL)
00 : 10
섹션 3. 정규 표현식과 검색도구
13 강의 72 : 12
정규 표현식
20 : 11
정규 표현식 비교(if..fi)
02 : 55
실습(DRILL)
00 : 07
명령어(grep)
08 : 31
명령어(sed)
11 : 40
중괄호 확장
05 : 27
명령 대체
04 : 09
산술 확장
05 : 06
exit와 종료상태
02 : 29
논리 연산 && 와 ||
02 : 51
로그인쉘과 비 로그인쉘
01 : 02
명령분리자
03 : 26
인라인그룹
04 : 18
섹션 4. 비교와 루프문
20 강의 49 : 12
조건문(if..else.fi)
02 : 26
[..] vs [[..]]
05 : 24
인용부호 사용시 주의사항
01 : 57
비교 메타 문자열
11 : 11
실습(DRILL)
00 : 54
while 루프
03 : 51
실습(DRILL)
00 : 04
for..in 루프
01 : 21
실습(DRILL)
02 : 04
for((;;)) 루프
01 : 16
명령어(date)
01 : 00
실습(DRILL)
00 : 10
루프문과 glob
04 : 57
실습(DRILL)
00 : 13
명령어(seq)
01 : 09
실습(DRILL)
00 : 17
case
02 : 22
실습(DRILL)
00 : 45
getopts
03 : 32
select
04 : 19
섹션 5. 배열
5 강의 15 : 09
배열
01 : 46
배열과 glob 그리고 루프문
04 : 23
실습(DRILL)
01 : 16
find 와 -print0
03 : 53
명령어(find)
03 : 51
섹션 6. 입출력과 환경변수
6 강의 24 : 38
입력과 출력
01 : 08
위치 매개 변수
02 : 02
환경변수와 export
06 : 37
변수의 범위(스코프)
06 : 39
파일 디스크립터
02 : 04
리다이렉션
06 : 08
섹션 7. 유용한 유틸리티
9 강의 30 : 22
커맨드라인포토샵(imagemagick)
02 : 46
명령어(nohup)
03 : 55
명령어(md5sum)
04 : 12
명령어(tee)
02 : 26
히어독(HEREDOC)
10 : 19
사례분석
01 : 23
히어스트링(HERESTRING)
02 : 03
명령어(uniq)
01 : 12
명령어(sort)
02 : 06
섹션 8. 파이프와 작업제어
9 강의 33 : 47
파이프
05 : 07
프로세스 대체
06 : 11
서브 쉘
04 : 12
함수
03 : 36
명령어(shift)
01 : 17
source 와 bashrc
01 : 50
작업제어
03 : 33
디버깅
02 : 52
명령어(cron)
05 : 09
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스