### string scope...
echo "s{str:offset:length}" // 옵션 순서 str:첫 시작:길이
## string1.sh // str에서 0에서 5개 출력
#!/bin/bash
str="Hello, World, Linux!"
echo "${str:0:5}"
# chmod +x *.sh
# ./string1.sh
Hello
##string2.sh // 7번째에서 끝까지(옵션을 안 주었기 때문에) 출력
#!/bin/bash
str="Hello, World, Linux!"
echo "${str:7}"
# ./string2.sh
World, Linux
## string3.sh // 뒤에서 7번쨰부터 끝까지
#!/bin/bash
str="Hello, World, Linux!"
echo "${str:(-7)}"
# ./string3.sh
Linux!
## string4.sh // 뒤에서 7번째부터 4개
#!/bin/bash
str="Hello, World, Linux!"
echo "${str:(-7):4}"
# ./string4.sh
Lin
## string5.sh // 8~12의 글자(chracter)를 출력
#!/bin/bash
str="Hello, World, Linux"
echo $str | cut -c 8-12
# ./string5.sh
World
## pattern1.sh // # 앞에서부터 패턴 찾기
#!/bin/bash
str="AAABBBCCC"
echo "${str#A*B}"
# ./pattern1.sh
BBCCC
A를 지나서 첫번째 B를 만날때까지를 제외하고 출력 #는 행의 시작이라고 생각하면 편함
## pattern2.sh
#!/bin/bash
str="AAABBBCCC"
echo "${str##A*B}"
# ./pattern2.sh
CCC
## : 끝까지
## pattern3.sh // % 뒤에서부터 패턴 찾기
#!/bin/bash
str="AAABBBCCC"
echo "${str%A*B}"
# ./pattern3.sh
AAABB
## pattern4.sh // 뒤에서부터 패턴 끝까지
#!/bin/bash
str="AAABBBCCC"
echo "${str%%A*B}"
# ./pattern4.sh
AAA
# for i in {1..100}; do printf "%03d %s\n" $i $(openssl rand
: 그냥 랜덤 숫자로 채운 숫자들임 100개의 넘과 헥사값이 채워짐
# cat split-test
# split -l 10 split-test -> 10개씩 잘라서 만들어짐
# ll xa*
// xaa xab ... 처럼 저장된다.
# ll xa* | wc -l
10
# cat xaa | wc -l
# rm -rf xa*
# split -n 5 split-test
// 5개의 파일로 만들어짐
# ll xa* | wc -l
5
# cat xaa | wc -l
# rm -rf xa*
'Linux' 카테고리의 다른 글
| 리눅스 11일차(4) - diffText (0) | 2024.03.20 |
|---|---|
| 리눅스 11일차(2) - Paste command (0) | 2024.03.18 |
| 리눅스 11일차(1) - Cut command (0) | 2024.03.18 |
| 리눅스 10일차(3) - Shell Script (0) | 2024.03.18 |
| 리눅스 10일차(2) - Shell Script (0) | 2024.03.18 |