길벗 학습단 13기 - 리눅스 - 3주차 학습후기
코딩 자율학습 리눅스 입문 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)