고급 Bash 스크립팅 가이드 Description
๊ณ ๊ธ Bash ์คํฌ๋ฆฝํ
๊ฐ์ด๋
์ฐจ๋ก
Part 1. {์๊ฐ}
1. {์ ์ ํ๋ก๊ทธ๋๋ฐ์ ํด์ผ ํ์ฃ ?}
2. {#! ์ผ๋ก ์์ํ๊ธฐ}
2.1. {์คํฌ๋ฆฝํธ ์คํํ๊ธฐ}
2.2. {๋ชธํ๊ธฐ ์ฐ์ต๋ฌธ์ (Preliminary Exercises)}
Part 2. {๊ธฐ์ด ๋จ๊ณ}
3. {์ข ๋ฃ์ ์ข ๋ฃ ์ํ(Exit and Exit Status)}
4. {ํน์ ๋ฌธ์}
5. {๋ณ์์ ๋งค๊ฐ๋ณ์ ์๊ฐ}
5.1. {๋ณ์ ์นํ(Variable Substitution)}
5.2. {๋ณ์ ํ ๋น(Variable Assignment)}
5.3. {Bash ๋ณ์๋ ํ์ ์ด ์๋ค(untyped)}
5.4. {ํน์ํ ๋ณ์ ํ์ }
6. {์ฟผ์ฐํ (quoting)}
7. {ํ ์คํธ}
7.1. {ํ ์คํธ(Test Constructs)}
7.2. {ํ์ผ ํ ์คํธ ์ฐ์ฐ์}
7.3. {๋น๊ต ์ฐ์ฐ์(์ด์ง)}
7.4. {์ค์ฒฉ๋ if/then ์กฐ๊ฑด ํ ์คํธ}
7.5. {์ฌ๋ฌ๋ถ์ด ํ ์คํธ๋ฌธ์ ์ผ๋ง๋ ์ดํดํ๋์ง ํ ์คํธ ํด๋ณด๊ธฐ}
8. {์ฐ์ฐ์ ์ด์ผ๊ธฐ(Operations and Related Topics)}
8.1. {์ฐ์ฐ์(Operators)}
8.2. {์ซ์ ์์(Numerical Constants)}
Part 3. {์ค๊ธ ๋จ๊ณ(Beyond the Basics)}
9. {๋ณ์ ์ฌ๊ฒํ (Variables Revisited)}
9.1. {๋ด๋ถ ๋ณ์(Internal Variables)}
9.2. {๋ฌธ์์ด ์กฐ์}
9.3. {๋งค๊ฐ๋ณ์ ์นํ(Parameter Substitution)}
9.4. {๋ณ์ ํ์ ์ง์ : declare ๋ typeset}
9.5. {๋ณ์ ๊ฐ์ ์ฐธ์กฐ}
9.6. {$RANDOM: ๋๋คํ ์ ์ ๋ง๋ค๊ธฐ}
9.7. {์ด์ค์๊ดํธ(The Double Parentheses Construct)}
10. {๋ฃจํ์ ๋ถ๊ธฐ(Loops and Branches)}
10.1. {๋ฃจํ}
10.2. {์ค์ฒฉ๋ ๋ฃจํ}
10.3. {๋ฃจํ ์ ์ด}
10.4. {ํ ์คํธ์ ๋ถ๊ธฐ(Testing and Branching)}
11. {๋ด๋ถ ๋ช ๋ น์ด(Internal Commands and Builtins)}
11.1. {์์ ์ ์ด ๋ช ๋ น์ด}
12. {์ธ๋ถ ํํฐ, ํ๋ก๊ทธ๋จ, ๋ช ๋ น์ด}
12.1. {๊ธฐ๋ณธ ๋ช ๋ น์ด}
12.2. {๋ณต์กํ ๋ช ๋ น์ด}
12.3. {์๊ฐ/๋ ์ง ๋ช ๋ น์ด}
12.4. {ํ ์คํธ ์ฒ๋ฆฌ ๋ช ๋ น์ด}
12.5. {ํ์ผ, ์์นด์ด๋ธ(archive) ๋ช ๋ น์ด}
12.6. {ํต์ ๋ช ๋ น์ด}
12.7. {ํฐ๋ฏธ๋ ์ ์ด ๋ช ๋ น์ด}
12.8. {์ํ์ฉ ๋ช ๋ น์ด}
12.9. {๊ธฐํ ๋ช ๋ น์ด}
13. {์์คํ ๊ณผ ๊ด๋ฆฌ์์ฉ ๋ช ๋ น์ด}
14. {๋ช ๋ น์ด ์นํ(Command Substitution)}
15. {์ฐ์ ํ์ฅ(Arithmetic Expansion)}
16. {I/O ์ฌ์งํฅ}
16.1. {exec ์ฐ๊ธฐ}
16.2. {์ฝ๋ ๋ธ๋ญ ์ฌ์งํฅ}
16.3. {์์ฉ}
17. {Here Documents}
18. {์ฌ์ด๊ฐ๊ธฐ}
Part 4. {๊ณ ๊ธ ์ฃผ์ ๋ค(Advanced Topics)}
19. {์ ๊ท ํํ์(Regular Expressions)}
19.1. {์ ๊ท ํํ์์ ๊ฐ๋ตํ ์๊ฐ}
19.2. {Globbing}
20. {์๋ธ์(Subshells)}
21. {์ ํ๋ ์(Restricted Shells)}
22. {ํ๋ก์ธ์ค ์นํ(Process Substitution)}
23. {ํจ์}
23.1. {๋ณต์ก ํจ์์ ํจ์์ ๋ณต์ก์ฑ(Complex Functions and Function Complexities)}
23.2. {์ง์ญ ๋ณ์์ ์ฌ๊ท ํจ์(Local Variables and Recursion)}
24. {๋ณ์นญ(Aliases)}
25. {๋ฆฌ์คํธ(List Constructs)}
26. {๋ฐฐ์ด}
27. {ํ์ผ๋ค}
28. {/dev ์ /proc}
28.1. {/dev}
28.2. {/proc}
29. {์ ๋ก์ ๋(Of Zeros and Nulls)}
30. {๋๋ฒ๊น }
31. {์ต์ }
32. {๋ช ๊ฐ์ง ์ง์ ๋ถํ ๊ฒ๋ค(Gotchas)}
33. {์คํ์ผ ์๊ฒ ์คํฌ๋ฆฝํธ ์ง๊ธฐ}
33.1. {๋น๊ณต์ ์ ์คํฌ๋ฆฝํ ์คํ์ผ์ํธ}
34. {์์ง๊ตฌ๋ ํ ๊ฒ๋ค}
34.1. {๋ํ(interactive)ํ ๋ชจ๋์ ๋น๋ํ(non-interactive)ํ ๋ชจ๋ ์๊ณผ ์คํฌ๋ฆฝํธ}
34.2. {์ ๋ํผ(Shell Wrappers)}
34.3. {ํ ์คํธ์ ๋น๊ต: ๋ค๋ฅธ ๋ฐฉ๋ฒ}
34.4. {์ต์ ํ}
34.5. {ํ ๋ชจ์(Assorted Tips)}
34.6. {๊ดด์ํ ๊ฒ(Oddities)}
34.7. {์ด์์ฑ ๋ฌธ์ (Portability Issues)}
34.8. {์๋์ฐ์ฆ์์์ ์ ์คํฌ๋ฆฝํ }
35. {Bash, ๋ฒ์ 2}
36. {ํ๊ธฐ(Endnotes)}
36.1. {์ ์ ํ๊ธฐ(Author's Note)}
36.2. {์ ์์ ๋ํด์}
36.3. {์ด ์ฑ ์ ๋ง๋๋๋ฐ ์ด ๋๊ตฌ๋ค}
36.3.1. {ํ๋์จ์ด}
36.3.2. {์ํํธ์จ์ด์ ํ๋ฆฐํธ์จ์ด}
36.4. {ํฌ๋ ๋ง}
์ฐจ๋ก
Part 1. {์๊ฐ}
1. {์ ์ ํ๋ก๊ทธ๋๋ฐ์ ํด์ผ ํ์ฃ ?}
2. {#! ์ผ๋ก ์์ํ๊ธฐ}
2.1. {์คํฌ๋ฆฝํธ ์คํํ๊ธฐ}
2.2. {๋ชธํ๊ธฐ ์ฐ์ต๋ฌธ์ (Preliminary Exercises)}
Part 2. {๊ธฐ์ด ๋จ๊ณ}
3. {์ข ๋ฃ์ ์ข ๋ฃ ์ํ(Exit and Exit Status)}
4. {ํน์ ๋ฌธ์}
5. {๋ณ์์ ๋งค๊ฐ๋ณ์ ์๊ฐ}
5.1. {๋ณ์ ์นํ(Variable Substitution)}
5.2. {๋ณ์ ํ ๋น(Variable Assignment)}
5.3. {Bash ๋ณ์๋ ํ์ ์ด ์๋ค(untyped)}
5.4. {ํน์ํ ๋ณ์ ํ์ }
6. {์ฟผ์ฐํ (quoting)}
7. {ํ ์คํธ}
7.1. {ํ ์คํธ(Test Constructs)}
7.2. {ํ์ผ ํ ์คํธ ์ฐ์ฐ์}
7.3. {๋น๊ต ์ฐ์ฐ์(์ด์ง)}
7.4. {์ค์ฒฉ๋ if/then ์กฐ๊ฑด ํ ์คํธ}
7.5. {์ฌ๋ฌ๋ถ์ด ํ ์คํธ๋ฌธ์ ์ผ๋ง๋ ์ดํดํ๋์ง ํ ์คํธ ํด๋ณด๊ธฐ}
8. {์ฐ์ฐ์ ์ด์ผ๊ธฐ(Operations and Related Topics)}
8.1. {์ฐ์ฐ์(Operators)}
8.2. {์ซ์ ์์(Numerical Constants)}
Part 3. {์ค๊ธ ๋จ๊ณ(Beyond the Basics)}
9. {๋ณ์ ์ฌ๊ฒํ (Variables Revisited)}
9.1. {๋ด๋ถ ๋ณ์(Internal Variables)}
9.2. {๋ฌธ์์ด ์กฐ์}
9.3. {๋งค๊ฐ๋ณ์ ์นํ(Parameter Substitution)}
9.4. {๋ณ์ ํ์ ์ง์ : declare ๋ typeset}
9.5. {๋ณ์ ๊ฐ์ ์ฐธ์กฐ}
9.6. {$RANDOM: ๋๋คํ ์ ์ ๋ง๋ค๊ธฐ}
9.7. {์ด์ค์๊ดํธ(The Double Parentheses Construct)}
10. {๋ฃจํ์ ๋ถ๊ธฐ(Loops and Branches)}
10.1. {๋ฃจํ}
10.2. {์ค์ฒฉ๋ ๋ฃจํ}
10.3. {๋ฃจํ ์ ์ด}
10.4. {ํ ์คํธ์ ๋ถ๊ธฐ(Testing and Branching)}
11. {๋ด๋ถ ๋ช ๋ น์ด(Internal Commands and Builtins)}
11.1. {์์ ์ ์ด ๋ช ๋ น์ด}
12. {์ธ๋ถ ํํฐ, ํ๋ก๊ทธ๋จ, ๋ช ๋ น์ด}
12.1. {๊ธฐ๋ณธ ๋ช ๋ น์ด}
12.2. {๋ณต์กํ ๋ช ๋ น์ด}
12.3. {์๊ฐ/๋ ์ง ๋ช ๋ น์ด}
12.4. {ํ ์คํธ ์ฒ๋ฆฌ ๋ช ๋ น์ด}
12.5. {ํ์ผ, ์์นด์ด๋ธ(archive) ๋ช ๋ น์ด}
12.6. {ํต์ ๋ช ๋ น์ด}
12.7. {ํฐ๋ฏธ๋ ์ ์ด ๋ช ๋ น์ด}
12.8. {์ํ์ฉ ๋ช ๋ น์ด}
12.9. {๊ธฐํ ๋ช ๋ น์ด}
13. {์์คํ ๊ณผ ๊ด๋ฆฌ์์ฉ ๋ช ๋ น์ด}
14. {๋ช ๋ น์ด ์นํ(Command Substitution)}
15. {์ฐ์ ํ์ฅ(Arithmetic Expansion)}
16. {I/O ์ฌ์งํฅ}
16.1. {exec ์ฐ๊ธฐ}
16.2. {์ฝ๋ ๋ธ๋ญ ์ฌ์งํฅ}
16.3. {์์ฉ}
17. {Here Documents}
18. {์ฌ์ด๊ฐ๊ธฐ}
Part 4. {๊ณ ๊ธ ์ฃผ์ ๋ค(Advanced Topics)}
19. {์ ๊ท ํํ์(Regular Expressions)}
19.1. {์ ๊ท ํํ์์ ๊ฐ๋ตํ ์๊ฐ}
19.2. {Globbing}
20. {์๋ธ์(Subshells)}
21. {์ ํ๋ ์(Restricted Shells)}
22. {ํ๋ก์ธ์ค ์นํ(Process Substitution)}
23. {ํจ์}
23.1. {๋ณต์ก ํจ์์ ํจ์์ ๋ณต์ก์ฑ(Complex Functions and Function Complexities)}
23.2. {์ง์ญ ๋ณ์์ ์ฌ๊ท ํจ์(Local Variables and Recursion)}
24. {๋ณ์นญ(Aliases)}
25. {๋ฆฌ์คํธ(List Constructs)}
26. {๋ฐฐ์ด}
27. {ํ์ผ๋ค}
28. {/dev ์ /proc}
28.1. {/dev}
28.2. {/proc}
29. {์ ๋ก์ ๋(Of Zeros and Nulls)}
30. {๋๋ฒ๊น }
31. {์ต์ }
32. {๋ช ๊ฐ์ง ์ง์ ๋ถํ ๊ฒ๋ค(Gotchas)}
33. {์คํ์ผ ์๊ฒ ์คํฌ๋ฆฝํธ ์ง๊ธฐ}
33.1. {๋น๊ณต์ ์ ์คํฌ๋ฆฝํ ์คํ์ผ์ํธ}
34. {์์ง๊ตฌ๋ ํ ๊ฒ๋ค}
34.1. {๋ํ(interactive)ํ ๋ชจ๋์ ๋น๋ํ(non-interactive)ํ ๋ชจ๋ ์๊ณผ ์คํฌ๋ฆฝํธ}
34.2. {์ ๋ํผ(Shell Wrappers)}
34.3. {ํ ์คํธ์ ๋น๊ต: ๋ค๋ฅธ ๋ฐฉ๋ฒ}
34.4. {์ต์ ํ}
34.5. {ํ ๋ชจ์(Assorted Tips)}
34.6. {๊ดด์ํ ๊ฒ(Oddities)}
34.7. {์ด์์ฑ ๋ฌธ์ (Portability Issues)}
34.8. {์๋์ฐ์ฆ์์์ ์ ์คํฌ๋ฆฝํ }
35. {Bash, ๋ฒ์ 2}
36. {ํ๊ธฐ(Endnotes)}
36.1. {์ ์ ํ๊ธฐ(Author's Note)}
36.2. {์ ์์ ๋ํด์}
36.3. {์ด ์ฑ ์ ๋ง๋๋๋ฐ ์ด ๋๊ตฌ๋ค}
36.3.1. {ํ๋์จ์ด}
36.3.2. {์ํํธ์จ์ด์ ํ๋ฆฐํธ์จ์ด}
36.4. {ํฌ๋ ๋ง}
Additional Information
Category
App โบ Books & Reference
Version
1.2
Updated
Mar 5, 2021
Requires Android
Android: 4.0–4.0.2+ Ice Cream Sandwich (API 14)
Permissions
Architectures
Unknown
Target Android
Android: 10 Android 10 (API 29)
Estimated Download Time
File Size: 2.36 MB
3G network (~2 Mbps)
12 seconds
4G LTE (~25 Mbps)
1 seconds
5G network (~150 Mbps)
1 seconds
Broadband / Wi-Fi (~100 Mbps)
1 seconds
Hashes
SHA-1
A0FB887AA1B1BD576BFB41F4B7940947F0AC709ASHA-256
78493F1A73D807B83256000040DCB2DF72EAA17D328DF8759A52922997BA1B60Signing Certificate SHA-1
700877E12D3B31129B5B885F0A4B57389BC49A60