카테고리 없음

길벗 학습단 13기 - 리눅스 - 3주차 학습후기

Beyonder 2025. 3. 3. 22:32

 

 

코딩 자율학습 리눅스 입문 with 우분투 - 예스24

기초부터 탄탄하게!실습하며 배우는 리눅스 입문서리눅스에 처음 도전하는 분을 위한 입문용 책이다. 따라 하기 쉽도록 입문자 눈높이에서 이해하기 쉽게 설명한다. 리눅스를 처음 접할 때 어

www.yes24.com

 

3주차
11일
12일
13일
14일
15일
목차
9장 Bash: 조건문과 테스트 연산자
9.1 변수의 기초
9.2 조건문과 테스트 연산자
_9.2.1 if 문의 형식
~_9.2.3 [ 명령어
9장 Bash: 조건문과 테스트 연산자
9.2 조건문과 테스트 연산자
_9.2.4 문자열 테스트 연산자
~_9.2.8 case 문
10장 Bash: 반복문, 함수, 변수, 배열, 쿼팅
10.1 반복문
10.2 함수
10장 Bash: 반복문, 함수, 변수, 배열, 쿼팅
10.3 변수 심화
10.4 배열
10.5 쿼팅
11장 Bash: 확장과 셸 옵션
11.1 확장

 

 

Part 2 리눅스 활용하기

9장 Bash: 조건문과 테스트 연산자

9.1 변수의 기초

9.1.1 변수에 값 저장

변수_이름=값

 

9.1.2 변수 사용

 

9.1.3 변수의 데이터 타입

let "표현식"
expr 표현식

 

9.2 조건문과 테스트 연산자

9.2.1 if 문의 형식

if 조건
then
  명령
fi

 

조건문의 중첩

if 조건1
then
  명령1
else
  if 조건2
  then
    명령2
  else
    명령3
  fi
fi

 

elif 키워드 사용

if 조건1
then
  명령1
elif 조건2
then
  명령2
else
  명령3
fi

 

세미콜론(;)을 써서 조금 짧게 줄인 형식

if 조건; then
  명령
fi

if 조건; then
  명령1
else
  명령2
fi

if 조건; then
  명령1
elif 조건2; then
  명령2
else
  명령3
fi

 

9.2.2  if 문의 조건

 

9.2.3 [ 명령어

싱글 브래킷

if [표현식]; then
fi

더블브래킷은 더 많은 기능을 제공하나 POSIX 표준이 아니라 모든 유닉스 기반 호환보장 없음.  따라서 싱글브래킷을 추천.

 

9.2.4 문자열 테스트 연산자

 

9.2.5 산술 테스트 연산자

 

9.2.6 파일 테스트 연산자

 

9.2.7 논리 테스트 연산자

  • AND
  • OR
  • NOT

 더블 브래킷에서 논리 테스트 연산자 사용

  • &&:  AND  연산
  • ||: OR 연산
  • !: NOT

9.2.8 case 문

case 표현식 in
  패턴1)
    명령1
      ;;
  패턴2)
     명령2
      ;;
  *)
    기본 명령
      ;;
esac

 

10장 Bash: 반복문, 함수, 변수, 배열, 쿼팅

10.1 반복문

10.1. for 문

for 변수 in 목폭
do
  명령
done
for 변수 in 목록; do 명령; done

 

C 언어 스타일 형식

이중 괄호 표현식

초기식: for 문을 시작하면서 한번만 실행

조건식: for 문을 언제까지 반복할지 판단

증감식: for 문을 반복할 때마다 실행할 표현식

for ((초기식; 조건식; 증감식))
do
  명령
done

 

10.1.2 while 문

조건이 참인 동안 명령을 반복해서 실행

while 조건식
do
  명령
done
while 조건식; do 명령; done

 

10.1.3 until 문

조건이 거짓인 동안 명령을 반복해서 실행

until 조건식
do
  명령
done
until 조건식; do 명령; done

 

10.1.4 break와 continue

제어 흐름을 변경하는 명령어

break: 반복문을 중단하고 밖으로 빠져나감

break [n]

 

continue: 반복문에서 현재 반복을 중단하고 다름 반복으로 넘어감

continue [n]

 

10.2 함수

함수: 특정 작업을 수행하는 코드 블론

 

10.2.1 함수의 선언과 사용

# 함수 선언
함수_이름( )  # 선언부
{
  ...
}
function 함수_이름 # 선언부
{
  ...
}
function 함수_이름 # 선언부
{
  ...
}
#함수 사용
함수_이름  # 함수 호출

 

 

10.2.2 매개변수가 있는 함수

 

10.2.3 함수의 반환과 출력값

 

10.3 변수 심화

10.3.1 특수 매개변수

위치매개변수

특수 매개변수

  • $#
  • $0
  • $*와 $@
  • $?
  • $$

10.3.2 변수의 범위

 

10.3.3 변수의  export

 

10.3.4 환경변수

  • 실습: PATH 환경변수 변경
  • 실습: 프롬프트 모양 변경

10.4 배열

10.4.1 인덱스 배열

declare -a 변수
변수=( )
변수=("요소1" "요소2" ... "요소n"

 

10.4.2 연관 배열

declare -A 변수
변수[키]=값
unset 변수[키]
${변수[키]}
${변수[@]}
${!변수[@]}

 

10.5 쿼팅

문자열이나 변수를 큰따옴표나 작은따옴표로 감싸주는 것.  Bash에서 문자열을 제어하는 데 사용하는 중요 개념.  특수 문자의 의미를 변경하거나 제거해 해석 방식을 조정.  Bash에서는 싱글 쿼트, 더블 쿼트, 이스케이프 문자를 주로 사용.

 

10.5.1 싱글 쿼트

문자가 다른 의미로 확장되지 않는다는 의미

 

10.5.2 더블 쿼트

  • 공백 포함 문자열을 하나의 문자열로 처리
  • 문자열 내 ${변수} 형식으로 변수의 값을 사용(참조)할 수 있음
  • 문자열 내애서 $( )나 백틱(`)을 사용해 명령어 치환
  • \n과 같이 백슬래시로 시작하는 특수 문자 사용
  • *와 ?를 파일 이름으로 확장하지 않음

10.5.3 이스케이프 문자

 

11장 Bash: 확장과 셸 옵션

확장: 명령을 해석하고 실행하기 전 명령에 포함되 ㄴ문자열의 일부를 다른 어떤 것으로 변형하는 것을 의미

 

11.1 확장

셸이 명령을 해석하고 실행하기 전에 명령에 포함된 문자열, 수, 와일드카드 패턴 등을 변환하는 과정.

 

11.1.1 중괄화 확장

중괄호({})를 사용해 문자열 시퀀스나 조합을 생성

 

11.1.2 틸데 확장

 

11.1.3 명령어 치환

$( )로 둘러싸인 명령어를 실행하고, 그 결과흘 현재 셸의 명령어나 스크립트에서 사용할 수 있게 함.

 

11.1.4 산술 확장

$(())나 이중괄호((()))로 감싼 표현식을 산술 연산해 그 결과를 스크립트에 사용할 수 있게 함

  • 정수형 변수의 산술 연산
  • 산술 연산자
  • 비교 연산자
  • 논리 연산자
  • 비트 연산자
  • 할당 연산자

11.1.5 서브스트링 확장

${변수: 오프셋}
${변수: 오프셋: 길이}
${변수[@]:오프셋}
${변수[@]:오프셋:길이}

 

11.6 패턴 찾아 바꾸기

${변수/패턴/문자열}
${변수//패턴/문자열}
${변수/#패턴/문자열}
${변수/%패턴/문자열}

 

11.1.7 대소문자 바꾸기

패턴과 일치하는 문자를 모두 대문자로

${변수^^패턴}

 

패턴과 일치하면 첫  번째 문자를 대문자로

${변수^패턴}

 

패턴과 일치하는 문자를 모두 소문자로

${변수,,패턴}

 

패턴과 일치하는 첫 번째 문자를 소문자로

${변수,패턴}

 

11.1.8 변수 값에 따른 확장

  • 빈 값일 때 지정한 값 사용하기
  • 빈 값일 때 지정한 값 사용하고 저장하기
  • 빈 값일 때 에러 발생시키기
  • 빈 값이 아닐 떄 지정한 값 사용하기
${변수:+문자열}

 

11.1.9 간접 확장

변수의 이름을 저장하는 다른 변수를 통해 해당 변수의 값을 참조

${!변수}

 

11.1.10 일치하는 패턴 제거

앞에서부터 패턴 검색해 가장 짧게 일치하는 문자열 제거

${변수#패턴}

 

앞에서부터 패턴 검색해 가장 길게 일치하는 문자열 제거

${변수##패턴}

 

뒤에서부터 패턴 검색해 가장 짧게 일치하는 문자열 제거

${변수%패턴}

 

뒤에서부터 패턴 검색해 가장 길게 일치하는 문자열 제거

${변수%%패턴}

 

11.1.11 확장 연산자\

${변수@연산자}

 

11.2 셸 옵션

 

11.2.1 옵션 활성화/비활성화 방법

set -o 옵션
set -플래그

 

옵션을 비활성화랄 때는 - 대신 +로 바꾸면 됨

set +o 옵션
set +플래그

 

11.2.2 옵션 상태 확인 방법

  • shopt -o

11.2.3 주요 옵션

  • errexit(플래그  e)
  • pipefail(플래그 없음)
  • nounset(플래그 u)
  • xtrace(플래그 x)