Ubuntu Online, Fedora Online, Windows ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ ๋๋ MAC OS ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ์ ๊ฐ์ ์ฌ๋ฌ ๋ฌด๋ฃ ์จ๋ผ์ธ ์ํฌ์คํ ์ด์ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ OnWorks ๋ฌด๋ฃ ํธ์คํ ๊ณต๊ธ์์์ ์คํํ ์ ์๋ mksh ๋ช ๋ น์ ๋๋ค.
ํ๋ก๊ทธ๋จ:
์ด๋ฆ
mksh, sh โ MirBSD ์ฝ ์
๊ฐ์
mksh [-+abCefhiklmnprUuvXx] [-T [!]์ฒญ๊ฐ ์ฅ์ | -] [-+์ค ์ ํ๊ถ] [-c ํ | -s | ํ์ผ
[๋ ผ์ ...]]
๋ด์ฅ ์ด๋ฆ [๋ ผ์ ...]
๊ธฐ์
mksh ๋ํ์ ๋ฐ ์ ์คํฌ๋ฆฝํธ ์ฌ์ฉ์ ์ํ ๋ช ๋ น ํด์๊ธฐ์ ๋๋ค. ๊ทธ๊ฒ์
๋ช ๋ น ์ธ์ด๋ sh(C) ์ ธ ์ธ์ด์ ์์ ์งํฉ์ด๋ฉฐ ๋์ฒด๋ก ๋ค์๊ณผ ํธํ๋ฉ๋๋ค.
์๋ Korn ์. ๋๋๋ก ์ด ๋งค๋ด์ผ ํ์ด์ง๋ ์คํฌ๋ฆฝํ ์กฐ์ธ์ ์ ๊ณตํ ์ ์์ต๋๋ค. ๋์
๋๋๋ก ์ด์ ๊ฐ๋ฅํ ์ ์คํฌ๋ฆฝํ ๋๋ ๋ค์ํ ํ์ค์ ๋ชจ๋ ๊ณ ๋ คํฉ๋๋ค.
์ ๋ณด๊ฐ ๊ฐ์ฅ ๋จผ์ ์ ๊ณต๋ฉ๋๋ค. mksh ์ผ๋์ ๋๊ณ ๊ทธ๋ ๊ฒ ๋ฐ์๋ค์ฌ์ผ ํฉ๋๋ค.
๋๋ ํด์ an Android ์ฌ์ฉ์, so ๋ญ์ง mksh?
mksh UNIX ์/๋ช ๋ น ์ธํฐํ๋ฆฌํฐ๋ก, ๋ค์๊ณผ ์ ์ฌํฉ๋๋ค. COMMAND.COM or CMD.EXE,์๋ค
ํ๋์ Android ์คํ ์์ค ํ๋ก์ ํธ์ ํฌํจ๋์์ต๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ํ๋ก๊ทธ๋จ์ด๋ค.
ํฐ๋ฏธ๋(์ฝ์ ์ฐฝ)์์ ์คํ๋๊ณ , ์ฌ์ฉ์ ์ ๋ ฅ์ ๋ฐ์ ๋ช ๋ น ๋๋ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ๊ณ ,
๋ฐฑ๊ทธ๋ผ์ด๋์์๋ ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์์ ์ํํ๋๋ก ์์ฒญํ ์๋ ์์ต๋๋ค. ๋ชจ๋ ๊ถํ
๋ฐ๋ผ์ ๋ฐ์ํ ์ ์๋ ํ์ ์ mksh ๋ฌธ์ ์ด์ง๋ง ๋ค๋ฅธ ์ฌ๋์ ์ง๋ฌธ
๊ทธ๊ฒ์ ํ์ฉํ ํ๋ก๊ทธ๋จ.
๊ธฐ๋
๋๋ถ๋ถ์ ๋นํธ์ธ์ ์ง์ ํธ์ถํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๋งํฌ๊ฐ ์ด๋ฆ์์
๊ป๋ฐ๊ธฐ; ๋ชจ๋ ๋ง์ด ๋๋ ๊ฒ์ ์๋์ง๋ง ํ ์คํธ๋ฅผ ๊ฑฐ์ณค๊ฑฐ๋ ์ ํ ์๋ํ์ง ์์ต๋๋ค.
์ต์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค
-c ํ mksh ์ ํฌํจ๋ ๋ช ๋ น์ ์คํํฉ๋๋ค. ํ.
-i ์ธํฐ๋ํฐ๋ธ ์. ํ์ค ์ ๋ ฅ์์ ๋ช ๋ น์ ์ฝ๋ ์์
์ด ์ต์ ์ด ์ฌ์ฉ๋๊ฑฐ๋ ํ์ค ์ ๋ ฅ๊ณผ ํ์ค ์ค๋ฅ๊ฐ ๋ชจ๋ ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ "๋ํ์"
์ ๋ถ์ด์๋ค ์ฒญ๊ฐ ์ฅ์ (4). ๋ํํ ์ ธ์๋ ์์ ์ ์ด๊ฐ ํ์ฑํ๋์ด ์์ผ๋ฉฐ ๋ฌด์ํฉ๋๋ค.
SIGINT, SIGQUIT ๋ฐ SIGTERM ์ ํธ๋ฅผ ์ ์กํ๊ณ ์ ๋ ฅ์ ์ฝ๊ธฐ ์ ์ ํ๋กฌํํธ๋ฅผ ์ธ์ํฉ๋๋ค.
(PS1 ๋ฐ PS2 ๋งค๊ฐ๋ณ์ ์ฐธ์กฐ). ๋ํ ENV ๋งค๊ฐ๋ณ์ ๋๋
mkshrc ํ์ผ(์๋ ์ฐธ์กฐ). ๋น๋ํํ ์์ ๊ฒฝ์ฐ ํธ๋์ฌ ์ต์ ์ด ์ผ์ ธ ์์ต๋๋ค
๊ธฐ๋ณธ์ ์ผ๋ก(์ฐธ์กฐ ์ธํธ ์๋ ๋ช ๋ น).
-l ๋ก๊ทธ์ธ ์. ์์ด ํธ์ถ๋๋ ๊ธฐ๋ณธ ์ด๋ฆ(์: argv[0])์ด ๋ค์์ผ๋ก ์์ํ๋ ๊ฒฝ์ฐ
'-' ๋๋ ์ด ์ต์ ์ ์ฌ์ฉํ๋ฉด ์์ด ๋ก๊ทธ์ธ ์๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ๋ณด๋ค
์์ ํ์ผ ์๋.
-p ํน๊ถ ์. ์ค์ ์ฌ์ฉ์ ID ๋๋ ๊ทธ๋ฃน ID๊ฐ ๊ถํ์ด ์๋ ๊ฒฝ์ฐ ์์ "๊ถํ์ด ์๋" ๊ฒ์ ๋๋ค.
์ ํจํ ์ฌ์ฉ์ ID ๋๋ ๊ทธ๋ฃน ID์ ์ผ์นํ์ง ์์ต๋๋ค(์ฐธ์กฐ ๊ฒํฌ์ด๋(2)๊ณผํ๋ฉด ๋นํฉํ๋ค(์ผ)).
๊ถํ ์๋ ์ต์ ์ ์ง์ฐ๋ฉด ์ ธ์ด ์ ํจ ์ฌ์ฉ์ ID๋ฅผ ์ค์ ํฉ๋๋ค.
(๊ทธ๋ฃน ID)๋ฅผ ์ค์ ์ฌ์ฉ์ ID(๊ทธ๋ฃน ID)๋ก ๋ณ๊ฒฝํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ค์์ ์ฐธ์กฐํ์ญ์์ค. ์์
ํ์ผ. ์์ ๊ถํ์ด ์๊ณ ์ด ํ๋๊ทธ๊ฐ ๋ช ์์ ์ผ๋ก ์ค์ ๋์ง ์์ ๊ฒฝ์ฐ
"privileged" ์ต์ ์ ์์ ํ์ผ์ ์ฒ๋ฆฌํ ํ ์๋์ผ๋ก ์ง์์ง๋๋ค.
-r ์ ํ๋ ์. ์ด ์ต์ ์ ์ฌ์ฉํ๋ฉด ์์ด "์ ํ"๋ฉ๋๋ค. ๋ค์๊ณผ ๊ฐ์
์ ํ ์ฌํญ์ ์ ธ์ด ํ๋กํ ๋ฐ ENV๋ฅผ ์ฒ๋ฆฌํ ํ์ ์ ์ฉ๋ฉ๋๋ค.
ํ์ผ :
ยท XNUMXD๋ดํ์ cd (๊ทธ๋ฆฌ๊ณ chdir) ๋ช ๋ น์ด ๋นํ์ฑํ๋ฉ๋๋ค.
ยท SHELL, ENV ๋ฐ PATH ๋งค๊ฐ๋ณ์๋ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
ยท ๋ช ๋ น ์ด๋ฆ์ ์ ๋ ๋๋ ์๋ ๊ฒฝ๋ก๋ก ์ง์ ํ ์ ์์ต๋๋ค.
ยท XNUMXD๋ดํ์ -p ๋ด์ฅ ๋ช ๋ น์ ์ต์ ๋ช ๋ น ์ฌ์ฉํ ์ ์์ต๋๋ค.
ยท ํ์ผ์ ์์ฑํ๋ ๋ฆฌ๋๋ ์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค(์: '>', '>|', '>>', '<>').
-s ์์ ํ์ค ์ ๋ ฅ์์ ๋ช ๋ น์ ์ฝ์ต๋๋ค. ์ต์ ์ด ์๋ ๋ชจ๋ ์ธ์๋
์์น ๋งค๊ฐ๋ณ์
-T name ์ mksh ๋ฅผ ์์ฒญํ์ฌ ์ด์ ๋ํด ๋ ๋ง์ ์ ๋ณด๋ฅผ ์ป์ ์ ์์ต๋๋ค. ์ฒญ๊ฐ ์ฅ์ (4) ์ฃผ์ด์ง ์ฅ์น. ๊ฒฝ๋ก name, /dev/ttyC์ด๋ฆ ๊ณผ
/dev/tty์ด๋ฆ ์์๋๋ก ์๋๋๋ค. ํ์ง ์๋ ํ name ๋๋ํ๋ก ์์
('!'), ์ด๋ ์๋ธ์์์ ์ํ๋๋ฉฐ ์ฆ์ ๋ฆฌํด๋ฉ๋๋ค. ๋ง์ฝ์ name ๋์์ ๋๋ค
('-'), ๋์ ์ ์ด ํฐ๋ฏธ๋(daemonise)์์ ๋ถ๋ฆฌํฉ๋๋ค.
์์ ์ต์ ์ธ์๋ ์ธํธ ๋ด์ฅ ๋ช ๋ น๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋ช ๋ น์ค์์: ๋ ๋ค [-+abCefhkmnuvXx] ๋ฐ [-+์ค ์ ํ๊ถ] ๋จ์ผ ๋ฌธ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋๋ ๊ฐ๊ฐ ๊ธด ์ต์ .
๋ ๋ค -c ๋ -s ์ต์ ์ด ์ง์ ๋๋ฉด ์ต์ ์ด ์๋ ์ฒซ ๋ฒ์งธ ์ธ์๋ ๋ค์์ ์ง์ ํฉ๋๋ค.
์์ด ๋ช ๋ น์ ์ฝ๋ ํ์ผ์ ์ด๋ฆ. ์ต์ ์ธ์๊ฐ ์๋ ๊ฒฝ์ฐ
์์ ํ์ค ์ ๋ ฅ์์ ๋ช ๋ น์ ์ฝ์ต๋๋ค. ์์ ์ด๋ฆ(์ฆ,
$0)๋ ๋ค์๊ณผ ๊ฐ์ด ๊ฒฐ์ ๋ฉ๋๋ค. -c ์ต์ ์ด ์ฌ์ฉ๋๊ณ ์๊ณ ์ต์ ์ด ์๋ ์ธ์๊ฐ ์๋ ๊ฒฝ์ฐ,
์ด๋ฆ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ํ์ผ์์ ๋ช ๋ น์ ์ฝ๋ ์ค์ด๋ฉด ํ์ผ์ด ๋ค์์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
์ด๋ฆ; ๊ทธ๋ ์ง ์์ผ๋ฉด ์์ด ํธ์ถ๋ ๊ธฐ๋ณธ ์ด๋ฆ(์: argv[0])์ด ์ฌ์ฉ๋ฉ๋๋ค.
๋ช ๋ น์ค์ ์ง์ ๋ ๋ช ๋ น ํ์ผ์ด ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์์ ์ข ๋ฃ ์ํ๋ 127์ ๋๋ค.
์ด๋ฆฌ์ง ์๊ฑฐ๋ ์น๋ช ์ ์ธ ๊ตฌ๋ฌธ ์ค๋ฅ๊ฐ ์คํ ์ค์ ๋ฐ์ํ ๊ฒฝ์ฐ XNUMX์ด ์๋๋๋ค.
์คํฌ๋ฆฝํธ. ์น๋ช ์ ์ค๋ฅ๊ฐ ์๋ ๊ฒฝ์ฐ ์ข ๋ฃ ์ํ๋ ๋ง์ง๋ง ๋ช ๋ น์ ์ข ๋ฃ ์ํ์ ๋๋ค.
์คํ๋๊ฑฐ๋ ๋ช ๋ น์ด ์คํ๋์ง ์์ผ๋ฉด XNUMX์ ๋๋ค.
์์ ํ์ผ
์ด๋ฌํ ํ์ผ์ ์ค์ ์์น๋ ๋ค์์ ์ฐธ์กฐํ์ญ์์ค. ํ์ผ. ๋ก๊ทธ์ธ ์์ ์์คํ ์ ์ฒ๋ฆฌํฉ๋๋ค.
๋จผ์ ํ๋กํ. ๊ทธ๋ฌ๋ฉด ํน๊ถ ์์ด suid ํ๋กํ์ผ์ ์ฒ๋ฆฌํฉ๋๋ค. ๊ถํ์ด ์๋ ๋ก๊ทธ์ธ
์์ ๋ค์์ ์ฌ์ฉ์ ํ๋กํ์ผ์ ์ฒ๋ฆฌํฉ๋๋ค. ๊ถํ์ด ์๋ ๋ํํ ์ ธ์ด ๊ฐ์ ํ์ธํฉ๋๋ค.
๋งค๊ฐ๋ณ์, ๋ช ๋ น, ์ฐ์ ๋ฐ ๋ฌผ๊ฒฐํ('~')๋ฅผ ์ ์ฉํ ํ ENV ๋งค๊ฐ๋ณ์์
์นํ; ์ค์ ๋์ง ์์๊ฑฐ๋ ๋น์ด ์์ผ๋ฉด ์ฌ์ฉ์ mkshrc ํ๋กํ์ด ์ฒ๋ฆฌ๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ํ์ผ
์ด๋ฆ์ด ๋์ฒด ๊ฒฐ๊ณผ์ธ ๊ฒฝ์ฐ ์ฒ๋ฆฌ๋ฉ๋๋ค. ์กด์ฌํ์ง ์๋ ๊ฒ์ ์กฐ์ฉํ
๋ฌด์ํ๋ค. ๊ทธ๋ฐ ๋ค์ ๊ถํ ์๋ ์ ธ์ ๊ถํ์ด ์๋ ๊ฒฝ์ฐ ๊ถํ์ ์ญ์ ํฉ๋๋ค. -p ์ ์ฃผ์ด์ง ์ต์
์์ ํ์ผ์ ์คํํ๋ ๋์ ๋ช ๋ น์ค๋ ์ค์ ํ์ง๋ ์์ต๋๋ค.
๋ช ๋ น ๊ตฌ๋ฌธ
์ ธ์ ๋ฐฑ์ฌ๋์-๊ฐํ ์กฐํฉ์ ์ ๊ฑฐํ์ฌ ์ ๋ ฅ ๊ตฌ๋ฌธ ๋ถ์์ ์์ํ ๋ค์
๊ทธ๊ฒ์ ๊นจ๊ณ ๋ง. ๋จ์ด(๋ฌธ์์ด)๋ ๋ฐ์ดํ ์์ด ๊ตฌ๋ถ๋ฉ๋๋ค.
๊ณต๋ฐฑ ๋ฌธ์(๊ณต๋ฐฑ, ํญ ๋ฐ ์ค ๋ฐ๊ฟ) ๋๋ ๋ฉํ ๋ฌธ์('<', '>', '|', ';', '(',
')', ๊ทธ๋ฆฌ๊ณ '&'). ๋จ์ด๋ฅผ ๊ตฌ๋ถํ๋ ๊ฒ ์ธ์ ๊ณต๋ฐฑ๊ณผ ํญ์ ๋ฌด์๋์ง๋ง ๊ฐํ ๋ฌธ์๋
์ผ๋ฐ์ ์ผ๋ก ๋ช ๋ น์ ๊ตฌ๋ถํฉ๋๋ค. ๋ฉํ ๋ฌธ์๋ ๋ค์์ ๊ตฌ์ถํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ํ ํฐ:
'<', '<&', '<<', '<<<', '>', '>&', '>>', '&>' ๋ฑ์ ๋ฆฌ๋๋ ์ ์ ์ง์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค(์ฐธ์กฐ
์ ์ถ๋ ฅ ๋ฆฌ๋๋ ์ ์๋์); '|' ํ์ดํ๋ผ์ธ์ ๋ง๋๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. '|&'๋ ๊ณต๋ ์์ฑ์ ์ฌ์ฉ๋ฉ๋๋ค.
ํ๋ก์ธ์ค(์ฐธ์กฐ ๊ณต๋ ํ๋ก์ธ์ค ์๋์); ';' ๋ช ๋ น์ ๋ถ๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. '&'๋ฅผ ์ฌ์ฉํ์ฌ ์์ฑ
๋น๋๊ธฐ ํ์ดํ๋ผ์ธ; '&&' ๋ฐ '||' ์กฐ๊ฑด๋ถ ์คํ์ ์ง์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ';;', ';&'
๊ทธ๋ฆฌ๊ณ ';|' ์์ ์ฌ์ฉ๋ฉ๋๋ค ์ผ์ด์ค ์ง์ ; '(( .. ))'๋ ์ฐ์ ์์ ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ
๋ง์ง๋ง์ผ๋ก '( .. )'๋ ์๋ธ์์ ์์ฑํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
๊ณต๋ฐฑ ๋ฐ ๋ฉํ ๋ฌธ์๋ ๋ฐฑ์ฌ๋์('\')๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ๋ณ์ ์ผ๋ก ์ธ์ฉํ ์ ์์ต๋๋ค.
ํฐ๋ฐ์ดํ('"') ๋๋ ์์๋ฐ์ดํ(โ'โ)๋ฅผ ์ฌ์ฉํ์ฌ ๊ทธ๋ฃนํํฉ๋๋ค. ๋ค์ ๋ฌธ์๋
๋ํ ์์ ์ํด ํน๋ณํ ์ทจ๊ธ๋๋ฉฐ ์์ ์ ๋ํ๋ด๋ ค๋ฉด ์ธ์ฉ๋์ด์ผ ํฉ๋๋ค.
'\', '"', ''', '#', '$', '`', '~', '{', '}', '*', '?' ๋ฐ '['. ์ด ์ค ์ฒ์ ์ธ ๊ฐ
์์์ ์ธ๊ธํ ์ธ์ฉ ๋ฌธ์์ ๋๋ค(์ฐธ์กฐ ์ธ์ฉ ์๋์); '#', ๋ค์์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ
๋จ์ด์ ์์, ์ฃผ์์ ์๊ฐํฉ๋๋ค โ '#' ์ดํ๋ถํฐ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฒ๊น์ง ๋ชจ๋ ๊ฒ
๊ฐํ์ ๋ฌด์๋ฉ๋๋ค. '$'๋ ๋งค๊ฐ๋ณ์, ๋ช ๋ น ๋ฐ ์ฐ์ ์ ์๊ฐํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
๋์ฒด(์ฐธ์กฐ ์นํ ์๋์); '`'๋ ๊ตฌ์ ๋ช ๋ น ๋์ฒด๋ฅผ ๋์ ํฉ๋๋ค.
(์ฐธ์กฐ ์นํ ์๋์); '~'๋ ๋๋ ํ ๋ฆฌ ํ์ฅ์ ์์ํฉ๋๋ค(์ฐธ์กฐ ํธ๋ฐ ํ์ฅ ์๋์); '{'
๋ฐ '}' ๊ตฌ๋ถ CSH(1) ์คํ์ผ ๊ต๋(์ฐธ์กฐ ๊ฐ์ ํ์ฅ ์๋์); ๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง์ผ๋ก, '*',
'?' ๋ฐ '['๋ ํ์ผ ์ด๋ฆ ์์ฑ์ ์ฌ์ฉ๋ฉ๋๋ค(์ฐธ์กฐ ์ ์ ๋ถ๋ชจ๋ก์์ ๊ทํ์ ์ ํฉ์ฑ์ ๊ฒฐ์ ํ๊ธฐ ์ํด ๋ฏธ๊ตญ ์ด๋ฏผ๊ตญ์ name ํจํด ์๋).
๋จ์ด์ ํ ํฐ์ด ๊ตฌ๋ฌธ ๋ถ์๋จ์ ๋ฐ๋ผ ์์ ๋ ๊ฐ์ง ๊ธฐ๋ณธ ๋ช ๋ น์ด ์๋ ๋ช ๋ น์ ๋น๋ํฉ๋๋ค.
์ ํ : ๊ฐ๋จํ ๋ช ๋ น, ์ผ๋ฐ์ ์ผ๋ก ์คํ๋๋ ํ๋ก๊ทธ๋จ ๋ฐ ๋ณตํฉ ๋ช ๋ น๊ทธ๋ฐ
as for ๊ณผ if ๋ช ๋ น๋ฌธ, ๊ทธ๋ฃนํ ๊ตฌ๋ฌธ ๋ฐ ํจ์ ์ ์.
๋จ์ ๋ช ๋ น์ ๋งค๊ฐ๋ณ์ ํ ๋น์ ์ผ๋ถ ์กฐํฉ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค(์ฐธ์กฐ ํ๋ผ๋ฏธํฐ
์๋), ์ ๋ ฅ/์ถ๋ ฅ ๋ฆฌ๋๋ ์ (์ฐธ์กฐ ์ ์ถ๋ ฅ ๋ฆฌ๋๋ ์ ์๋) ๋ฐ ๋ช ๋ น์ด;
์ ์ผํ ์ ํ์ ๋งค๊ฐ ๋ณ์ ํ ๋น์ด ๋ช ๋ น ๋จ์ด ์์ ์ค๋ ๊ฒ์ ๋๋ค. ๊ทธ๋งํผ
๋ช ๋ น ๋จ์ด(์๋ ๊ฒฝ์ฐ)๋ ์คํํ ๋ช ๋ น๊ณผ ํด๋น ์ธ์๋ฅผ ์ ์ํฉ๋๋ค. ๊ทธ๋งํผ
๋ช ๋ น์ ์ ๋ด์ฅ ๋ช ๋ น, ํจ์ ๋๋ ์ธ๋ถ ๋ช ๋ น(์ฆ, ๋ณ๋์
PATH ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ฐพ์ ์คํ ํ์ผ. ๋ณด๋ค ๋ช ๋ น ์คํ ์๋).
๋ชจ๋ ๋ช ๋ น ๊ตฌ์กฐ์๋ ์ข ๋ฃ ์ํ๊ฐ ์์ต๋๋ค. ์ธ๋ถ ๋ช ๋ น์ ๊ฒฝ์ฐ ์ด๊ฒ์ ๊ด๋ จ์ด ์์ต๋๋ค.
์ ์ํด ๋ฐํ๋ ์ํ๋ก ๊ธฐ๋ค๋ฆฌ๋ค(2) (๋ช ๋ น์ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ ์ข ๋ฃ ์ํ๋
127; ์คํํ ์ ์๋ ๊ฒฝ์ฐ ์ข ๋ฃ ์ํ๋ 126์ ๋๋ค. ๋ค๋ฅธ ๋ช ๋ น์ ์ข ๋ฃ ์ํ
๊ตฌ๋ฌธ(๋ด์ฅ ๋ช ๋ น, ํจ์, ๋ณตํฉ ๋ช ๋ น, ํ์ดํ๋ผ์ธ, ๋ชฉ๋ก ๋ฑ)์ ๋ชจ๋
๊ตฌ์กฐ๊ฐ ์ค๋ช ๋ ๊ณณ์ ์ ์ ์๋์ด ์๊ณ ์ค๋ช ๋์ด ์์ต๋๋ค. ์ข ๋ฃ ์ํ
๋งค๊ฐ๋ณ์ ํ ๋น์ผ๋ก๋ง ๊ตฌ์ฑ๋ ๋ช ๋ น์ ๋ง์ง๋ง ๋ช ๋ น ๋์ฒด์ ๋ช ๋ น์ ๋๋ค.
๋งค๊ฐ๋ณ์ ์ง์ ์ค์ ์ํ๋๊ฑฐ๋ ๋ช ๋ น ๋์ฒด๊ฐ ์๋ ๊ฒฝ์ฐ 0์ ๋๋ค.
๋ช ๋ น์ '|'๋ฅผ ์ฌ์ฉํ์ฌ ํจ๊ป ์ฐ๊ฒฐํ ์ ์์ต๋๋ค. ํ์ดํ๋ผ์ธ์ ํ์ฑํ๋ ํ ํฐ
๊ฐ ๋ช ๋ น์ ํ์ค ์ถ๋ ฅ์ด์ง๋ง ๋ง์ง๋ง ๋ช ๋ น์ ํ์ดํ๋ฉ๋๋ค(์ฐธ์กฐ ํ์ดํ(2))์ ํ์ค ์ ๋ ฅ์ผ๋ก
๋ค์ ๋ช ๋ น. ํ์ดํ๋ผ์ธ์ ์ข ๋ฃ ์ํ๋ ๋ง์ง๋ง ๋ช ๋ น์ ์ข ๋ฃ ์ํ์ ๋๋ค.
์ ์, ํ์ดํ ์คํจ ์ต์ ์ด ์ค์ ๋์์ต๋๋ค(์ฐธ์กฐ). ํ์ดํ๋ผ์ธ์ ๋ชจ๋ ๋ช ๋ น์ ๋ณ๋๋ก ์คํ๋ฉ๋๋ค.
์๋ธ์; ์ด๊ฒ์ POSIX์์ ํ์ฉ๋์ง๋ง AT&T UNIX์ ๋ ๋ณ์ข ๊ณผ๋ ๋ค๋ฆ ๋๋ค. KSH์ด๋๋ก
๋ง์ง๋ง ๋ช ๋ น์ ์ ์ธํ ๋ชจ๋ ๋ช ๋ น์ ์๋ธ์์์ ์คํ๋์์ต๋๋ค. ์ฐธ์กฐ ์ฝ๊ธฐ ๋นํธ์ธ์ ์ค๋ช
์ํฅ ๋ฐ ํด๊ฒฐ ๋ฐฉ๋ฒ. ํ์ดํ๋ผ์ธ ์์ '!'๊ฐ ๋ถ์ ์ ์์ต๋๋ค. ์์ฝ์ด
ํ์ดํ๋ผ์ธ์ ์ข ๋ฃ ์ํ๊ฐ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ณด์๋๋๋ก ํฉ๋๋ค. ์๋ ์ํ๊ฐ
0์ด๋ฉด ๋ณด์๋ ์ํ๋ 1์ด ๋ฉ๋๋ค. ์๋ ์ํ๊ฐ 0์ด ์๋ ๊ฒฝ์ฐ ๋ณด์
์ํ๋ 0์ด ๋ฉ๋๋ค.
๊ธฐ์ธ๊ธฐ of ๋ช ๋ น์ ๋ค์ ํ ํฐ ์ค ํ๋๋ก ํ์ดํ๋ผ์ธ์ ๋ถ๋ฆฌํ์ฌ ๋ง๋ค ์ ์์ต๋๋ค.
'&&', '||', '&', '|&' ๋ฐ ';'. ์ฒ์ ๋ ๊ฐ๋ ์กฐ๊ฑด๋ถ ์คํ์ ์ํ ๊ฒ์ ๋๋ค.cmd1 && cmd2"
์คํ cmd2 ์ข ๋ฃ ์ํ์ธ ๊ฒฝ์ฐ์๋ง cmd1 XNUMX์ ๋๋ค. '||' ๋ฐ๋์ ๋๋ค - cmd2 is
์ข ๋ฃ ์ํ์ธ ๊ฒฝ์ฐ์๋ง ์คํ cmd1 XNUMX์ด ์๋๋๋ค. '&&' ๋ฐ '||' ๋๋ฑํ ์ฐ์ ๊ถ์ ๊ฐ์ง๋ค
์ด๋ '&', '|&' ๋ฐ ';'๋ณด๋ค ์ฐ์ ์์๊ฐ ๋์ผํฉ๋๋ค. ๋ฉ๋ชจ
'&&' ๋ฐ '||' ์ฐ์ฐ์๋ "์ผ์ชฝ ์ฐ๊ด"์ ๋๋ค. ์๋ฅผ ๋ค์ด, ์ด ๋ ๋ชจ๋
๋ช ๋ น์ "bar"๋ง ์ธ์ํฉ๋๋ค.
$ ๊ฑฐ์ง && ์์ฝ ํธ || ์์ฝ ๋ฐ
$ ์ฐธ || ์์ฝ ํธ && ์์ฝ ๋ฐ
'&' ํ ํฐ์ ์ฌ์ฉํ๋ฉด ์์ ๋ช ๋ น์ด ๋น๋๊ธฐ์ ์ผ๋ก ์คํ๋ฉ๋๋ค. ์ฆ, ๊ป์ง
๋ช ๋ น์ ์์ํ์ง๋ง ๋ช ๋ น์ด ์๋ฃ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ์ง ์์ต๋๋ค(์์
๋น๋๊ธฐ ๋ช ๋ น์ ์ํ; ๋ณด๋ค ์ผ ์ ์ด ์๋์). ๋น๋๊ธฐ ๋ช ๋ น์ด ์์ ๋
์์ ์ ์ด๊ฐ ๋นํ์ฑํ๋์์ ๋(์: ๋๋ถ๋ถ์ ์คํฌ๋ฆฝํธ์์) ๋ช ๋ น์ด ์์๋ฉ๋๋ค.
์ ํธ SIGINT ๋ฐ SIGQUIT๋ ๋ฌด์๋๊ณ ์ ๋ ฅ์ / dev / null (ํ์ง๋ง,
๋น๋๊ธฐ ๋ช ๋ น์ ์ง์ ๋ ๋ฆฌ๋๋ ์ ์ด ์ฐ์ ํฉ๋๋ค. '|&' ์ฐ์ฐ์
ํน๋ณํ ์ข ๋ฅ์ ๋น๋๊ธฐ ํ๋ก์ธ์ค์ธ ๊ณต๋ ํ๋ก์ธ์ค๋ฅผ ์์ํฉ๋๋ค(์ฐธ์กฐ ๊ณต๋ ํ๋ก์ธ์ค
์๋์). ๋ช ๋ น์ '&&' ๋ฐ '||' ๋ค์์ ์์ผ ํฉ๋๋ค. ํ์ํ์ง ์์ ๋์
'&', '|&' ๋๋ ';'์ ๋ฐ๋ฆ ๋๋ค. ๋ชฉ๋ก์ ์ข ๋ฃ ์ํ๋ ๋ง์ง๋ง์ผ๋ก ์คํ๋ ๋ช ๋ น์ ์ข ๋ฃ ์ํ์ ๋๋ค.
์ข ๋ฃ ์ํ๊ฐ 0์ธ ๋น๋๊ธฐ ๋ชฉ๋ก์ ์์ธ์ ๋๋ค.
๋ณตํฉ ๋ช ๋ น์ ๋ค์ ์์ฝ์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ฑ๋ฉ๋๋ค. ์ด ๋จ์ด๋ค์ ๋จ์ง
์ธ์ฉ๋์ง ์์ ๊ฒฝ์ฐ์ ๋ช ๋ น์ ์ฒซ ๋จ์ด๋ก ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ(์:
๋งค๊ฐ๋ณ์ ํ ๋น ๋๋ ๋ฆฌ๋๋ ์ ์ด ์์ ์ฌ ์ ์์):
case else ํจ์ ๊ทธ๋ ! (
์๊ฐ [[ ((
{๊น์ง ์๋ฃ
๋์ ์ ํ์ ์ํ elif }
๋ค์ ๋ณตํฉ ๋ช ๋ น ์ค๋ช ์์ ๋ช ๋ น ๋ชฉ๋ก( ๋ช ๋ถ) ๊ทธ๊ฒ์
์์ฝ์ด ๋ค์ ์ค๋ ๋จ์ด๋ ์ธ๋ฏธ์ฝ๋ก , ์ค ๋ฐ๊ฟ ๋๋ a(๋ฌธ๋ฒ์ ์ผ๋ก
๋ง์) ์์ฝ์ด. ์๋ฅผ ๋ค์ด ๋ค์์ ๋ชจ๋ ์ ํจํฉ๋๋ค.
$ { ์์ฝ ํธ; ์์ฝ ๋ฐ; }
$ { ์์ฝ ํธ; ์์ฝ ๋ฐ }
$ { { ์์ฝ ํธ; ์์ฝ ๋ฐ; } }
์ด๊ฒ์ ์ ํจํ์ง ์์ต๋๋ค:
$ { ์์ฝ ํธ; ์์ฝ ๋ฐ }
(๋ช ๋ถ)
์คํํ๋ค ๋ช ๋ถ ์๋ธ์์์. ํ๊ฒฝ ๋ณ๊ฒฝ ์ฌํญ์ ์ ๋ฌํ๋ ์์์ ๋ฐฉ๋ฒ์ ์์ต๋๋ค.
์์ ์๋ก ๋์๊ฐ๋ ํ์ ์.
{ ๋ช ๋ถ; }
๋ณตํฉ ๊ตฌ์กฐ๋ฌผ; ๋ช ๋ถ ์คํ๋์ง๋ง ์๋ธ์์์๋ ์คํ๋์ง ์์ต๋๋ค. '{' ๋ฐ '}'์ ์ ์ํ์ญ์์ค.
๋ฉํ ๋ฌธ์๊ฐ ์๋ ์์ฝ์ด์ ๋๋ค.
์ผ์ด์ค ์๋ ์์ [[(] ๋ฌด๋ฌ [| ๋ฌด๋ฌ] ...) ๋ช ๋ถ ํฐ๋ฏธ๋ค์ดํฐ] ... ์ด์ญ
XNUMXD๋ดํ์ ์ผ์ด์ค ์ผ์น๋ฅผ ์๋ํ๋ ๋ฌธ ์๋ ์ง์ ๋ ๋ฌด๋ฌ; ๋ช ๋ถ
์ฑ๊ณต์ ์ผ๋ก ์ผ์น๋ ์ฒซ ๋ฒ์งธ ํจํด๊ณผ ์ฐ๊ด๋ ์คํ๋ฉ๋๋ค. ์ฌ์ฉ๋ ํจํด
์ผ์ด์ค ๋ช ๋ น๋ฌธ์ ํ์ผ ์ด๋ฆ ํจํด์ ์ฌ์ฉ๋๋ ๊ฒ๊ณผ ๋์ผํฉ๋๋ค.
'.'์ ๋ํ ์ ํ ๋ฐ '/'๊ฐ ์ญ์ ๋ฉ๋๋ค. ์ธ์ฉ๋์ง ์์ ๊ณต๋ฐฑ์
ํจํด์ด ๋ฒ๊ฒจ์ง ํ; ํจํด ๋ด์ ๋ชจ๋ ๊ณต๋ฐฑ์ ๋ฐ์ดํ๋ก ๋ฌถ์ด์ผ ํฉ๋๋ค. ๋ ๋ค
๋จ์ด์ ํจํด์ ๋งค๊ฐ๋ณ์, ๋ช ๋ น ๋ฐ ์ฐ์ ๋์ฒด์ ์ํฅ์ ๋ฐ์ต๋๋ค.
๋ฟ๋ง ์๋๋ผ ๋ฌผ๊ฒฐํ ๋์ฒด.
์ญ์ฌ์ ์ด์ ๋ก ์ฌ๋ ์ค๊ดํธ์ ๋ซ๋ ์ค๊ดํธ๋ฅผ ๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค. in ๊ณผ ๊ทธ C ์
์ผ์ด์ค $foo { *) ์์ฝ ๋ฐ ;; }.
๋ชฉ๋ก ํฐ๋ฏธ๋ค์ดํฐs๋:
';;' ๋ชฉ๋ก ๋ค์ ์ข ๋ฃํฉ๋๋ค.
';&' ๋ค์ ๋ชฉ๋ก์ผ๋ก ๋์ด๊ฐ๋๋ค.
';|' ๋๋จธ์ง ํจํด ๋ชฉ๋ก ํํ์ ํ๊ฐํฉ๋๋ค.
์ข ๋ฃ ์ํ ์ผ์ด์ค ์ง์ ์ ์คํ์ ๋ช ๋ถ; ์๋๋ผ๋ฉด ๋ช ๋ถ is
์คํ๋๋ฉด ์ข ๋ฃ ์ํ๋ XNUMX์ ๋๋ค.
for name [์ ์๋ ...]; ํ๋ค ๋ช ๋ถ; ์๋ฃ
๊ฐ๊ฐ ์๋ ์ง์ ๋ ๋จ์ด ๋ชฉ๋ก์์ ๋งค๊ฐ๋ณ์ name ๋จ์ด๋ก ์ค์ ๋๊ณ
๋ช ๋ถ ์คํ๋ฉ๋๋ค. ๋ง์ฝ์ in ๋จ์ด ๋ชฉ๋ก์ ์ง์ ํ๋ ๋ฐ ์ฌ์ฉ๋์ง ์๋ ์์น ๋งค๊ฐ๋ณ์
($1, $2 ๋ฑ)์ด ๋์ ์ฌ์ฉ๋ฉ๋๋ค. ์ญ์ฌ์ ์ธ ์ด์ ๋ก ๊ฐ๋ฐฉ ๋ฐ ํ์ ์ค๊ดํธ๋
๋์ ์ฌ์ฉ do ๊ณผ ํ ์ for i; { ์์ฝ $๋๋; }. ์ข ๋ฃ ์ํ for
statement๋ ๋ง์ง๋ง ์ข ๋ฃ ์ํ์ ๋๋ค. ๋ช ๋ถ; ๋ง์ฝ ๋ช ๋ถ ์คํ๋์ง ์์, ์ข ๋ฃ ์ํ
XNUMX์ ๋๋ค.
if ๋ช ๋ถ; ๊ทธ๋ ๋ช ๋ถ; [์๋ฆฌํ ๋ช ๋ถ; ๊ทธ๋ ๋ช ๋ถ;] ... [๋ ๋ค๋ฅธ ๋ช ๋ถ;] ํ์ด
์ฒซ ๋ฒ์งธ ์ข ๋ฃ ์ํ์ธ ๊ฒฝ์ฐ ๋ช ๋ถ ์ ๋ก, ๋ ๋ฒ์งธ ๋ช ๋ถ ์คํ๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด,
์ ์, ๋ช ๋ถ ๋ค์ ELIF, ์๋ ๊ฒฝ์ฐ ์ ์ฌํ ๊ฒฐ๊ณผ๋ก ์คํ๋ฉ๋๋ค. ๋ชจ๋
๋ค์ ๋ชฉ๋ก if ๊ณผ ELIFs ์คํจ(์ฆ, XNUMX์ด ์๋ ์ํ๋ก ์ข ๋ฃ), ๋ช ๋ถ
๋ค์ ๊ทธ๋ ์ง ์์ผ๋ฉด ์คํ๋ฉ๋๋ค. ์ข ๋ฃ ์ํ if ์ง์ ์ ๋น
์กฐ๊ฑด๋ถ์ ๋ช ๋ถ ๊ทธ๊ฒ์ ์คํ๋ฉ๋๋ค. ์กฐ๊ฑด์ด ์๋ค๋ฉด ๋ช ๋ถ ์คํ๋๊ณ ์ข ๋ฃ
์ํ๋ XNUMX์ ๋๋ค.
๊ณ ๋ฅด๋ค name [์ ์๋ ...]; ํ๋ค ๋ช ๋ถ; ์๋ฃ
XNUMXD๋ดํ์ ๊ณ ๋ฅด๋ค ๋ฌธ์ ์ฌ์ฉ์์๊ฒ ๋ฉ๋ด๋ฅผ ํ์ํ๋ ์๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๊ทธ ์ค์์ ์ ํํฉ๋๋ค. ์ง์ ๋ ์ด๊ฑฐํ ๋ชฉ๋ก ์๋(s)์ ์ธ์๋จ
ํ์ค ์ค๋ฅ ๋ค์์ ํ๋กฌํํธ๊ฐ ํ์๋ฉ๋๋ค(PS3: ์ผ๋ฐ์ ์ผ๋ก '#? '). ์ ํด๋นํ๋ ์ซ์
๊ทธ๋ฐ ๋ค์ ์ด๊ฑฐ๋ ๋จ์ด ์ค ํ๋๋ฅผ ํ์ค ์ ๋ ฅ์์ ์ฝ์ต๋๋ค. name ๋ฐ๋ ์ฌ๋ ์ค์
์ ํํ ๋จ์ด(๋๋ ์ ํ์ด ์ ํจํ์ง ์์ ๊ฒฝ์ฐ ์ค์ ํด์ ), REPLY๋ ์ฝ์ ๋ด์ฉ์ผ๋ก ์ค์ ๋ฉ๋๋ค.
(์ ํ/ํํ ๊ณต๋ฐฑ์ด ์ ๊ฑฐ๋จ) ๋ฐ ๋ช ๋ถ ์คํ๋ฉ๋๋ค. ๋น ์ค(์:
XNUMX๊ฐ ์ด์์ IFS ์ฅํ )์ด ์ ๋ ฅ๋๋ฉด ์คํํ์ง ์๊ณ ๋ฉ๋ด๊ฐ ๋ค์ ์ธ์๋ฉ๋๋ค. ๋ช ๋ถ.
์ธ์ ๋ค ๊ณต์ ํ๋งค์ ์ธ ๋ช ๋ถ REPLY๊ฐ NULL์ด๋ฉด ์ด๊ฑฐ๋ ๋ชฉ๋ก์ด ์ธ์๋๊ณ ํ๋กฌํํธ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ธ์ ๋ฑ์ด ์์ต๋๋ค. ์ด ํ๋ก์ธ์ค๋ ํ์ผ ๋์ ์ฝ์ ๋๊น์ง ๊ณ์๋ฉ๋๋ค.
์์ ๋๊ฑฐ๋ ํ๋ค ๋ฌธ์ ๋ฃจํ ๋ด์์ ์คํ๋ฉ๋๋ค. "๋จ์ด๋ก ..."์ธ ๊ฒฝ์ฐ
์๋ตํ๋ฉด ์์น ๋งค๊ฐ๋ณ์๊ฐ ์ฌ์ฉ๋ฉ๋๋ค(์: $1, $2 ๋ฑ). ์ญ์ฌ์ ์ผ๋ก
์ด์ ๋๋ฌธ์ ์ฌ๋ ์ค๊ดํธ์ ๋ซ๋ ์ค๊ดํธ๋ฅผ ๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค. do ๊ณผ ํ ์ ๊ณ ๋ฅด๋ค i; {
์์ฝ $๋๋; }. ์ข ๋ฃ ์ํ ๊ณ ๋ฅด๋ค ๋ฌธ์ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ XNUMX์ ๋๋ค. ํ๋ค ์ง์ ์
๋ฃจํ๋ฅผ ์ข ๋ฃํ๋ ๋ฐ ์ฌ์ฉ๋๋ฉฐ, ๊ทธ๋ ์ง ์์ผ๋ฉด XNUMX์ด ์๋๋๋ค.
๊น์ง ๋ช ๋ถ; ~ํ๋ค ๋ช ๋ถ; ์๋ฃ
์ด๊ฒ์ ๋ค์๊ณผ ๊ฐ์ด ์๋ํฉ๋๋ค ๋์, ์ข ๋ฃ ์ํ์ธ ๋์์๋ง ๋ณธ๋ฌธ์ด ์คํ๋๋ค๋ ์ ์ ์ ์ธํ๊ณ
์ฒซ๋ฒ์งธ ๋ช ๋ถ XNUMX์ด ์๋๋๋ค.
๋์ ๋ช ๋ถ; ~ํ๋ค ๋ช ๋ถ; ์๋ฃ
A ๋์ ๋ฏธ๋ฆฌ ํ์ธ๋ ๋ฃจํ์ ๋๋ค. ๊ทธ๊ฒ์ ๋ณธ๋ฌธ์ ์ข ๋ฃ ์ํ๋งํผ ์์ฃผ ์คํ๋ฉ๋๋ค.
์ฒซ๋ฒ์งธ ๋ช ๋ถ XNUMX์ ๋๋ค. ์ข ๋ฃ ์ํ ๋์ statement๋ ๋ง์ง๋ง ์ข ๋ฃ ์ํ์ ๋๋ค.
์ ๋ช ๋ถ ๋ฃจํ ๋ณธ๋ฌธ์์; ๋ณธ๋ฌธ์ด ์คํ๋์ง ์์ผ๋ฉด ์ข ๋ฃ ์ํ๋
์ ๋ก.
๊ธฐ๋ฅ name { ๋ช ๋ถ; }
๊ธฐ๋ฅ์ ์ ์ํฉ๋๋ค name (์ฐธ์กฐ ๊ธฐ๋ฅ ์๋์). ์ง์ ๋ ๋ฆฌ๋๋ ์ ์ ์ ์ํ์ญ์์ค.
ํจ์ ์ ์ ํ ํจ์๊ฐ ์คํ๋ ๋๋ง๋ค ์ํ๋ฉ๋๋ค.
ํจ์ ์ ์๊ฐ ์คํ๋ฉ๋๋ค.
name() ๋ช ๋ น
๋๋ถ๋ถ ๋์ผ ๊ธฐ๋ฅ (์ฐธ์กฐ ๊ธฐ๋ฅ ์๋์). ๋ค์ ๊ณต๋ฐฑ(๊ณต๋ฐฑ ๋๋ ํญ)
name ๋๋ถ๋ถ ๋ฌด์๋ฉ๋๋ค.
๊ธฐ๋ฅ name() { ๋ช ๋ถ; }
๊ฐ์ name() (์ธ๊ฒ ๋๋ฆฌ๋ค์ฃผ์). ๊ทธ๋งํผ ๊ธฐ๋ฅ ํค์๋๋ ๋ฌด์๋ฉ๋๋ค.
์๊ฐ [-p] [๊ด๋ก]
XNUMXD๋ดํ์ ๋ช ๋ น ์คํ ์น์ ์์๋ ๋ค์์ ์ค๋ช ํฉ๋๋ค. ์๊ฐ ์์ฝ์ด.
(( ํํ ))
์ฐ์ ์ ํํ ํ๊ฐ๋๋ค; "let ์"๊ณผ ๋์ผํฉ๋๋ค(์ฐธ์กฐ
์ฐ์ ํํ ๊ทธ๋ฆฌ๊ณ ํ์ ๋ช ๋ น, ์๋) ๋ณตํฉ ๊ตฌ์กฐ์์.
[[ ํํ ]]
๋ฐ๋ ์ ์ฌ test ๊ณผ [ ... ] ๋ช ๋ น(๋์ค์ ์ค๋ช ), ๋ค์ ํฌํจ
์์ธ:
ยท ํ๋ ๋ถํ ๋ฐ ํ์ผ ์ด๋ฆ ์์ฑ์ ์ธ์์์ ์ํ๋์ง ์์ต๋๋ค.
ยท XNUMXD๋ดํ์ -a (๊ทธ๋ฆฌ๊ณ ) ๊ทธ๋ฆฌ๊ณ -o (OR) ์ฐ์ฐ์๋ ๊ฐ๊ฐ '&&' ๋ฐ '||'๋ก ๋์ฒด๋ฉ๋๋ค.
ยท ์ฐ์ฐ์(์: '-f', '=', '!')๋ ์ธ์ฉ ๋ถํธ๋ฅผ ์ฌ์ฉํ์ง ์์์ผ ํฉ๋๋ค.
ยท ๋งค๊ฐ๋ณ์, ๋ช ๋ น ๋ฐ ์ฐ์ ๋์ฒด๋ ํํ์์ด ๋ค์๊ณผ ๊ฐ์ด ์ํ๋ฉ๋๋ค.
'&&' ๋ฐ '||' ์ด์์.
์ด๊ฒ์ ๋ค์ ์ง์ ์์, $( ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์๋ง ํ๊ฐ๋ฉ๋๋ค.
ํ์ผ ํธ ์กด์ฌํ๊ณ ์ฝ์ ์ ์์:
$ [[ -r ํธ && $(
ยท '!=' ๋ฐ '=' ์์ ๋ ๋ฒ์งธ ํผ์ฐ์ฐ์๋ ํจํด์ ํ์ ์งํฉ์ ๋๋ค(์:
๋น๊ต [[ foobar = ์ ๋ง๋ก ]] ์ฑ๊ณต). ์ด๋ ๊ฐ์ ์ ์ผ๋ก๋ ์๋ํฉ๋๋ค.
$๋ฐ=ํธ๋ฐ; baz='f*r'
$[[ $bar = $baz ]]; ์์ฝ $?
$ [[ $bar = "$baz" ]]; ์์ฝ $?
๋๋๊ฒ๋ ์ฒซ ๋ฒ์งธ ๋น๊ต๋ ์ฑ๊ณตํ์ง๋ง ๋ ๋ฒ์งธ ๋น๊ต๋ ์ฑ๊ณตํ์ง ๋ชปํ์ต๋๋ค.
์ด๊ฒ์ ํ์ฌ ๋ชจ๋ extglob ๋ฉํ ๋ฌธ์์ ์ ์ฉ๋์ง ์์ต๋๋ค.
์ธ์ฉ
์ธ์ฉ ๋ถํธ๋ ์์ด ๋ฌธ์๋ ๋จ์ด๋ฅผ ํน๋ณํ๊ฒ ์ทจ๊ธํ๋ ๊ฒ์ ๋ฐฉ์งํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์๋ค
์ธ ๊ฐ์ง ์ธ์ฉ ๋ฐฉ๋ฒ. ๋จผ์ '\'๋ ๋ค์ ๋ฌธ์๋ฅผ ์ธ์ฉํฉ๋๋ค.
๋ผ์ธ์ ๋, ์ด ๊ฒฝ์ฐ '\'์ ์ค ๋ฐ๊ฟ์ด ๋ชจ๋ ์ ๊ฑฐ๋ฉ๋๋ค. ๋์งธ, ์ฑ๊ธ
์ธ์ฉ ๋ถํธ(โ'โ)๋ ๋ค์ ์์๋ฐ์ดํ๊น์ง ๋ชจ๋ ๊ฒ์ ์ธ์ฉํฉ๋๋ค(์ฌ๋ฌ ์ค์ ๊ฑธ์ณ ์์ ์ ์์). ์ ์งธ,
ํฐ๋ฐ์ดํ('"')๋ '$', '`' ๋ฐ '\'๋ฅผ ์ ์ธํ ๋ชจ๋ ๋ฌธ์๋ฅผ ์ด์ค์ผ์ดํ ์ฒ๋ฆฌ๋์ง ์์ ๋ค์ ๋ฌธ์๊น์ง ์ธ์ฉํฉ๋๋ค.
ํฐ๋ฐ์ดํ. ํฐ๋ฐ์ดํ ์์ '$' ๋ฐ '`'๋ ์ผ๋ฐ์ ์ธ ์๋ฏธ๋ฅผ ๊ฐ์ต๋๋ค(์: ๋งค๊ฐ๋ณ์,
์ฐ์ ๋๋ ๋ช ๋ น ๋์ฒด) ๊ฒฐ๊ณผ์ ๋ํด ํ๋ ๋ถํ ์ด ์ํ๋์ง ์๋ ๊ฒฝ์ฐ ์ ์ธ
ํฐ ๋ฐ์ดํ๋ก ๋ฌถ์ธ ๋์ฒด ๋ฐ ์ด์ ์คํ์ผ์ ๋ช ๋ น ๋์ฒด ํ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ํฐ๋ฐ์ดํ์ ๋ฐฑ์ฌ๋์ ์ธ์ฉ ์ฌ์ฉ ๊ฐ๋ฅ. ํฐ๋ฐ์ดํ๋ก ๋ฌถ์ธ ๋ฌธ์์ด ์์ '\'๊ฐ ์๋ ๊ฒฝ์ฐ
๋ค์ '\', '$', '`' ๋๋ '"'๊ฐ ์ค๋ฉด ๋ ๋ฒ์งธ ๋ฌธ์๋ก ๋์ฒด๋ฉ๋๋ค.
๊ฐํ์ ์ํด '\'์ ๊ฐํ์ด ๋ชจ๋ ์ ๊ฑฐ๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด '\'์
๋ค์ ๋ฌธ์๋ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค.
์์ ๋ฐ์ดํ๋ก ๋ฌถ์ธ ๋ฌธ์์ด ์์ ๋ฐ์ดํ ์๋ '$'๊ฐ ์์ผ๋ฉด C ์คํ์ผ ๋ฐฑ์ฌ๋์ ํ์ฅ(์ฐธ์กฐ:
์ดํ) ์ ์ฉ(๋ด๋ถ ์์๋ฐ์ดํ ๋ฌธ์๋ ์ด์ค์ผ์ดํ ๊ฐ๋ฅํ๋ฉฐ ์ข ๋ฃ๋์ง ์์)
๊ทธ๋ฐ ๋ค์ ๋ฌธ์์ด); ํ์ฅ๋ ๊ฒฐ๊ณผ๋ ์์๋ฐ์ดํ๋ก ๋ฌถ์ธ ๋ค๋ฅธ ๋ฌธ์์ด๋ก ์ฒ๋ฆฌ๋ฉ๋๋ค. ๋ง์ฝ
ํฐ ๋ฐ์ดํ๋ก ๋ฌถ์ธ ๋ฌธ์์ด ์์ ๋ฐ์ดํ ์๋ '$'๊ฐ ์์ผ๋ฉด '$'๋ ๋ฌด์๋ฉ๋๋ค.
๋ฐฑ ์ฌ๋์ ํ์ฅ
๋ฐฑ์ฌ๋์๊ฐ ํ์ฅ๋ ์์น์์ ํน์ C ๋ฐ AT&T UNIX KSH ๋๋ GNU ์ธ๊ฒ ๋๋ฆฌ๋ค ์คํ์ผ
์ด์ค์ผ์ดํ๊ฐ ๋ฒ์ญ๋ฉ๋๋ค. ์ฌ๊ธฐ์๋ '\a', '\b', '\f', '\n', '\r', '\t', '\U########',
'\u####' ๋ฐ '\v'. '\U########' ๋ฐ '\u####'์์ "#"์ XNUMX์ง์๋ฅผ ์๋ฏธํฉ๋๋ค.
์ต๋ 8๊ฐ ๋๋ XNUMX๊ฐ๊น์ง ์์ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ด์ค์ผ์ดํ๋ ์ ๋์ฝ๋ ์ฝ๋ํฌ์ธํธ๋ฅผ UTF-XNUMX๋ก ๋ณํํฉ๋๋ค.
๋ํ '\E' ๋ฐ '\e'๋ ์ด์ค์ผ์ดํ ๋ฌธ์๋ก ํ์ฅ๋ฉ๋๋ค.
. ์ธ์ ๋ด์ฅ ๋ชจ๋, '\"', '\'' ๋ฐ '\?' ๋ช ์์ ์ผ๋ก ์ ์ธ๋จ, XNUMX์ง์ ์ํ์ค
์ซ์ 0('\XNUMX###')์ด ์ ๋์ฌ๋ก ๋ถ์ ์ต๋ XNUMX๊ฐ์ XNUMX์ง์ "#" ์์์ด ์์ด์ผ ํฉ๋๋ค.
XNUMX์ง์ ์ํ์ค '\x##'๋ ์ต๋ XNUMX๊ฐ์ XNUMX์ง์ "#"๋ก ์ ํ๋ฉ๋๋ค. ๋ ๋ค
XNUMX์ง์ ๋ฐ XNUMX์ง์ ์ํ์ค๋ ์์ XNUMX์ง์๋ก ๋ณํ๋ฉ๋๋ค. '\#', ์ฌ๊ธฐ์ #์ ์์ ํด๋นํ์ง ์์ต๋๋ค.
\#๋ก ๋ณํ๋ฉ๋๋ค(๋ฐฑ์ฌ๋์๊ฐ ์ ์ง๋จ).
C ์คํ์ผ ๋ชจ๋์ ๋ฐฑ์ฌ๋์ ํ์ฅ์ ์ฝ๊ฐ ๋ค๋ฆ ๋๋ค. XNUMX์ง์ ์ํ์ค '\###'์๋
XNUMX์์ ์ต๋ XNUMX๊ฐ์ XNUMX์ง์ "#" ์ ๋์ฌ๋ฅผ ๋ถ์ธ ์ซ์ XNUMX์ด ์์ผ๋ฉฐ ์์ ์ฅํ ์ ์์ฑํฉ๋๋ค.
XNUMX์ง์ ์ํ์ค '\x#*'๋ ๊ฐ๋ฅํ ํ ๋ง์ XNUMX์ง์ "#"์ ํ์์ค๋ฝ๊ฒ ๋จน๊ณ
XNUMX์ง์๊ฐ ์๋ ์ฒซ ๋ฒ์งธ ์ซ์๋ก ์ข ๋ฃํฉ๋๋ค. ์ด๋ค์ ์ ๋์ฝ๋ ์ฝ๋ํฌ์ธํธ๋ฅผ ๋ค์์ผ๋ก ๋ณํํฉ๋๋ค.
UTF-8. ์ํ์ค '\c#'(์ฌ๊ธฐ์ "#"์ ์์์ ์ฅํ )๋ Ctrl-#(๊ธฐ๋ณธ์ ์ผ๋ก
'\c?'๋ฅผ ์๋ฏธํฉ๋๋ค. DEL์ด ๋๊ณ ๋๋จธ์ง๋ ๋ชจ๋ 0x1F์ ๋นํธ AND๋ฉ๋๋ค. ๋ง์ง๋ง์ผ๋ก '\#', ์ฌ๊ธฐ์
#์ ์์ ํด๋นํ์ง ์์ผ๋ฉฐ #(๋ฐฑ์ฌ๋์๊ฐ ์๋ฆผ)๋ก ๋ณํ๋ฉ๋๋ค.
์ค ๋ฐ๊ฟ.
๋ณ์นญ
๋ณ์นญ์๋ ์ผ๋ฐ ๋ช ๋ น ๋ณ์นญ๊ณผ ์ถ์ ๋ ๋ณ์นญ์ ๋ ๊ฐ์ง ์ ํ์ด ์์ต๋๋ค. ๋ช ๋ น ๋ณ์นญ
์ผ๋ฐ์ ์ผ๋ก ๊ธธ๊ฑฐ๋ ์์ฃผ ์ฌ์ฉ๋๋ ๋ช ๋ น์ ์ฝ์๋ก ์ฌ์ฉ๋ฉ๋๋ค. ๊ป์ง์ด ํฝ์ฐฝํ๋ค
์ฒซ ๋ฒ์งธ ๋จ์ด๋ฅผ ์ฝ์ ๋ ๋ช ๋ น ๋ณ์นญ(์ฆ, ๊ฐ์ ๋ณ์นญ ์ด๋ฆ์ผ๋ก ๋์ฒด)
๋ช ๋ น์. ํ์ฅ๋ ๋ณ์นญ์ ๋ ๋ง์ ๋ณ์นญ์ ํ์ธํ๊ธฐ ์ํด ๋ค์ ์ฒ๋ฆฌ๋ฉ๋๋ค. ๋ช ๋ น์ธ ๊ฒฝ์ฐ
๋ณ์นญ์ด ๊ณต๋ฐฑ์ด๋ ํญ์ผ๋ก ๋๋๋ฉด ๋ณ์นญ ํ์ฅ์ ์ํด ๋ค์ ๋จ์ด๋ ๊ฒ์ฌํฉ๋๋ค. ๊ทธ๋งํผ
๋ณ์นญ์ด ์๋ ๋จ์ด๊ฐ ๋ฐ๊ฒฌ๋๋ฉด ๋ณ์นญ ํ์ฅ ํ๋ก์ธ์ค๊ฐ ์ค์ง๋ฉ๋๋ค.
๋ฐ๊ฒฌ๋๊ฑฐ๋ ํ์ฌ ํ์ฅ ์ค์ธ ๋ณ์นญ ๋จ์ด๊ฐ ๋ฐ๊ฒฌ๋ ๊ฒฝ์ฐ. ๋ณ์นญ์
ํนํ ๋ํํ ๊ธฐ๋ฅ: ์คํฌ๋ฆฝํธ์
์ด๋ค ๊ฒฝ์ฐ์๋ ๋ ์ฑ ์ค์ ๋ณ์นญ์ด ํ์ฅ๋๋ฏ๋ก ๋ณ์นญ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
์ ์์์ ๋ช ๋ น ํธ๋ฆฌ๋ฅผ ๋ถ๋ฆฌํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ณ์นญ์ ์ฐพ์ ์ ์์ต๋๋ค.
๋์ ๋๊ฒ, ๋ช ๋ น ๋ชฉ๋ก(์ธ๋ฏธ์ฝ๋ก ์ผ๋ก ๊ตฌ๋ถ, ๋ช ๋ น ๋์ฒด์์๋ ์ ์ค๋ก ๊ตฌ๋ถ๋จ)
ํ๋์ ๋์ผํ ๊ตฌ๋ฌธ ๋ถ์ ํธ๋ฆฌ์ผ ์ ์์ต๋๋ค.
๋ค์ ๋ช ๋ น ๋ณ์นญ์ ์ ธ์์ ์๋์ผ๋ก ์ ์๋ฉ๋๋ค.
autoload='\typeset -fu'
๊ธฐ๋ฅ='\typeset -f'
hash='\builtin ๋ณ์นญ -t'
ํ์คํ ๋ฆฌ='\builtin fc -l'
์ ์='\typeset -i'
๋ก์ปฌ='\typeset'
๋ก๊ทธ์ธ='\exec ๋ก๊ทธ์ธ'
nameref='\typeset -n'
nohup='๋ ธํ'
r='\builtin fc -e -'
type='\builtin whence -v'
์ถ์ ๋ ๋ณ์นญ์ ์ฌ์ฉํ๋ฉด ์์ด ํน์ ๋ช ๋ น์ ์ฐพ์ ์์น๋ฅผ ๊ธฐ์ตํ ์ ์์ต๋๋ค. ์ฒซ๋ฒ์งธ
์ ธ์ด ์ถ์ ๋ ๋ณ์นญ์ผ๋ก ํ์๋ ๋ช ๋ น์ ๋ํ ๊ฒฝ๋ก ๊ฒ์์ ์ํํ ๋
๋ช ๋ น์ ์ ์ฒด ๊ฒฝ๋ก. ๋ค์์ ๋ช ๋ น์ด ์คํ๋ ๋ ์์ ๋ค์์ ํ์ธํฉ๋๋ค.
์ ์ฅ๋ ๊ฒฝ๋ก๊ฐ ์ฌ์ ํ ์ ํจํ์ง ํ์ธํ๊ณ ์ ํจํ ๊ฒฝ์ฐ ๊ฒฝ๋ก ๊ฒ์์ ๋ฐ๋ณตํ์ง ์์ต๋๋ค.
์ถ์ ๋ ๋ณ์นญ์ ๋ค์์ ์ฌ์ฉํ์ฌ ๋์ดํ๊ณ ์์ฑํ ์ ์์ต๋๋ค. ๋ณ๋ช -t. PATH ๋ณ๊ฒฝ์ ์ ์ํ์ญ์์ค.
๋งค๊ฐ๋ณ์๋ ์ถ์ ๋ ๋ชจ๋ ๋ณ์นญ์ ๋ํด ์ ์ฅ๋ ๊ฒฝ๋ก๋ฅผ ์ง์๋๋ค. ๋ง์ฝ ํธ๋์ฌ ์ต์ ์ด ์ค์ ๋จ
(์ฆ ์ธํธ -o ํธ๋์ฌ or ์ธํธ -h), ์์ ๋ชจ๋ ๋ช ๋ น์ ์ถ์ ํฉ๋๋ค. ์ด ์ต์ ์ด ์ค์ ๋จ
๋น๋ํํ ์์ ๊ฒฝ์ฐ ์๋์ผ๋ก. ๋ํํ ์ ธ์ ๊ฒฝ์ฐ ๋ค์๋ง
๋ช ๋ น์ด ์๋์ผ๋ก ์ถ์ ๋ฉ๋๋ค. ๋ฐฉ๋ฒ(1) cc(1) chmod๋ฅผ(1) cp(1) ๋ฐ์ดํฐ(1) ed(1)
์ด๋งฅ์ค(1) GREP(1) ls(1) ํ์ธ(1) mv(1) pr(1) rm(1) SED(1) sh(1) vi(1) ๋ฐ ๋๊ตฌ(1).
์นํ
๋จ์ ๋ช ๋ น์ ์คํํ ๋ ์์ด ์ํํ๋ ์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ๋์ฒด๋ฅผ ์ํํ๋ ๊ฒ์ ๋๋ค.
๋ช ๋ น์ ๋ง. ๋งค๊ฐ๋ณ์, ๋ช ๋ น ๋ฐ ๋์ฒด์ ์ธ ๊ฐ์ง ์ ํ์ด ์์ต๋๋ค.
์ฐ์. ๋ค์ ์น์ ์์ ์์ธํ ์ค๋ช ํ๋ ๋งค๊ฐ๋ณ์ ๋์ฒด
$ ํ์์ ์ทจํ์ญ์์คname ๋๋ ${...}; ๋ช ๋ น ๋์ฒด๋ $( ํ์์ ์ทจํฉ๋๋ค.๋ช ๋ น) ๋๋
(๋ ์ด์ ์ฌ์ฉ๋์ง ์์) `๋ช ๋ น` ๋๋ (ํ์ฌ ํ๊ฒฝ์์ ์คํ) ${ ๋ช ๋ น;} ๋ฐ ์คํธ๋ฆฝ
ํํ ๊ฐํ; ๊ทธ๋ฆฌ๊ณ ์ฐ์ ์นํ์ $((ํํ)). ๊ตฌ๋ฌธ ๋ถ์
ํ์ฌ ํ๊ฒฝ ๋ช ๋ น ๋์ฒด๋ ์ฌ๋ ๋ถ๋ถ ๋ค์ ๊ณต๋ฐฑ, ํญ ๋๋ ์ค ๋ฐ๊ฟ์ด ํ์ํฉ๋๋ค.
์ค๊ดํธ์ ๋ซ๋ ์ค๊ดํธ๊ฐ ํค์๋๋ก ์ธ์๋๋๋ก ํฉ๋๋ค(์: ๊ฐํ ๋ฌธ์๊ฐ ์์ ์ต๋๋ค).
๋๋ ์ธ๋ฏธ์ฝ๋ก ). funsubs(ํจ์ ๋์ฒด)๋ผ๊ณ ๋ ํ๋ฉฐ ๋ค์๊ณผ ๊ฐ์ด ๋์ํฉ๋๋ค.
๊ทธ ๊ธฐ๋ฅ ์ง๋ฐฉ์ ๊ณผ return ์ผ, ๊ทธ๋ฆฌ๊ณ ๊ทธ ์์์ ์ถ๊ตฌ ์์ ์์ ์ข ๋ฃํฉ๋๋ค. ๊ป๋ฐ๊ธฐ
์ต์ ์ด ๊ณต์ ๋ฉ๋๋ค.
๋์ฒด์ ๋ ๋ค๋ฅธ ๋ณํ์ valsubs(๊ฐ ๋์ฒด) ${|๋ช ๋ น;} ์ด๋ค
๋ํ funsubs์ ๊ฐ์ด ํ์ฌ ํ๊ฒฝ์์ ์คํ๋์ง๋ง ๋ถ๋ชจ์ I/O๋ฅผ ๊ณต์ ํฉ๋๋ค.
๋์ , ์ด๊ธฐ์ ๋น์ด ์๋ ํํ์ ๋ก์ปฌ ๋ณ์ REPLY๊ฐ ๋ฌด์์ด๋ ํ๊ฐํฉ๋๋ค.
์ด๋ด๋ก ์ค์ ๋ช ๋ นs.
ํฐ๋ฐ์ดํ ๋ฐ์ ๋์ฒด๊ฐ ๋ํ๋๋ฉด ๋์ฒด ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก IFS์ ํ์ฌ ๊ฐ์ ๋ฐ๋ผ ๋จ์ด ๋๋ ํ๋ ๋ถํ ์ด ์ ์ฉ๋ฉ๋๋ค.
๋งค๊ฐ๋ณ์. IFS ๋งค๊ฐ๋ณ์๋ ๋ฌธ์์ด์ ๋ถํดํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ฅํ ๋ชฉ๋ก์ ์ง์ ํฉ๋๋ค.
์ฌ๋ฌ ๋จ์ด๋ก; IFS์ ๋ํ๋๋ ์ธํธ ์คํ์ด์ค, ํญ ๋ฐ ๊ฐํ์ ๋ชจ๋ โโ์ฅํ
์ฅํ ์ "IFS ๊ณต๋ฐฑ"์ด๋ผ๊ณ ํฉ๋๋ค. ํ๋ ์ด์์ IFS ๊ณต๋ฐฑ ์ฅํ ์ํ์ค
XNUMX๊ฐ ๋๋ XNUMX๊ฐ์ ๋นIFS ๊ณต๋ฐฑ ์ฅํ ๊ณผ ์กฐํฉํ์ฌ ํ๋๋ฅผ ๊ตฌ๋ถํฉ๋๋ค. ํน๋ณํ ๊ฒฝ์ฐ๋ก,
์ ํ ๋ฐ ํํ IFS ๊ณต๋ฐฑ์ด ์ ๊ฑฐ๋ฉ๋๋ค(์: ์ ํ ๋๋ ํํ ๋น ํ๋๋
๊ทธ๊ฒ์ ์ํด ์์ฑ๋จ); ์ ํ ๋๋ ํํ ๋นIFS ๊ณต๋ฐฑ์ ๋น ํ๋๋ฅผ ์์ฑํฉ๋๋ค.
์: IFS๊ฐ "๋ก ์ค์ ๋ ๊ฒฝ์ฐ :โ, VAR์ ๋ค์๊ณผ ๊ฐ์ด ์ค์ ๋ฉ๋๋ค.
โ ใ : B::Dโ, $VAR๋ฅผ ๋์ฒดํ๋ฉด ๋ค์๊ณผ ๊ฐ์ XNUMX๊ฐ์ ํ๋๊ฐ ์์ฑ๋ฉ๋๋ค.
'B', ''(๋น ํ๋) ๋ฐ 'D'. IFS ๋งค๊ฐ๋ณ์๊ฐ ๋น ๊ฐ์ผ๋ก ์ค์ ๋ ๊ฒฝ์ฐ
๋ฌธ์์ด, ํ๋ ๋ถํ ์ด ์ํ๋์ง ์์ต๋๋ค. ์ค์ ๋์ง ์์ ๊ฒฝ์ฐ ์คํ์ด์ค, ํญ ๋ฐ
๊ฐํ์ด ์ฌ์ฉ๋ฉ๋๋ค.
๋ํ ํ๋ ๋ถํ ์ ๋ค์์ ์ฆ๊ฐ์ ์ธ ๊ฒฐ๊ณผ์๋ง ์ ์ฉ๋ฉ๋๋ค.
์นํ. ์ด์ ์๋ฅผ ์ฌ์ฉํ์ฌ $VAR:E๋ฅผ ๋์ฒดํ๋ฉด
ํ๋: 'A', 'B', '' ๋ฐ 'D:E', 'A', 'B', '', 'D' ๋ฐ 'E'๊ฐ ์๋. ์ด ๋์์ POSIX
์ค์ํ์ง๋ง ํ๋ ๋ถํ ์ ์ํํ๋ ๋ค๋ฅธ ์ผ๋ถ ์ ธ ๊ตฌํ๊ณผ ํธํ๋์ง ์์
๋์ฒด๊ฐ ํฌํจ๋ ๋จ์ด์์ IFS๋ฅผ ์ผ๋ฐ ๊ณต๋ฐฑ ๊ตฌ๋ถ ๊ธฐํธ๋ก ์ฌ์ฉํฉ๋๋ค.
๋์ฒด ๊ฒฐ๊ณผ๋ ๋ฌ๋ฆฌ ๋ช ์๋์ง ์๋ ํ ์ค๊ดํธ ํ์ฅ์ ๋์์ ๋๋ค.
๋ฐ ํ์ผ ์ด๋ฆ ํ์ฅ(์๋ ๊ด๋ จ ์น์ ์ฐธ์กฐ).
๋ช ๋ น ๋์ฒด๋ ๋ค์๊ณผ ๊ฐ์ ์ง์ ๋ ๋ช ๋ น์ ์ํด ์์ฑ๋ ์ถ๋ ฅ์ผ๋ก ๋์ฒด๋ฉ๋๋ค.
์๋ธ์์์ ์คํ $(๋ช ๋ น) ๋ฐ ${|๋ช ๋ น;} ๋ฐ ${ ๋ช ๋ น;} ๋์ฒด, ์ ์
์ธ์ฉ ๊ท์น์ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์ ์ฌ์ฉ๋ฉ๋๋ค. ๋ช ๋ น ๊ตฌ๋ฌธ ๋ถ์๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ `๋ช ๋ น` ํ์,
'\' ๋ค์์ '$', '`' ๋๋ '\' ์ค ํ๋๊ฐ ์ ๊ฑฐ๋ฉ๋๋ค(๋์ฒด๊ฐ ์ผ๋ถ์ผ ๋ '"'์ ๊ฐ์ด).
ํฐ๋ฐ์ดํ ๋ฌธ์์ด); ๋ฐฑ์ฌ๋์ '\' ๋ค์์ ์ค๋ ๋ค๋ฅธ ๋ฌธ์๋ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค.
๋ช ๋ น ๋์ฒด์ ํน์ํ ๊ฒฝ์ฐ๋ก ๋ค์ ํ์์ ๋ช ๋ นํ์ผ ๋ก ํด์๋๋ค
์ ๋ด์ฉ์ ๋์ฒดํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ํ์ผ. ๊ทธ ์ฃผ $( ๊ฐ์ ํจ๊ณผ๊ฐ ์์ต๋๋ค $(๊ณ ์์ด ํธ).
์ผ๋ถ ์์ ๋ช ๋ น ๋์ฒด๋ฅผ ์ํด ์ฌ๊ท ๊ตฌ๋ฌธ ๋ถ์๊ธฐ๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฏ๋ก
ํน์ ๊ตฌ์กฐ์ ๋ํ ์คํจ; ํด๋ํ ์ ์๋๋ก ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก 'x=$(cat) <<"EOF"'(๋๋
์ค ๋ฐ๊ฟ ์ ์ง 'x=<<"EOF"' ํ์ฅ๋ช ) ๋์ ๋จ์ํ ๋ฌธ์์ด์ ํ๋ฃจ๋ฃฉ ์๋ฆฌ๋ด์ด ์ฝ์ต๋๋ค. IEEE ํ์ค 1003.1
(โPOSIX.1โ)์ 'x=$(case $foo in (bar) echo $bar ํ์์ case ๋ฌธ์ ์ฌ์ฉํ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
;; (*) ์์ฝ $baz ;; esac)' ๋์ ์๋ํ์ง๋ง ์ด์ ๋ํ ์์ ๋ก ์ ๊ณต๋์ง๋ ์์ต๋๋ค.
ํด๋์ฑ ๋ฌธ์ .
x=$(bar์ ๊ฒฝ์ฐ $foo) echo $bar ;; *) ์์ฝ $baz ;; ์์ญ)
# ์์ ๊ตฌ๋ฌธ์ ์ด์ ์์์ ๊ตฌ๋ฌธ ๋ถ์์ ์คํจํ์ต๋๋ค. ์๋๋ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋๋ค
x=$(ํ๊ฐ $(๊ณ ์์ด)) <<"EOF"
case $foo in bar) echo $bar ;; *) ์์ฝ $baz ;; ์์ญ
EOF
์ฐ์ ๋์ฒด๋ ์ง์ ๋ ํํ์์ ๊ฐ์ผ๋ก ๋์ฒด๋ฉ๋๋ค. ์ ์ํ
์๋ฅผ ๋ค์ด ๋ช ๋ น ์ธ์ $((2+3*4)) 14๋ฅผ ํ์ํฉ๋๋ค. ์ฐธ์กฐ ์ฐ์ ํํ A์ ๋ํ
ํํ์ ๋ํ ์ค๋ช .
ํ๋ผ๋ฏธํฐ
๋งค๊ฐ๋ณ์๋ ์ ๋ณ์์ ๋๋ค. ๊ฐ์ ํ ๋นํ ์ ์๊ณ ํด๋น ๊ฐ์ ์ก์ธ์คํ ์ ์์ต๋๋ค.
๋งค๊ฐ๋ณ์ ๋์ฒด๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋งค๊ฐ๋ณ์ ์ด๋ฆ์ ํน์ ๋จ์ผ
์๋์ ์ค๋ช ๋ ๊ตฌ๋์ ๋๋ ์ซ์ ๋ฌธ์ ๋งค๊ฐ๋ณ์ ๋๋ ๋ฌธ์ ๋ค์ XNUMX ๋๋
๋ ๋ง์ ๋ฌธ์ ๋๋ ์ซ์('_'๋ ๋ฌธ์๋ก ๊ณ์ฐ). ํ์์ ํ์์ ๋ฐฐ์ด๋ก ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
ํ์์ ๋ฐฐ์ด ์ธ๋ฑ์ค๋ฅผ ์ถ๊ฐํ์ฌ [ํน๊ธ] ์ด๋ ํน๊ธ ์ฐ์ ์์ด๋ค.
๋ฐฐ์ด ์ธ๋ฑ์ค mksh 0์์ 4294967295๊น์ง์ ๋ฒ์๋ก ์ ํ๋ฉ๋๋ค. ๊ทธ๊ฑด,
์ด๋ค์ 32๋นํธ ๋ถํธ ์๋ ์ ์์ ๋๋ค.
๋งค๊ฐ๋ณ์ ๋์ฒด๋ $ ํ์์ ์ฌ์ฉํฉ๋๋ค.name, ${name} ๋๋ ${name[ํน๊ธ]} ์ด๋ name ํ๋
๋งค๊ฐ๋ณ์ ์ด๋ฆ. ๋ชจ๋ ๋ฐฐ์ด ์์๋ฅผ ${๋ก ๋์ฒดname[*]} ๋ฐ ${name[@]} ์ํ
์์น ๋งค๊ฐ๋ณ์์ ๊ฒฝ์ฐ $* ๋ฐ $@์ ๋์ผํฉ๋๋ค. ๋์ฒด๊ฐ ์ํ๋๋ ๊ฒฝ์ฐ
๋งค๊ฐ๋ณ์(๋๋ ๋ฐฐ์ด ๋งค๊ฐ๋ณ์ ์์)๊ฐ ์ค์ ๋์ง ์์ ๊ฒฝ์ฐ null ๋ฌธ์์ด๋ก ๋์ฒด๋ฉ๋๋ค.
๊ทธ๋ ์ง ์์ผ๋ฉด ๋ช ์ฌ ์ต์ (์ธํธ -o ๋ช ์ฌ or ์ธํธ -u)๊ฐ ์ค์ ๋๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก ๋งค๊ฐ๋ณ์์ ๊ฐ์ ํ ๋นํ ์ ์์ต๋๋ค. ์ฒซ์งธ, ์์ ์์์ ์ผ๋ก ์ค์ ํฉ๋๋ค.
'#', 'PWD' ๋ฐ '$'์ ๊ฐ์ ์ผ๋ถ ๋งค๊ฐ๋ณ์; ์ด๊ฒ์ ํน๋ณํ ๋จ์ผ ๋ฌธ์๋ฅผ ์ฌ์ฉํ ์ ์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ๋๋ค.
๋งค๊ฐ๋ณ์๊ฐ ์ค์ ๋ฉ๋๋ค. ๋์งธ, ๋ค์ ์์น์ ์๋ ์ ธ์ ํ๊ฒฝ์์ ๋งค๊ฐ๋ณ์๋ฅผ ๊ฐ์ ธ์ต๋๋ค.
์๋. ์ ์งธ, ๋ช ๋ น์ค์์ ๋งค๊ฐ๋ณ์์ ๊ฐ์ ํ ๋นํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค. FOO=๋ฐ
๋งค๊ฐ๋ณ์ "FOO"๋ฅผ "bar"๋ก ์ค์ ํฉ๋๋ค. ์ฌ๋ฌ ๋งค๊ฐ๋ณ์ ํ ๋น์ด ๋จ์ผ์ ์ ๊ณต๋ ์ ์์ต๋๋ค.
๋ช ๋ น์ค ๋ค์ ๊ฐ๋จํ ๋ช ๋ น์ด ์ฌ ์ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ํ ๋น์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ช ๋ น์ด ์ง์๋๋ ๋์์๋ง ์ ํจํฉ๋๋ค(์ด๋ฌํ ํ ๋น๋ ๋ด๋ณด๋ด์ง๋๋ค. ์ฐธ์กฐ).
์ด์ ๋ํ ์๋ฏธ๋ ์๋ ์ฐธ์กฐ). ๋งค๊ฐ๋ณ์ ์ด๋ฆ๊ณผ '='๋ ๋ชจ๋
์์ด ๋งค๊ฐ๋ณ์ ์ง์ ์ ์ธ์ํ๋๋ก ๋ฐ์ดํ๊ฐ ์์ต๋๋ค. ๊ตฌ์กฐ FOO+=๋ฐ์ฆ ๋ํ
์ธ์; ์ด์ ๊ฐ๊ณผ ์ ๊ฐ์ด ์ฆ์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ๋ค ๋ฒ์งธ ์ค์ ๋ฐฉ๋ฒ
๋งค๊ฐ๋ณ์๋ ์์ถ, ๊ธ๋ก๋ฒ, ์ฝ๊ธฐ ์ ์ฉ๋ฐ ์กฐํ ๋ช ๋ น; ๊ทธ๋ค์ ์ฐธ์กฐ
์ ์ค๋ช ๋ช ๋ น ์คํ ๋ถ๋ถ. ๋ค์ฏ ๋ฒ์งธ, for ๊ณผ ๊ณ ๋ฅด๋ค ๋ฃจํ ์ค์ ๋งค๊ฐ๋ณ์
๋ฟ๋ง ์๋๋ผ getopts, ์ฝ๊ธฐ๋ฐ ์ธํธ -A ๋ช ๋ น. ๋ง์ง๋ง์ผ๋ก ๋งค๊ฐ๋ณ์๋ฅผ ํ ๋นํ ์ ์์ต๋๋ค.
์ฐ์ ์ ๋ด์์ ๋์ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๋ ๊ฐ(์ฐธ์กฐ ์ฐ์ ํํ
์๋) ๋๋ ${name=๊ฐ์น} ๋งค๊ฐ๋ณ์ ๋์ฒด ํ์(์๋ ์ฐธ์กฐ).
๋ด๋ณด๋ด๊ธฐ ์์ฑ์ด ์๋ ๋งค๊ฐ๋ณ์( ์์ถ or ์กฐํ -x ๋ช ๋ น ๋๋
๊ฐ๋จํ ๋ช ๋ น์ด ๋ค๋ฐ๋ฅด๋ ๋งค๊ฐ๋ณ์ ํ ๋น)์ด ํ๊ฒฝ์ ๋ฐฐ์น๋ฉ๋๋ค(์ฐธ์กฐ
์ฝ(7)) ๋ค์๊ณผ ๊ฐ์ด ์์ ์ํด ์คํ๋๋ ๋ช ๋ น์ name=๊ฐ์น ํ ์. ๋งค๊ฐ๋ณ์์ ์์
๋ช ๋ น์ด ์ง์ ๋์ง ์์ ํ๊ฒฝ์ ๋ํ๋ฉ๋๋ค. ์์ด ์์๋๋ฉด
ํ๊ฒฝ์์ ๋งค๊ฐ๋ณ์์ ํด๋น ๊ฐ์ ์ถ์ถํ๊ณ ๋ด๋ณด๋ด๊ธฐ๋ฅผ ์๋์ผ๋ก ์ค์ ํฉ๋๋ค.
ํด๋น ๋งค๊ฐ๋ณ์์ ๋ํ ์์ฑ์ ๋๋ค.
์์ ์๋ ${name} ๋งค๊ฐ๋ณ์ ๋์ฒด ํ์:
${name:-์๋}
If name ์ค์ ๋๊ณ NULL์ด ์๋ ๊ฒฝ์ฐ ๋์ฒด๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด, ์๋ ๋์ฒด๋ฉ๋๋ค.
${name:+์๋}
If name NULL์ด ์๋ ์ค์ , ์๋ ๋์ฒด๋๋ค; ๊ทธ๋ ์ง ์์ผ๋ฉด ์๋ฌด๊ฒ๋ ๋์ฒด๋์ง ์์ต๋๋ค.
${name:=์๋}
If name ์ค์ ๋๊ณ NULL์ด ์๋ ๊ฒฝ์ฐ ๋์ฒด๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ํ ๋น๋ฉ๋๋ค. ์๋ ๊ณผ
๊ฒฐ๊ณผ ๊ฐ name ๋์ฒด๋ฉ๋๋ค.
${name:?์๋}
If name ์ค์ ๋๊ณ NULL์ด ์๋ ๊ฒฝ์ฐ ๋์ฒด๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด, ์๋ ์ ์ธ์๋์ด ์์ต๋๋ค
ํ์ค ์ค๋ฅ(์์ name:) ๋ฐ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค(์ผ๋ฐ์ ์ผ๋ก ์ข ๋ฃ๋ฅผ ์ ๋ฐํฉ๋๋ค.
์ ์คํฌ๋ฆฝํธ, ํจ์ ๋๋ '.'์ ์ฌ์ฉํ๋ ์คํฌ๋ฆฝํธ ์์ค ๋ด์ฅ). ๋ง์ฝ์ ์๋ is
์๋ตํ๋ฉด "parameter null or not set" ๋ฌธ์์ด์ด ๋์ ์ฌ์ฉ๋ฉ๋๋ค. ํ์ฌ ๋ฒ๊ทธ,
if ์๋ null ๋ฌธ์์ด๋ก ํ์ฅ๋๋ ๋ณ์์ด๋ฉฐ ์ค๋ฅ ๋ฉ์์ง๋
์ธ์.
์์ ๋ชจ๋ ํญ๋ชฉ์ ๋ํด ์๋ ์ค์ ๋ก ์ธ์ฉ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋๋ฉฐ ํน์ ๊ตฌ๋ฌธ ๋ถ์
๊ท์น์ด ์ ์ฉ๋ฉ๋๋ค. ๊ตฌ๋ฌธ ๋ถ์ ๊ท์น์ ํํ์์ด ํฐ๋ฐ์ดํ์ธ์ง ์ฌ๋ถ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ์๋
๊ทธ๋ฐ ๋ค์ ํฐ๋ฐ์ดํ ์์ฒด('"')์ ๋ซ๋ ๋ฌธ์๋ฅผ ์ ์ธํ๊ณ ํฐ๋ฐ์ดํ ๊ท์น์ ์ฌ์ฉํฉ๋๋ค.
๋ฐฑ์ฌ๋์๊ฐ ์ด์ค์ผ์ดํ๋ ๊ฒฝ์ฐ ๋ฐ์ดํ ์ ๊ฑฐ๊ฐ ์ ์ฉ๋๋ ์ค๊ดํธ.
์ ์์์ด์์ ':'์ ์๋ตํ ์ ์์ผ๋ฉฐ, ์ด ๊ฒฝ์ฐ ์กฐ๊ฑด์ ๋ค์์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค.
name ์ค์ ์ค์ ๋๋ค(NULL์ด ์๋ ์ค์ ๊ณผ ๋ฐ๋๋ก). ๋ง์ฝ์ ์๋ ํ์, ๋งค๊ฐ๋ณ์, ๋ช ๋ น,
์ฐ์ ๋ฐ ๋ฌผ๊ฒฐํ ๋์ฒด๊ฐ ์ํ๋ฉ๋๋ค. ๋ง์ฝ์ ์๋ ํ์ํ์ง ์๋ค, ๊ทธ๋ ์ง ์๋ค
ํ๊ฐํ๋ค.
๋ค์ ํ์์ ๋งค๊ฐ๋ณ์ ๋์ฒด๋ ์ฌ์ฉํ ์ ์์ต๋๋ค(๋ง์ฝ name ๋ฐฐ์ด์ด๋ฉฐ,
ํค๊ฐ "0"์ธ ์์๋ ์ค์นผ๋ผ ์ปจํ ์คํธ์์ ๋์ฒด๋จ):
${#name}
๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์์น ๋งค๊ฐ๋ณ์์ ์ name '*', '@'์ด๊ฑฐ๋ ์ง์ ๋์ง ์์์ต๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด
๋งค๊ฐ๋ณ์ ๋ฌธ์์ด ๊ฐ์ ๊ธธ์ด(๋ฌธ์) name.
${#name[*]}
${#name[@]}
๋ฐฐ์ด์ ์์ ์ name.
${%name}
๋งค๊ฐ๋ณ์ ๋ฌธ์์ด ๊ฐ์ ๋๋น(ํ๋ฉด ์ด) name, ๋๋ -1์ธ ๊ฒฝ์ฐ
${name} ์ ์ด ๋ฌธ์๋ฅผ ํฌํจํฉ๋๋ค.
${!name}
์์ ์ฐธ์กฐํ๋ ๋ณ์์ ์ด๋ฆ name. ์ด๊ฒ์ ~์ด ๋ ๊ฒ์ด๋ค name ๋๋ฅผ ์ ์ธํ๊ณ name is
์ ์ํด ์์ฑ๋ ์ด๋ฆ ์ฐธ์กฐ(๋ฐ์ด๋ ๋ณ์) ์ด๋ฆ ์ฐธ์กฐ ๋ช ๋ น(๋ณ์นญ์ ๋๋ค.
for ์กฐํ -n).
${!name[*]}
${!name[@]}
๋ฐฐ์ด์ ์ธ๋ฑ์ค(ํค) ์ด๋ฆ name.
${name#๋ฌด๋ฌ}
${name##๋ฌด๋ฌ}
If ๋ฌด๋ฌ ๋งค๊ฐ๋ณ์ ๊ฐ์ ์์๊ณผ ์ผ์น name, ์ผ์นํ๋ ํ ์คํธ๋
๊ต์ฒด ๊ฒฐ๊ณผ์์ ์ญ์ ๋์์ต๋๋ค. ๋จ์ผ '#'์ ๊ฐ์ฅ ์งง์
์ผ์นํ๋ฉฐ ๊ทธ ์ค ๋ ๊ฐ๊ฐ ๊ฐ์ฅ ๊ธด ์ผ์น๋ฅผ ๊ฐ์ ธ์ต๋๋ค. ๋ฒกํฐ์ ์ ์ฉํ ์ ์์ต๋๋ค.
(${*} ๋๋ ${@} ๋๋ ${array[*]} ๋๋ ${array[@]}).
${name%๋ฌด๋ฌ}
${name%%๋ฌด๋ฌ}
${..#..} ๋์ฒด์ ๋น์ทํ์ง๋ง ๊ฐ์ ๋์์ ์ญ์ ํฉ๋๋ค. ์ ์์ต๋๋ค
๋ฒกํฐ์ ์ ์ฉ๋ฉ๋๋ค.
${name/ํจํด/๋ฌธ์์ด}
${name/#ํจํด/๋ฌธ์์ด}
${name/%ํจํด/๋ฌธ์์ด}
${name//ํจํด/๋ฌธ์์ด}
๊ฐ์ฅ ๊ธด ๊ฒฝ๊ธฐ ๋ฌด๋ฌ ๋งค๊ฐ๋ณ์ ๊ฐ์์ name ๋ค์์ผ๋ก ๋์ฒด๋ฉ๋๋ค. ํ
(๋ง์ฝ ์ญ์ ํ ๋น์๋ค; ์ด ๊ฒฝ์ฐ ํํ ์ฌ๋์('/')๋ ์๋ตํ ์ ์์ต๋๋ค.
์ ํ ์ฌ๋์ ๋ค์ '#' ๋๋ '%'๊ฐ ์์ผ๋ฉด ํจํด์ด
๊ฐ๊ฐ ๊ฐ์ ์์ ๋๋ ๋; ๊ณ ์ ๋์ง ์์ ๋น ๋ฌด๋ฌ์๋์ค
๋์ฌ; ๋จ์ผ ์ ํ ์ฌ๋์ ๋๋ ๋ฌด๋ฌ ๋น๊ณผ ์ผ์นํ๋
๋ฌธ์์ด๋ก ์ธํด ๊ต์ฒด๊ฐ ํ ๋ฒ๋ง ๋ฐ์ํฉ๋๋ค. ๋ ๊ฐ์ ์ ํ ์ฌ๋์๋ ๋ชจ๋
๋ฐ๊ฟ ๊ฐ์ ์ผ์น ํญ๋ชฉ. ๋ฒกํฐ์ ์ ์ฉํ ์ ์์ต๋๋ค.
๋นํจ์จ์ ์ผ๋ก ๊ตฌํ๋์ด ๋๋ฆด ์ ์์ต๋๋ค.
${name:๊ฒ์:๋ }
์ฒ์์ผ๋ก ๋ ์ ์บ๋ฆญํฐ name, ์์น์์ ์์ ๊ฒ์, ๋์ฒด๋ฉ๋๋ค. ๋ ๋ค
๊ฒ์ ๊ณผ :๋ ์ ํ์ ์ ๋๋ค. ๋ง์ฝ์ ๊ฒ์ ๊ฐ ์์์ด๋ฉด ๋์์ ๊ณ์ฐ์ ์์ํฉ๋๋ค.
๋; ์๋ตํ๋ฉด ๊ธฐ๋ณธ๊ฐ์ 0์ ๋๋ค. ๋ ์๋ต๋๊ฑฐ๋ ๊ทธ๋ณด๋ค ํฐ ๊ฒฝ์ฐ
๋๋จธ์ง ๋ฌธ์์ด์ ๊ธธ์ด๋ ๋ชจ๋ ๋์ฒด๋ฉ๋๋ค. ๋ ๋ค ๊ฒ์ ๊ณผ ๋ are
์ฐ์ ์์ผ๋ก ํ๊ฐ๋ฉ๋๋ค. ํ์ฌ, ๊ฒ์ ๊ณต๋ฐฑ์ผ๋ก ์์ํด์ผ ํฉ๋๋ค.
์ฌ๋ ๊ดํธ ๋๋ ์ธ์ํ ์ซ์. ๋ฒกํฐ์ ์ ์ฉํ ์ ์์ต๋๋ค.
${name@#}
ํ์ฅ ํด์(BAFH ์๊ณ ๋ฆฌ์ฆ ์ฌ์ฉ) name. ์ด๊ฒ๋ ์ฌ์ฉ
์์ ํด์ ํ ์ด๋ธ์ ์ํด ๋ด๋ถ์ ์ผ๋ก.
${name@ํ}
๊ฐ์ด name
๋งค๊ฐ๋ณ์๊ฐ ๋์ฒด๋ฉ๋๋ค.
์ฐธ๊ณ ๋ฌด๋ฌ ํ์ฅ ๊ธ๋ก๋น ํจํด(@(...)), ๋จ์ผ('...') ๋๋ ์ด์ค์ด ํ์ํ ์ ์์ต๋๋ค.
("...") ๋ฐ์ดํ ์ด์ค์ผ์ดํ๊ฐ ์๋ ํ -o sh ์ค์ ๋ฉ๋๋ค.
๋ค์ ํน์ ๋งค๊ฐ๋ณ์๋ ์ ธ์ ์ํด ์์์ ์ผ๋ก ์ค์ ๋๋ฉฐ ์ง์ ์ค์ ํ ์ ์์ต๋๋ค.
๊ณผ์ ์ฌ์ฉ:
! ๋ง์ง๋ง์ผ๋ก ์์๋ ๋ฐฑ๊ทธ๋ผ์ด๋ ํ๋ก์ธ์ค์ ํ๋ก์ธ์ค ID์ ๋๋ค. ๋ฐฑ๊ทธ๋ผ์ด๋ ํ๋ก์ธ์ค๊ฐ ์๋ ๊ฒฝ์ฐ
๋งค๊ฐ๋ณ์๊ฐ ์ค์ ๋์ง ์์์ต๋๋ค.
# ์์น ๋งค๊ฐ๋ณ์($1, $2 ๋ฑ)์ ์.
$ ์์ PID ๋๋ ํ์ ์์ธ ๊ฒฝ์ฐ ์๋ ์์ PID. ํ๋ค ์์ต๋๋ค.
์์ ํ์ผ ์ด๋ฆ์ ์์ฑํ๊ธฐ ์ํด ์ด ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ์ญ์์ค. ๋ณด๋ค mktemp(1) ๋์ .
- ํ์ฌ ๋จ์ผ ๋ฌธ์ ์ต์ ์ ์ฐ๊ฒฐ( ์ธํธ ์๋ ๋ช ๋ น
์ต์ ๋ชฉ๋ก ์ฐธ์กฐ).
? ์คํ๋ ๋ง์ง๋ง ๋น๋๊ธฐ ๋ช ๋ น์ ์ข ๋ฃ ์ํ์ ๋๋ค. ๋ง์ง๋ง ๋ช ๋ น์ด๋ผ๋ฉด
์ ํธ๋ก ์ฌ๋ง $? 128 + ์ ํธ ๋ฒํธ๋ก ์ค์ ๋์ง๋ง ์ต๋ 255์ ๋๋ค.
0 ์์ ์ด๋ฆ์ ๋ค์๊ณผ ๊ฐ์ด ๊ฒฐ์ ๋ฉ๋๋ค. mksh ๋ง์ฝ ๊ทธ๋ ๋ค๋ฉด
์ ํจ๊ป ํธ์ถ -c ์ต์ ๊ณผ ์ธ์๊ฐ ์ฃผ์ด์ก์ต๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ํ์ผ ์ธ์, ๊ฒฝ์ฐ
๊ทธ๊ฒ์ ๊ณต๊ธ๋์๋ค; ๋๋ ์์ด ํธ์ถ๋ ๊ธฐ๋ณธ ์ด๋ฆ(์: argv[0]). $0
๋ํ ํ์ฌ ์คํฌ๋ฆฝํธ์ ์ด๋ฆ ๋๋ ํ์ฌ ํจ์์ ์ด๋ฆ์ผ๋ก ์ค์ ๋ฉ๋๋ค.
๋ก ์ ์๋ ๊ฒฝ์ฐ ๊ธฐ๋ฅ ํค์๋(์: Korn ์ ์คํ์ผ ํจ์).
1 .. 9 ์, ํจ์ ๋๋
'.'์ ์ฌ์ฉํ์ฌ ์์ค ์คํฌ๋ฆฝํธ ๋ด์ฅ. ์ถ๊ฐ ์์น ๋งค๊ฐ๋ณ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
${๋ฅผ ์ฌ์ฉํ์ฌ ์ก์ธ์ค๋ฒํธ}.
* ๋ชจ๋ ์์น ๋งค๊ฐ๋ณ์(0 ์ ์ธ), ์ฆ $1, $2, $3, ...
ํฐ๋ฐ์ดํ ๋ฐ์์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋งค๊ฐ๋ณ์๋ ๋ณ๋์ ๋จ์ด์ ๋๋ค(
๋จ์ด ๋ถํ ); ํฐ๋ฐ์ดํ ์์ ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ ๋งค๊ฐ๋ณ์๋
IFS ๋งค๊ฐ๋ณ์์ ์ฒซ ๋ฒ์งธ ๋ฌธ์(๋๋ IFS๊ฐ NULL์ธ ๊ฒฝ์ฐ ๋น ๋ฌธ์์ด).
@ ๋์ผ $*, ํฐ๋ฐ์ดํ ์์ ์ฌ์ฉ๋์ง ์๋ ํ ๋ณ๋์ ๋จ์ด๋
๊ฐ ์์น ๋งค๊ฐ๋ณ์์ ๋ํด ์์ฑ๋ฉ๋๋ค. ์์น ๋งค๊ฐ๋ณ์๊ฐ ์์ผ๋ฉด
๋จ์ด๊ฐ ์์ฑ๋ฉ๋๋ค. $@ ์์ค ์์ด ๊ทธ๋๋ก ์ธ์์ ์ก์ธ์คํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค.
NULL ์ธ์ ๋๋ ๊ณต๋ฐฑ์ด ์๋ ๋ถํ ์ธ์.
๋ค์ ๋งค๊ฐ ๋ณ์๋ ์ ธ์์ ์ค์ ๋ฐ/๋๋ ์ฌ์ฉํฉ๋๋ค.
_(๋ฐ์ค) ์ธ๋ถ ๋ช ๋ น์ด ์์ ์ํด ์คํ๋ ๋ ์ด ๋งค๊ฐ๋ณ์๋
์ ํ๋ก์ธ์ค์ ํ๊ฒฝ์์ ์คํ ๊ฒฝ๋ก๋ก ์ค์ ๋ฉ๋๋ค.
๋ช ๋ น. ๋ํ์ ์ฌ์ฉ์์ ์ด ๋งค๊ฐ๋ณ์๋ ์์ ์์์๋ ๋ค์์ผ๋ก ์ค์ ๋ฉ๋๋ค.
์ด์ ๋ช ๋ น์ ๋ง์ง๋ง ๋จ์ด.
BASHPID ์ ธ ๋๋ ํ์ ์ ธ์ PID์ ๋๋ค.
CDPATH PATH์ ๋น์ทํ์ง๋ง ์ธ์๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. cd ๋ด์ฅ ๋ช ๋ น. ๋ฉ๋ชจ
CDPATH๊ฐ ์ค์ ๋๊ณ '.'๊ฐ ํฌํจ๋์ง ์์ ๊ฒฝ์ฐ ๋๋ ๋น ๋ฌธ์์ด ์์์ธ
ํ์ฌ ๋๋ ํฐ๋ฆฌ๋ ๊ฒ์๋์ง ์์ต๋๋ค. ๋ํ, cd ๋ด์ฅ ๋ช ๋ น์ด ํ์๋ฉ๋๋ค
๋ค์ ์ด์ธ์ ๊ฒ์ ๊ฒฝ๋ก์์ ์ผ์น ํญ๋ชฉ์ด ๋ฐ๊ฒฌ๋ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ ๋๋ ํ ๋ฆฌ
๋น ๊ฒฝ๋ก.
COLUMNS ํฐ๋ฏธ๋ ๋๋ ์ฐฝ์ ์ด ์๋ก ์ค์ ํฉ๋๋ค. ํญ์ ์ค์ , ๊ธฐ๋ณธ๊ฐ
์ ์ํด ๋ณด๊ณ ๋ ๊ฐ์ด ์๋ ํ 80์ผ๋ก ์คํฐ(1)์ XNUMX์ด ์๋๋ฉฐ ์ถฉ๋ถํ ์ ์ ์ ์ ๋๋ค.
(์ต์ 12x3); LINE๊ณผ ์ ์ฌํฉ๋๋ค. ์ด ๋งค๊ฐ๋ณ์๋
๋ํ์ ๋ผ์ธ ํธ์ง ๋ชจ๋ ๋ฐ ๊ณ ๋ฅด๋ค, ์ธํธ -o๋ฐ ์ฃฝ์ด๊ธฐ -l ๋ช ๋ น
์ ๋ณด ์ด์ ํ์์ ์ง์ ํฉ๋๋ค. ํ๊ฒฝ์์ ๊ฐ์ ธ์ค๊ธฐ ๋๋ ์ค์ ํด์
์ด ๋งค๊ฐ๋ณ์๋ ์ค์ ํฐ๋ฏธ๋ ํฌ๊ธฐ์ ๋ํ ๋ฐ์ธ๋ฉ์ ์ ๊ฑฐํฉ๋๋ค.
์ ๊ณต๋ ๊ฐ์น.
ENV ์ด ๋งค๊ฐ ๋ณ์๋ ํ๋กํ ํ์ผ์ด ์คํ๋ ํ์ ์ค์ ๋์ด ์๋ ๊ฒ์ผ๋ก ํ์ธ๋๋ฉด
ํ์ฅ๋ ๊ฐ์ ์ ์์ ํ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๊ฒ์ ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ๋ฅ์ ํฌํจ
๋ฐ ๋ณ์นญ ์ ์.
ERRNO ์์ ์ ์ ๊ฐ ์๋ฅด ๋ ธ ๋ณํ๊ธฐ ์ฌ์ด. ๋ง์ง๋ง ์ด์ ๋ฅผ ๋ํ๋ ๋๋ค.
์์คํ ํธ์ถ์ ์คํจํ์ต๋๋ค. ์์ง ๊ตฌํ๋์ง ์์์ต๋๋ค.
EXECSHELL ์ค์ ๋๋ฉด ์ด ๋งค๊ฐ๋ณ์๋ ๋ค์์ ์ฌ์ฉํ ์์ ํฌํจํ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
๋ช ๋ น์ ์คํ ์งํํ๋ค(2) ์คํ์ ์คํจํ๊ณ a๋ก ์์ํ์ง ์๋
โ#!๊ป์ง" ์์.
FCEDIT์์ ์ฌ์ฉํ๋ ํธ์ง๊ธฐ fc ๋ช ๋ น(์๋ ์ฐธ์กฐ).
FPATH PATH์ ์ ์ฌํ์ง๋ง ํ์ผ์ ์ฐพ๊ธฐ ์ํด ์ ์๋์ง ์์ ํจ์๊ฐ ์คํ๋ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
๊ธฐ๋ฅ์ ์ ์ํฉ๋๋ค. ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ์๋ ๊ฒ์๋ฉ๋๋ค.
๊ธธ. ๋ณด๋ค ๊ธฐ๋ฅ ์์ธํ ๋ด์ฉ์ ์๋๋ฅผ ์ฐธ์กฐํ์ธ์.
HISTFILE ๋ช ๋ น ๊ธฐ๋ก์ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํ์ผ์ ์ด๋ฆ์ ๋๋ค. ์ ํ ๋น๋๊ฑฐ๋ ์ค์ ๋์ง ์์ ๊ฒฝ์ฐ,
ํ์ผ์ด ์ด๋ฆฌ๊ณ ๊ธฐ๋ก์ด ์๋ฆฐ ๋ค์ ํ์ผ์์ ๋ก๋๋ฉ๋๋ค. ํ์
์ ๋ช ๋ น(์ฌ๋ฌ ์ค๋ก ๊ตฌ์ฑ๋ ์ ์์)์ด ์ถ๊ฐ๋๋ฉด ์ถ๊ฐ๋ฉ๋๋ค.
์ฑ๊ณต์ ์ผ๋ก ์ปดํ์ผ๋์์ต๋๋ค. ๋ํ ์์ ์ฌ๋ฌ ํธ์ถ์ ๊ณต์ ํฉ๋๋ค.
HISTFILE ๋งค๊ฐ๋ณ์๊ฐ ๋ชจ๋ ๋์ผํ ํ์ผ์ ๊ฐ๋ฆฌํค๋ ๊ฒฝ์ฐ ๊ธฐ๋กํฉ๋๋ค.
์ฃผ์ ์ฌํญ: HISTFILE์ด ์ค์ ๋์ง ์์๊ฑฐ๋ ๋น์ด ์์ผ๋ฉด ํ์คํ ๋ฆฌ ํ์ผ์ด ์ฌ์ฉ๋์ง ์์ต๋๋ค. ์ด๊ฒ์
AT&T UNIX์ ๋ค๋ฅธ ์ KSH.
HISTSIZE ๊ธฐ๋ก์ ์ํด ์ผ๋ฐ์ ์ผ๋ก ์ ์ฅ๋๋ ๋ช ๋ น์ ์์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ 2047์ ๋๋ค.
์ด ๊ฐ์ 1000000000๊ณผ ๊ฐ์ด ์์ฒญ๋๊ฒ ๋์ ๊ฐ์ผ๋ก ์ค์ ํ์ง ๋ง์ญ์์ค. mksh
๊ธฐ๋ก์ ์ถฉ๋ถํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ์ง ์์ผ๋ฉด ์์๋์ง ์์ต๋๋ค.
HOME์ ๊ธฐ๋ณธ ๋๋ ํ ๋ฆฌ cd ๋ช ๋ น ๋ฐ ๊ฐ์ผ๋ก ๋์ฒด
์๊ฒฉ์ด์๋ ~ (์ฐธ์กฐ ํธ๋ฐ ํ์ฅ ์๋).
IFS ๋ด๋ถ ํ๋ ๊ตฌ๋ถ ๊ธฐํธ, ๋์ฒด ์ค์ ์ฌ์ฉ๋จ ์ฝ๊ธฐ ๋ช ๋ นํ๋ค
๊ฐ์ ๋ณ๊ฐ์ ์ธ์๋ก ๋ถํ ํฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๊ณต๋ฐฑ, ํญ ๋ฐ ์ค ๋ฐ๊ฟ์ผ๋ก ์ค์ ๋ฉ๋๋ค.
๋ง๋๋ค ์นํ ์์ธํ ๋ด์ฉ์ ์๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
์ฃผ์ ์ฌํญ: ์ด ๋งค๊ฐ๋ณ์๋ ์์ด ์๋ ๊ฒฝ์ฐ ํ๊ฒฝ์์ ๊ฐ์ ธ์ค์ง ์์ต๋๋ค.
์์๋์์ต๋๋ค.
KSHEGID ์์ ์ ํจ ๊ทธ๋ฃน ID.
KSHGID ์์ ์ค์ ๊ทธ๋ฃน ID.
KSHUID ์์ ์ค์ ์ฌ์ฉ์ ID.
KSH_VERSION ์์ ์ด๋ฆ๊ณผ ๋ฒ์ (์ฝ๊ธฐ ์ ์ฉ). ๋ฒ์ ๋ช ๋ น๋ ์ฐธ์กฐํ์ญ์์ค.
in ์ด๋งฅ์ค ํธ์ง ๋ชจ๋ ๊ณผ Vi ํธ์ง ๋ชจ๋ ์น์ , ์๋.
LINENO ํ์ฌ ์คํ ์ค์ธ ํจ์ ๋๋ ์ ์คํฌ๋ฆฝํธ์ ํ ๋ฒํธ
์คํ.
LINES ํฐ๋ฏธ๋ ๋๋ ์ฐฝ์ ์ค ์๋ก ์ค์ ํฉ๋๋ค. ํญ์ ์ค์ , ๊ธฐ๋ณธ๊ฐ:
24. ์ด์ ์ฐธ์กฐํ์ญ์์ค.
์ํฌํฌ๋ฆฌ์ผํ์
์ ์ํด ๋ฐํ๋ ์ํฌํฌ ์ดํ์ ์๊ฐ gettimeofday(2), XNUMX์ง์ ํ์
tv_sec ๋ค์ ์ ('.')๊ณผ tv_usec ์ ํํ ์์์ XNUMX์๋ฆฌ๊น์ง ์ฑ์์ง
์๋ฆฟ์.
OLDPWD ์ด์ ์์ ๋๋ ํ ๋ฆฌ. ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์ค์ ํด์ cd ์ฑ๊ณต์ ์ผ๋ก ๋ณ๊ฒฝ๋์ง ์์์ต๋๋ค
์์ด ์์๋ ์ดํ์ ๋๋ ํ ๋ฆฌ ๋๋ ์์ด ์์น๋ฅผ ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ.
OPTARG ์ฌ์ฉ ์ getopts, ๊ตฌ๋ฌธ ๋ถ์๋ ์ต์ ์ ๋ํ ์ธ์๋ฅผ ํฌํจํฉ๋๋ค.
ํ๋๊ฐ ํ์ํฉ๋๋ค.
OPTIND ์ฌ์ฉํ ๋ ์ฒ๋ฆฌํ ๋ค์ ์ธ์์ ์ธ๋ฑ์ค getopts. ํ ๋น 1
์ด ๋งค๊ฐ๋ณ์์ ์์ธ getopts ์ธ์๋ฅผ ์ฒ์๋ถํฐ ์ฒ๋ฆฌํ๋ ค๋ฉด
๋ค์์ ํธ์ถ๋ฉ๋๋ค.
PATH ์ฝ๋ก (OS/2์์๋ ์ธ๋ฏธ์ฝ๋ก )์ผ๋ก ๊ตฌ๋ถ๋ ๊ฒ์๋ ๋๋ ํ ๋ฆฌ ๋ชฉ๋ก
'.'์ ์ฌ์ฉํ์ฌ ์์ฑ๋ ๋ช ๋ น ๋ฐ ํ์ผ์ ์ฐพ์ ๋ ๋ช ๋ น(์๋ ์ฐธ์กฐ).
์ ํ ๋๋ ํํ ์ฝ๋ก ๋๋ ๋ ๊ฐ์ ์ธ์ ํ ์ฝ๋ก ์ผ๋ก ์ธํ ๋น ๋ฌธ์์ด
์ฝ๋ก ์ '.'๋ก ์ทจ๊ธ๋ฉ๋๋ค. (ํ์ฌ ๋๋ ํ ๋ฆฌ).
PGRP ์์ ํ๋ก์ธ์ค ๊ทธ๋ฃน ๋ฆฌ๋์ ํ๋ก์ธ์ค ID.
PIPESTATUS ์ค๋ฅ ์์ค(์ข ๋ฃ ์ํ) ์ฝ๋๋ฅผ ํ๋์ฉ ํฌํจํ๋ ๋ฐฐ์ด
ํ์ดํ๋ผ์ธ์ ์ ๊ฒฝ์์ ์คํ๋ฉ๋๋ค.
PPID ์ ธ ๋ถ๋ชจ์ ํ๋ก์ธ์ค ID์ ๋๋ค.
PS1 ๋ํ์ ์์ ๊ธฐ๋ณธ ํ๋กฌํํธ. ๋งค๊ฐ๋ณ์, ๋ช ๋ น ๋ฐ ์ฐ์
๋์ฒด๊ฐ ์ํ๋๊ณ '!' ํ์ฌ ๋ช ๋ น์ผ๋ก ๋์ฒด๋ฉ๋๋ค.
๋ฒํธ(์ฐธ์กฐ fc ์๋ ๋ช ๋ น). ๋ฌธ์ ๊ทธ๋๋ก '!' ์ ์ํด ํ๋กฌํํธ์ ๋ฃ์ ์ ์์ต๋๋ค
๋ฐฐ์น '!!' PS1์์.
๊ธฐ๋ณธ ํ๋กฌํํธ๋ ๋ฃจํธ๊ฐ ์๋ ์ฌ์ฉ์์ ๊ฒฝ์ฐ '$'์ด๊ณ ๋ฃจํธ์ ๊ฒฝ์ฐ '#'์ ๋๋ค. ๋ง์ฝ์ mksh is
๋ฃจํธ์ ์ํด ํธ์ถ๋๊ณ PS1์๋ ๊ธฐ๋ณธ๊ฐ์ธ '#' ๋ฌธ์๊ฐ ํฌํจ๋์ด ์์ง ์์ต๋๋ค.
PS1์ด ํ๊ฒฝ์ ์ด๋ฏธ ์กด์ฌํ๋ ๊ฒฝ์ฐ์๋ ์ฌ์ฉ๋ฉ๋๋ค.
XNUMXD๋ดํ์ mksh ๋ฐฐํฌํ์ ์ํ๊ณผ ํจ๊ป ์ ๊ณต๋ฉ๋๋ค. ๋ํธ.mkshrc ์ ๊ตํ
ํ์ง๋ง ๋ค์๊ณผ ๊ฐ์ ๊ฒ์ ์ข์ํ ์๋ ์์ต๋๋ค(์ฐธ๊ณ :
${HOSTNAME:=$(hostname)} ๋ฐ root-vs-user ๊ตฌ๋ถ ์ ์ (in
์ด ์) PS1 ํ ๋น ์๊ฐ์ ์คํ๋๋ ๋ฐ๋ฉด $USER ๋ฐ $PWD๋
์ด์ค์ผ์ดํ๋์ด ํ๋กฌํํธ๊ฐ ํ์๋ ๋๋ง๋ค ํ๊ฐ๋จ):
PS1='${USER:=$(id -un)}'"@${HOSTNAME:=$(ํธ์คํธ ์ด๋ฆ)}:\$PWD $(
if (( USER_ID )); ๊ทธ๋ฐ ๋ค์ \$๋ฅผ ์ธ์ํ์ญ์์ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ธ์ \#; FI) "
๋ช ๋ น์ค ํธ์ง๊ธฐ๋ ํ๋กฌํํธ๊ฐ ์ผ๋ง๋ ์ค๋ ์ง์๋๋์ง ์์๋ด๋ ค๊ณ ํ๊ธฐ ๋๋ฌธ์
(ํ๋ฉด ๊ฐ์ฅ์๋ฆฌ๊น์ง์ ๊ฑฐ๋ฆฌ๋ฅผ ์ ์ ์๋๋ก), ์ด์ค์ผ์ดํ ์ฝ๋๋
ํ๋กฌํํธ๋ ์ผ์ ์๋ง์ผ๋ก ๋ง๋๋ ๊ฒฝํฅ์ด ์์ต๋๋ค. ์์ด ํน์ ๊ฐ์ ์ธ์ง ์๋๋ก ์ง์ํ ์ ์์ต๋๋ค.
ํ๋กฌํํธ ์์ ๋ฌธ์๋ฅผ ์ถ๊ฐํ์ฌ ์ํ์ค(์: ์ด์ค์ผ์ดํ ์ฝ๋)
(์: Ctrl-A) ๋ค์์ ์บ๋ฆฌ์ง ๋ฆฌํด์ ์ ๋ ฅํ ๋ค์ ์ด์ค์ผ์ดํ๋ฅผ ๊ตฌ๋ถํฉ๋๋ค.
์ด ๋ฌธ์๋ก ์ฝ๋๋ฅผ ์ง์ ํฉ๋๋ค. ํ๋กฌํํธ์์ ํด๋น ๋ฌธ์์ ๋ชจ๋ ๋ฐ์์
์ธ์๋์ง ์์์ต๋๋ค. ๊ทธ๊ฑด ๊ทธ๋ ๊ณ , ์ด ํดํน์ ๋ํด ์ ๋ฅผ ๋น๋ํ์ง ๋ง์ญ์์ค. ๊ทธ๊ฒ์์์ ํ์๋ฉ๋๋ค
์ค๋ฌผ ksh88(1), ๊ตฌ๋ถ ๋ฌธ์๋ฅผ ์ธ์ํ๊ธฐ ๋๋ฌธ์
์ธ์๋์ง ์๋ ๋ฌธ์๊ฐ ์๋ค๋ฉด ํ์ด์ ๋๋ค.
๋ฐฑ์ฌ๋์ ๋ฐ ๊ธฐํ ํน์ ๋ฌธ์๋ ์์์ ํด์๋ ์ ์์ผ๋ฏ๋ก
PS1์ ์ค์ ํ๋ ค๋ฉด ๋ฐฑ์ฌ๋์ ์์ฒด๋ฅผ ์ด์ค์ผ์ดํํ๊ฑฐ๋ ํฐ๋ฐ์ดํ๋ฅผ ์ฌ์ฉํ์ญ์์ค. ๊ทธ๋งํผ
ํ์๊ฐ ๋ ์ค์ฉ์ ์ ๋๋ค. ์ด๊ฒ์ ๋ ๋ณต์กํ ์์ด๋ฉฐ ์ง์
ํน์ ๋ฌธ์๋ฅผ ์ ๋ ฅํ์ญ์์ค(์: ^V emacs ํธ์ง ๋ชจ๋์์),
ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ๋ฅผ ์ญ๋ฐฉํฅ ๋น๋์ค๋ก ํฌํจํฉ๋๋ค(์์์ด ์๋ํฉ๋๋ค.
๋๋ฌด), ํ๋กฌํํธ ๋ฌธ์์ด์์:
x=$(์ธ์ \\001)
PS1="$x$(print \\r)$x$(tput so)$x\$PWD$x$(tput se)$x> "
David G. Korn์ ๊ฐ๋ ฅํ ์ ์์ผ๋ก ์ธํด mksh ์ด์
๋ค์ ํ์:
PS1=$'\1\r\1\e[7m\1$PWD\1\e[0m\1> '
PS2 ๋ณด์กฐ ํ๋กฌํํธ ๋ฌธ์์ด, ๊ธฐ๋ณธ์ ์ผ๋ก '> ', ์ถ๊ฐ ์ ๋ ฅ์ด ํ์ํ ๋ ์ฌ์ฉ
๋ช ๋ น์ ์๋ฃํ์ญ์์ค.
PS3 Prompt์์ ์ฌ์ฉํ๋ ๊ณ ๋ฅด๋ค ๋ฉ๋ด ์ ํ์ ์ฝ์ ๋์ ๋ช ๋ น๋ฌธ. ๊ธฐ๋ณธ๊ฐ
์ด๋ค '#? '.
PS4 ์คํ ์ถ์ ์ค์ ์ธ์๋๋ ๋ช ๋ น์ ์ ๋์ฌ๋ก ์ฌ์ฉ๋ฉ๋๋ค( ์ธํธ
-x ์๋ ๋ช ๋ น). ๋งค๊ฐ๋ณ์, ๋ช ๋ น ๋ฐ ์ฐ์ ๋์ฒด๋
์ธ์๋๊ธฐ ์ ์ ์ํ๋ฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ '+'์ ๋๋ค. ๋น์ ์ ๊ทธ๊ฒ์ ์ค์ ํ ์ ์์ต๋๋ค
๋์ ํ์์คํฌํ๋ฅผ ํฌํจํ๋ ค๋ฉด '[$EPOCHREALTIME] '์ผ๋ก ๋ณ๊ฒฝํฉ๋๋ค.
PWD ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ. ์ ธ์ด ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ ์ค์ ๋์ง ์๊ฑฐ๋ NULL์ผ ์ ์์ต๋๋ค.
๊ณณ์.
RANDOM RANDOM์ด ์ฐธ์กฐ๋ ๋๋ง๋ค 0์์ 32767 ์ฌ์ด์ ์ซ์๊ฐ ํ ๋น๋ฉ๋๋ค.
์ ํ ํฉ๋ PRNG์์ ๋จผ์ .
REPLY์ ๋ํ ๊ธฐ๋ณธ ๋งค๊ฐ๋ณ์ ์ฝ๊ธฐ ์ด๋ฆ์ด ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ๋ช ๋ น. ๋ํ ์ฌ์ฉ
๊ณ ๋ฅด๋ค ํ์ค ์ ๋ ฅ์์ ์ฝ์ ๊ฐ์ ์ ์ฅํ๋ ๋ฃจํ.
SECONDS ์์ด ์์๋ ์ดํ ์ด ์ ๋๋ ๋งค๊ฐ๋ณ์๊ฐ
ํ ๋น๋ ์ดํ์ ์ด ์์ ์ ์ ๊ฐ์ ํ ๋นํ์ต๋๋ค.
ํ ๋น๋ ๊ฐ์ ๋๋ค.
TMOUT ๋ํํ ์์์ ์์ ์ ์๋ก ์ค์ ํ๋ฉด ์ต๋
๊ธฐ๋ณธ ์ธ์ ํ ์์ด ์ ๋ ฅ์ ๊ธฐ๋ค๋ฆฌ๋ ์๊ฐ(์ด)
ํ๋กฌํํธ(PS1). ์๊ฐ์ด ์ด๊ณผ๋๋ฉด ์ ธ์ด ์ข ๋ฃ๋ฉ๋๋ค.
TMPDIR ์์ ์ ํ์ผ์ด ์์ฑ๋๋ ๋๋ ํ ๋ฆฌ์ ๋๋ค. ์ด ๋งค๊ฐ๋ณ์๊ฐ
์ฐ๊ธฐ ๊ฐ๋ฅํ ๋๋ ํ ๋ฆฌ์ ์ ๋ ๊ฒฝ๋ก๋ฅผ ์ค์ ํ๊ฑฐ๋ ํฌํจํ์ง ์์, ์์
ํ์ผ์ / TMP.
USER_ID ์ ธ์ ์ ํจ ์ฌ์ฉ์ ID์ ๋๋ค.
ํธ๋ฐ ํ์ฅ
๋งค๊ฐ๋ณ์ ๋์ฒด์ ๋ณ๋ ฌ๋ก ์ํ๋๋ ๋ฌผ๊ฒฐํ ํ์ฅ์ ๋จ์ด์์ ์ํ๋ฉ๋๋ค.
๋ฐ์ดํ ์๋ '~'๋ก ์์ํฉ๋๋ค. ๋ฌผ๊ฒฐํ ๋ค์ ๋ฌธ์๋ ์ฒซ ๋ฒ์งธ '/'๊น์ง์ ๋๋ค.
any๋ ๋ก๊ทธ์ธ ์ด๋ฆ์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ๋ก๊ทธ์ธ ์ด๋ฆ์ด ๋น์ด ์๊ฑฐ๋ '+' ๋๋ '-'์ธ ๊ฒฝ์ฐ
HOME, PWD ๋๋ OLDPWD ๋งค๊ฐ๋ณ์๊ฐ ๊ฐ๊ฐ ๋์ฒด๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ํธ
ํ์ผ์์ ๋ก๊ทธ์ธ ์ด๋ฆ์ ๊ฒ์ํ๊ณ ๋ฌผ๊ฒฐํ ํํ์์ ์ฌ์ฉ์ ์ด๋ฆ์ผ๋ก ๋์ฒดํฉ๋๋ค.
ํ ๋๋ ํ ๋ฆฌ. ์ํธ ํ์ผ์์ ๋ก๊ทธ์ธ ์ด๋ฆ์ ์ฐพ์ ์ ์๊ฑฐ๋ ์ธ์ฉ ๋๋
๋งค๊ฐ๋ณ์ ๋์ฒด๋ ๋ก๊ทธ์ธ ์ด๋ฆ์์ ๋ฐ์ํ๋ฉฐ ๋์ฒด๋ ์ํ๋์ง ์์ต๋๋ค.
๋งค๊ฐ๋ณ์ ํ ๋น(์: ๋จ์ ๋ช ๋ น ์์ ์ค๋ ๊ฒ ๋๋
์ ์ฃผ์ฅ ๋ณ๋ช , ์์ถ, ๊ธ๋ก๋ฒ, ์ฝ๊ธฐ ์ ์ฉ๋ฐ ์กฐํ), ๋ฌผ๊ฒฐํ ํ์ฅ์ ๋ค์์ ์ํ๋ฉ๋๋ค.
ํ ๋น(์ฆ, ๋ฑํธ ๋ค) ๋๋ ์ธ์ฉ ๋ถํธ๊ฐ ์๋ ์ฝ๋ก (':') ๋ค; ๋ก๊ทธ์ธ ์ด๋ฆ
๋ํ ์ฝ๋ก ์ผ๋ก ๊ตฌ๋ถ๋ฉ๋๋ค.
์ด์ ์ ํ์ฅ๋ ๋ก๊ทธ์ธ ์ด๋ฆ์ ํ ๋๋ ํ ๋ฆฌ๊ฐ ์บ์๋๊ณ ์ฌ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๋งํผ ๋ณ๋ช -d
๋ช ๋ น์ ์ฌ์ฉํ์ฌ ์ด ์บ์๋ฅผ ๋์ด, ๋ณ๊ฒฝ ๋ฐ ์ถ๊ฐํ ์ ์์ต๋๋ค(์: ๋ณ๋ช -d
fac=/usr/local/์์ค; cd ~ํฉ/๋น).
๊ฐ์ ํ์ฅ (๊ต๋)
์ค๊ดํธ ํํ์์ ๋ค์ ํ์์ ์ทจํฉ๋๋ค.
์ ๋์ฌ{str1,...,strN}์ ๋ฏธ์ฌ
๋ก ํํ์ด ํ์ฅ๋ฉ๋๋ค. N ๊ฐ ๋จ์ด๋ ์ โโ์ฐ๊ฒฐ์ ๋๋ค. ์ ๋์ฌ, ํ์ ๋ฒ์ i,
๊ณผ ์ ๋ฏธ์ฌ (์: "a{c,b{X,Y},d}e"๋ "ace", "abXe", "abYe" ๋ฐ "ade"์ ๋ค ๋จ์ด๋ก ํ์ฅ๋ฉ๋๋ค.)
์์ ์์ ์ธ๊ธํ ๊ฒ์ฒ๋ผ ์ค๊ดํธ ํํ์์ ์ค์ฒฉ๋ ์ ์์ผ๋ฉฐ ๊ฒฐ๊ณผ ๋จ์ด๋
์ ๋ ฌ. ์ค๊ดํธ ํํ์์ ํ์ฅ์ด ๋ฐ์ํ๋๋ก ์ธ์ฉ๋์ง ์์ ์ผํ(',')๋ฅผ ํฌํจํด์ผ ํฉ๋๋ค(์:
{} ๊ณผ {ํธ} ํ์ฅ๋์ง ์์). ์ค๊ดํธ ํ์ฅ์ ๋งค๊ฐ๋ณ์ ๋์ฒด ํ ์ํ๋ฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ํ์ผ ์ด๋ฆ ์์ฑ ์ .
์ ์ ๋ถ๋ชจ๋ก์์ ๊ทํ์ ์ ํฉ์ฑ์ ๊ฒฐ์ ํ๊ธฐ ์ํด ๋ฏธ๊ตญ ์ด๋ฏผ๊ตญ์ name ํจํด
ํ์ผ ์ด๋ฆ ํจํด์ ์ธ์ฉ ๋ถํธ๊ฐ ์๋ '?', '*', '+', '@' ๋๋ '!'๋ฅผ ํ๋ ์ด์ ํฌํจํ๋ ๋จ์ด์ ๋๋ค.
๋ฌธ์ ๋๋ "[..]" ์ํ์ค. ๊ฐ์ ํ์ฅ์ด ์ํ๋๋ฉด ์์ด ๊ต์ฒด๋ฉ๋๋ค.
ํจํด๊ณผ ์ผ์นํ๋ ๋ชจ๋ ํ์ผ์ ์ ๋ ฌ๋ ์ด๋ฆ์ด ์๋ ํ์ผ ์ด๋ฆ ํจํด(์๋ ๊ฒฝ์ฐ
ํ์ผ์ด ์ผ์นํ๋ฉด ๋จ์ด๋ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค. ํจํด ์์์ ์๋ฏธ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
? ๋จ์ผ ๋ฌธ์์ ์ผ์นํฉ๋๋ค.
* ์์์ ์ฅํ ์ํ์ค์ ์ผ์นํฉ๋๋ค.
[..] ๋๊ดํธ ์์ ๋ชจ๋ ์ฅํ ๊ณผ ์ผ์นํฉ๋๋ค. ์ฅํ ์ ๋ฒ์๋ ๋ค์๊ณผ ๊ฐ์ด ์ง์ ํ ์ ์์ต๋๋ค.
๋ ์ฅํ ์ '-'๋ก ๊ตฌ๋ถํฉ๋๋ค(์: "[a0-9]"๋ ๋ฌธ์ 'a' ๋๋ ์์์ ์ซ์์ ์ผ์นํจ).
์์ ์ ๋ํ๋ด๋ ค๋ฉด '-'๋ฅผ ์ธ์ฉํ๊ฑฐ๋ ์ฒซ ๋ฒ์งธ ๋๋ ๋ง์ง๋ง ์ฅํ ์ ํ์ํด์ผ ํฉ๋๋ค.
์ฅํ ๋ชฉ๋ก์์. ๋ง์ฐฌ๊ฐ์ง๋ก ']'๋ ๋ฐ์ดํ๋ก ๋ฌถ์ด์ผ ํ๊ฑฐ๋ ๋ชฉ๋ก์ ์ฒซ ๋ฒ์งธ ์ฅํ ์ด์ด์ผ ํฉ๋๋ค.
๋ชฉ๋ก์ ๋ ๋์ ์์ ์ ๋ํ๋ด๋ ๊ฒฝ์ฐ. ๋ํ '!' ๋ํ๋๋
๋ชฉ๋ก์ ์์ ๋ถ๋ถ์๋ ํน๋ณํ ์๋ฏธ๊ฐ ์์ผ๋ฏ๋ก(์๋ ์ฐธ์กฐ)
์ธ์ฉํ๊ฑฐ๋ ๋ชฉ๋ก์ ๋ท๋ถ๋ถ์ ๋ํ๋์ผ ํฉ๋๋ค.
[!..] [..]์ ๊ฐ์ง๋ง ๋๊ดํธ ์์ ์์ง ์์ ๋ชจ๋ ์ฅํ ๊ณผ ์ผ์นํฉ๋๋ค.
*(๋ฌด๋ฌ|...|๋ฌด๋ฌ)
XNUMX๊ฐ ์ด์์ ์ง์ ๋ ํญ๋ชฉ๊ณผ ์ผ์นํ๋ ๋ชจ๋ ์ฅํ ๋ฌธ์์ด๊ณผ ์ผ์นํฉ๋๋ค.
ํจํด. ์: ํจํด *(ํธ|๋ฐ) ๋ฌธ์์ด โโ, โfooโ, โbarโ,
"ํธ๋ฐํธ" ๋ฑ
+(๋ฌด๋ฌ|...|๋ฌด๋ฌ)
ํ๋ ์ด์์ ์ง์ ๋ ํญ๋ชฉ๊ณผ ์ผ์นํ๋ ๋ชจ๋ ์ฅํ ๋ฌธ์์ด๊ณผ ์ผ์นํฉ๋๋ค.
ํจํด. ์: ํจํด +(ํธ|๋ฐ) ๋ฌธ์์ด "foo", "bar",
"ํธ๋ฐ" ๋ฑ
?(๋ฌด๋ฌ|...|๋ฌด๋ฌ)
๋น ๋ฌธ์์ด ๋๋ ์ง์ ๋ ํจํด ์ค ํ๋์ ์ผ์นํ๋ ๋ฌธ์์ด์ ์ฐพ์ต๋๋ค.
์: ํจํด ?(ํธ|๋ฐ) "", "foo" ๋ฐ "bar" ๋ฌธ์์ด๋ง ์ผ์นํฉ๋๋ค.
@(๋ฌด๋ฌ|...|๋ฌด๋ฌ)
์ง์ ๋ ํจํด ์ค ํ๋์ ์ผ์นํ๋ ๋ฌธ์์ด์ ์ฐพ์ต๋๋ค. ์: ํจํด
@(ํธ|๋ฐ) "foo" ๋ฐ "bar" ๋ฌธ์์ด๋ง ์ผ์นํฉ๋๋ค.
!(๋ฌด๋ฌ|...|๋ฌด๋ฌ)
์ง์ ๋ ํจํด ์ค ํ๋์ ์ผ์นํ์ง ์๋ ๋ชจ๋ ๋ฌธ์์ด๊ณผ ์ผ์นํฉ๋๋ค. ์:
๋ฌด๋ฌ !(ํธ|๋ฐ) "foo" ๋ฐ "bar"๋ฅผ ์ ์ธํ ๋ชจ๋ ๋ฌธ์์ด๊ณผ ์ผ์นํฉ๋๋ค. ํจํด !(*)
์ผ์นํ๋ ๋ฌธ์์ด์ด ์์ต๋๋ค. ํจํด !(?)* ๋ชจ๋ ๋ฌธ์์ด๊ณผ ์ผ์นํฉ๋๋ค(์๊ฐํด๋ณด์ธ์).
ํนํ ๋์์ด ์๋ ๋ณต์กํ ๊ธ๋ก๋น์ ๋๋ฆฌ๋ค๋ ์ ์ ์ ์ํ์ญ์์ค. ๋ณ๋ ์ฌ์ฉ
๋น๊ต๊ฐ ๋ ๋น ๋ฅผ ์๋ ์๊ณ ๊ทธ๋ ์ง ์์ ์๋ ์์ต๋๋ค.
์ฐธ๊ณ mksh (๊ทธ๋ฆฌ๊ณ pdksh) '.'๊ณผ ์ผ์นํ์ง ์์ต๋๋ค. ๋ฐ '..', ํ์ง๋ง AT&T UNIX KSH, ๋ณธ sh, ๊ทธ๋ฆฌ๊ณ GNU
์ธ๊ฒ ๋๋ฆฌ๋ค ํ .
์์ ํจํด ์์ ์ค ์ด๋ ๊ฒ๋ a ์์ ๋ถ๋ถ์ ๋ง์นจํ('.')์ ์ผ์นํ์ง ์์ต๋๋ค.
ํ์ผ ์ด๋ฆ ๋๋ ์ฌ๋์('/'), [..] ์ํ์ค์์ ๋ช ์์ ์ผ๋ก ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ์๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ๋ํ,
์ด๋ฆ '.' ๋ฐ '..'๋ ํจํด '.*'์ ์ํด์๋ ์ผ์นํ์ง ์์ต๋๋ค.
๊ฒฝ์ฐ ๋งํฌ๋์ด ์ต์ ์ด ์ค์ ๋๋ฉด ํ์ผ ์ด๋ฆ ์์ฑ ๊ฒฐ๊ณผ๋ก ์์ฑ๋๋ ๋ชจ๋ ๋๋ ํ ๋ฆฌ๋
ํํ '/'๋ก ํ์๋ฉ๋๋ค.
์ ์ถ๋ ฅ ๋ฆฌ๋๋ ์
๋ช ๋ น์ด ์คํ๋๋ฉด ํ์ค ์ ๋ ฅ, ํ์ค ์ถ๋ ฅ ๋ฐ ํ์ค ์ค๋ฅ(ํ์ผ
๋์คํฌ๋ฆฝํฐ 0, 1, 2)์ ์ผ๋ฐ์ ์ผ๋ก ์์์ ์์๋ฉ๋๋ค. ์ผ
์ด์ ๋ํ ์์ธ๋ ํ์ค ์ ๋ ฅ ๋ฐ/๋๋ ํ์ค์ด ์๋ ํ์ดํ๋ผ์ธ์ ๋ช ๋ น์ ๋๋ค.
์ถ๋ ฅ์ ํ์ดํ๋ผ์ธ์ ์ํด ์ค์ ๋ ๊ฒ์ผ๋ก, ์์ ์ ์ด๊ฐ ์ํ๋ ๋ ์์ฑ๋๋ ๋น๋๊ธฐ ๋ช ๋ น์ ๋๋ค.
ํ์ค ์ ๋ ฅ์ด ์ฒ์์ / dev / null, ๋ช ๋ น
๋ค์ ๋ฆฌ๋๋ ์ ์ค ํ๋๊ฐ ์ง์ ๋์์ต๋๋ค.
>ํ์ผ ํ์ค ์ถ๋ ฅ์ ๋ค์์ผ๋ก ๋ฆฌ๋๋ ์ ๋ฉ๋๋ค. ํ์ผ. ๋ฉด ํ์ผ ์กด์ฌํ์ง ์๊ณ ์์ฑ๋ฉ๋๋ค.
์กด์ฌํ๋ ๊ฒฝ์ฐ ์ผ๋ฐ ํ์ผ์ด๋ฉฐ ๋ ธํด๋ก๋ฒ ์ต์ ์ด ์ค์ ๋์ด ์์ผ๋ฉด ์ค๋ฅ
๋ฐ์; ๊ทธ๋ ์ง ์์ผ๋ฉด ํ์ผ์ด ์๋ฆฝ๋๋ค. ์ด๊ฒ์ ๋ช ๋ น์ ์๋ฏธํฉ๋๋ค. cmd๋ฅผ
<ํธ >ํธ ์ด๋ฆด ๊ฒ์ด๋ค ํธ ์ฝ๊ธฐ ์ํด ์ด ๋ ์๋ผ๋ ๋๋ค.
์ฐ๊ธฐ, ์ ์ cmd๋ฅผ ์ค์ ๋ก ์ฝ์ ๊ธฐํ๋ฅผ ์ป๋๋ค ํธ.
>|ํ์ผ ๊ณผ ๋์ผ >, ํ์ผ์ด ์๋ฆฐ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ ๋ ธํด๋ก๋ฒ ์ต์ ์ด ์ค์ ๋์์ต๋๋ค.
>>ํ์ผ ๊ณผ ๋์ผ >, ๋ค์ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ ํ์ผ ์กด์ฌํ๋ ๊ฒฝ์ฐ ์๋ฆฌ๋ ๋์ ์ถ๊ฐ๋ฉ๋๋ค.
๋ํ ํ์ผ์ ์ถ๊ฐ ๋ชจ๋๋ก ์ด๋ฆฌ๋ฏ๋ก ์ฐ๊ธฐ๋ ํญ์
ํ์ผ(์ฐธ์กฐ ์ด ์(์ผ)).
<ํ์ผ ํ์ค ์ ๋ ฅ์ ๋ค์์์ ๋ฆฌ๋๋ ์ ๋ฉ๋๋ค. ํ์ผ, ์ฝ๊ธฐ์ฉ์ผ๋ก ์ด๋ฆฝ๋๋ค.
<>ํ์ผ ๊ณผ ๋์ผ <, ํ์ผ์ด ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ์ฉ์ผ๋ก ์ด๋ฆฌ๋ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ .
<<๋ง์ปค ์ด๋ฌํ ์ข ๋ฅ์ ๋ฆฌ๋๋ ์ ์ด ํฌํจ๋ ๋ช ๋ น์ค์ ์ฝ์ ํ(
"here document"), ์์ ๋ช ๋ น ์์ค์ ํ์
๋ผ์ธ์ด ์ผ์นํ ๋๊น์ง ์์ ํ์ผ ๋ง์ปค ์ฝ์ต๋๋ค. ๋ช ๋ น์ด
์คํ๋๋ฉด ํ์ค ์ ๋ ฅ์ด ์์ ํ์ผ์์ ๋ฆฌ๋๋ ์ ๋ฉ๋๋ค. ๋ง์ฝ์ ๋ง์ปค
์ธ์ฉ ๋ฌธ์๊ฐ ํฌํจ๋์ด ์์ง ์์ผ๋ฉด ์์ ํ์ผ์ ๋ด์ฉ์ด ์ฒ๋ฆฌ๋ฉ๋๋ค.
๋ช ๋ น์ด ์คํ๋ ๋๋ง๋ค ํฐ๋ฐ์ดํ๋ก ๋ฌถ์ธ ๊ฒ์ฒ๋ผ ๋งค๊ฐ๋ณ์,
๋ช ๋ น ๋ฐ ์ฐ์ ๋์ฒด๊ฐ ๋ฐฑ์ฌ๋์('\')์ ํจ๊ป ์ํ๋ฉ๋๋ค.
'$', '`', '\' ๋ฐ '\newline'์ ๋ํด์๋ ์ด์ค์ผ์ดํํ์ง๋ง '"'์ ๋ํด์๋ ์ด์ค์ผ์ดํํ์ง ์์ต๋๋ค. ์ฌ๊ธฐ์ ๋ค์ค์ธ ๊ฒฝ์ฐ
๋ฌธ์๋ ๋์ผํ ๋ช ๋ น์ค์์ ์ฌ์ฉ๋๋ฉฐ ์์๋๋ก ์ ์ฅ๋ฉ๋๋ค.
์๋ ๊ฒฝ์ฐ ๋ง์ปค ๊ฐ ์ฃผ์ด์ง๋ฉด here ๋ฌธ์๋ ๋ค์์์ ๋๋ฉ๋๋ค. << ๋ฐ ๋์ฒด
์ํ๋ฉ๋๋ค. ๋ง์ฝ์ ๋ง์ปค ๋จ์ผ "''" ๋๋ ์ด์ค '""'์ ์งํฉ์ผ ๋ฟ์ ๋๋ค.
์ฌ์ด์ ์๋ฌด ๊ฒ๋ ์๋ ๋ฐ์ดํ, here ๋ฌธ์๋ ๋ค์ ๋น ์ค์์ ๋๋ฉ๋๋ค.
๊ต์ฒด๊ฐ ์ํ๋์ง ์์ต๋๋ค.
<<-๋ง์ปค ๊ณผ ๋์ผ <<๋จ, ์ ํ ํญ์ด here ๋ฌธ์์ ์ค์์ ์ ๊ฑฐ๋๋ค๋ ์ ๋ง ๋ค๋ฆ ๋๋ค.
<<์๋ ๊ณผ ๋์ผ <<์ ์ธํ๊ณ ์๋ is ์ฌ๊ธฐ ๋ฌธ์. ์ด๊ณณ์ ์ฌ๊ธฐ๋ผ๊ณ ํฉ๋๋ค
๋.
<&fd ํ์ค ์ ๋ ฅ์ ํ์ผ ์ค๋ช ์์์ ๋ณต์ ๋ฉ๋๋ค. fd. fd ์ซ์๊ฐ ๋ ์ ์์ผ๋ฉฐ,
๊ธฐ์กด ํ์ผ ๋์คํฌ๋ฆฝํฐ์ ๋ฒํธ๋ฅผ ๋ํ๋ด๋ ๊ฒ; ๋ํ๋ด๋ ๋ฌธ์ 'p'
ํ์ฌ ๊ณต๋ ํ๋ก์ธ์ค์ ์ถ๋ ฅ๊ณผ ๊ด๋ จ๋ ํ์ผ ์ค๋ช ์ ์๋๋ฉด ๊ทธ
๋ฌธ์ '-'๋ ํ์ค ์ ๋ ฅ์ด ๋ซํ ์์์ ๋ํ๋ ๋๋ค. ์ฐธ๊ณ fd is
๋๋ถ๋ถ์ ์ ๊ตฌํ์์ ํ ์๋ฆฌ ์ซ์๋ก ์ ํ๋ฉ๋๋ค.
>&fd ๊ณผ ๋์ผ <&, ์์ ์ด ํ์ค ์ถ๋ ฅ์์ โโ์ํ๋๋ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ .
&>ํ์ผ ๊ณผ ๋์ผ >ํ์ผ 2> ๋ฐ 1. ์ด๊ฒ์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ (๋ ๊ฑฐ์) GNU์ ๋๋ค. ์ธ๊ฒ ๋๋ฆฌ๋ค ํ์ฅ ์ง์
by mksh ์์ ๋ช ์์ fd ๋ฒํธ๋ ์ง์ํฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
3&>ํ์ผ ์ ๋์ผํฉ๋๋ค 3>ํ์ผ 2> ๋ฐ 3 in mksh ๊ทธ๋ฌ๋ GNU์ ๊ตฌ๋ฌธ ์ค๋ฅ ์ธ๊ฒ ๋๋ฆฌ๋ค.
&>|ํ์ผ, &>>ํ์ผ, &>&fd
๊ณผ ๋์ผ >|ํ์ผ, >>ํ์ผ๋ฐ >&fd, ๋ค์ 2> ๋ฐ 1, ์์ ๊ฐ์ด. ์ด๊ฒ๋ค์ mksh
ํ์ฅ.
์์ ๋ฆฌ๋๋ ์ ์์ ๋ฆฌ๋๋ ์ ๋๋ ํ์ผ ์ค๋ช ์(์: ํ์ค
์ ๋ ฅ ๋๋ ํ์ค ์ถ๋ ฅ) ๋ฆฌ๋๋ ์ ์์ ์ซ์๋ฅผ ๋ถ์ฌ ๋ช ์์ ์ผ๋ก ์ง์ ํ ์ ์์ต๋๋ค.
(์ด์์ ์ผ๋ก๋ ํ ์๋ฆฌ๋ง). ๋งค๊ฐ๋ณ์, ๋ช ๋ น ๋ฐ ์ฐ์ ๋์ฒด, ๋ฌผ๊ฒฐํ
๋์ฒด ๋ฐ (์์ด ๋ํ์์ธ ๊ฒฝ์ฐ) ํ์ผ ์ด๋ฆ ์์ฑ์ด ๋ชจ๋ ์ํ๋ฉ๋๋ค.
์ ์, ํ์ผ, ๋ง์ปค๋ฐ fd ๋ฆฌ๋๋ ์ ์ธ์. ๊ทธ๋ฌ๋ ๋ชจ๋ ๊ฒฐ๊ณผ๋
ํ์ผ ์ด๋ฆ ์์ฑ์ ๋จ์ผ ํ์ผ์ด ์ผ์นํ๋ ๊ฒฝ์ฐ์๋ง ์ฌ์ฉ๋ฉ๋๋ค. ์ฌ๋ฌ ํ์ผ์ด ์ผ์นํ๋ ๊ฒฝ์ฐ
ํ์ฅ๋ ํ์ผ ์ด๋ฆ ์์ฑ ๋ฌธ์๊ฐ ์๋ ๋จ์ด๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ ํ๋
ํ์ผ์ ๋ง๋ค ์ ์๋ ๋ฆฌ๋๋ ์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋จ์ ๋ช ๋ น์ ๊ฒฝ์ฐ ๋ฆฌ๋๋ ์ ์ ๋ช ๋ น์ ์ด๋ ์์น์๋ ๋ํ๋ ์ ์์ต๋๋ค. ๋ณตํฉ ๋ช ๋ น์ ๊ฒฝ์ฐ
(if ๋ฌธ ๋ฑ) ๋ชจ๋ ๋ฆฌ๋๋ ์ ์ ๋์ ๋ํ๋์ผ ํฉ๋๋ค. ๋ฆฌ๋๋ ์ ์ด ์ฒ๋ฆฌ๋ฉ๋๋ค.
ํ์ดํ๋ผ์ธ์ด ์์ฑ๋ ํ ์ ๊ณต๋ ์์๋๋ก ๋ค์๊ณผ ๊ฐ์ด ์ธ์๋ฉ๋๋ค.
์์ ์ค ๋ฒํธ๊ฐ ์ถ๊ฐ๋ ์ค๋ฅ:
$ ๊ณ ์์ด /foo/bar 2>&1 >/dev/null | ํ๋ณด -n -t
I/O ์ฌ์ง์ ์ ์ํด ์์ฑ๋ ํ์ผ ์ค๋ช ์๋ ์ ์ ์ฉ์ ๋๋ค.
์ฐ์ ํํ
์ ์ ์ฐ์ ์์ ๋ค์๊ณผ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค. ํ์ ๋ช ๋ น, ๋ด๋ถ $((..)) ํํ์,
๋ด๋ถ ๋ฐฐ์ด ์ฐธ์กฐ(์: name[ํน๊ธ]), ์ซ์ ์ธ์๋ก test ๋ช ๋ น ๋ฐ
์ ์ ๋งค๊ฐ๋ณ์์ ๋ํ ํ ๋น ๊ฐ. ๊ฒฝ๊ณ : ์ด ๋ํ ์์์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค.
์ ์๋ก์ ๋ณํ, ์๋ฅผ ๋ค์ด ํ์ ๋ช ๋ น. ์ด๋จธ ๋๋๋ค ํ์ธ๋์ง ์์ ์ฌ์ฉ์ ์ฌ์ฉ
์๋ฅผ ๋ค์ด ์ฐ์ ์์ ํ๊ฒฝ์ผ๋ก๋ถํฐ์ ์ ๋ ฅ!
์์ ๋ถํธ ์๋ ์ฐ์ ์ ์ฌ์ฉํ์ฌ ๊ณ์ฐ๋๋ฉฐ mksh_ari_t ์ ํ(๋ถํธ ์๋ 32๋นํธ
์ ์), ์ ์ผํ '#' ๋ฌธ์๋ก ์์ํ์ง ์๋ ํ mksh_uari_t (a
32๋นํธ ๋ถํธ ์๋ ์ ์).
ํํ์์๋ ์์ซ์ ๋งค๊ฐ๋ณ์ ์๋ณ์, ๋ฐฐ์ด ์ฐธ์กฐ ๋ฐ ์ ์๊ฐ ํฌํจ๋ ์ ์์ต๋๋ค.
์์์ด๋ฉฐ ๋ค์ C ์ฐ์ฐ์์ ๊ฒฐํฉํ ์ ์์ต๋๋ค(๋ค์์ ๋์ด ๋ฐ ๊ทธ๋ฃนํ๋จ).
์ฐ์ ์์ ์ฆ๊ฐ):
๋จํญ ์ฐ์ฐ์:
+ - ! ~ ++ --
์ด์ง ์ฐ์ฐ์ :
,
= += -= *= /= %= <<<= >>>= <<= >>= &= ^= |=
||
&&
|
^
&
==! =
<<=>> =
<<< >>> << >>
+ -
* / %
์ผํญ ์ฐ์ฐ์:
?: (์ฐ์ ์์๊ฐ ํ ๋น๋ณด๋ค ๋ฐ๋ก ๋์)
๊ทธ๋ฃนํ ์ฐ์ฐ์:
()
์ ์ ์์์ ์์ ์ ํํ 32๋นํธ ํญ, ๋ถํธ ์๋ ๋๋
unsigned, ์ ์ ์ค๋ฒํ๋ก์ ์๋ ๋ฉ์ด๋ผ์ด๋๋ฅผ ์ฌ์ฉํ์ฌ ์ ๋ ฅํฉ๋๋ค. ์ ์ ์์๋ ๋ค์๊ณผ ๊ฐ์ ์ ์์ต๋๋ค.
ํ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ ์์์ ๊ธฐ์ค์ผ๋ก ์ง์ ๋จ ๊ธฐ์ง#๋ฒํธ์ด๋๋ก ๊ธฐ์ง ์ญ์ง์์ ๋๋ค
๋ฐ์ ์ง์ ํ๋ ์ ์ ๋ฐ ๋ฒํธ ์ง์ ๋ ๊ธฐ์ค์ ์ซ์์ ๋๋ค. ์ถ๊ฐ์ ์ผ๋ก,
base-16 ์ ์๋ ๋ชจ๋ '0x'(๋์๋ฌธ์ ๊ตฌ๋ถ) ์ ๋์ฌ๋ฅผ ๋ถ์ฌ์ ์ง์ ํ ์ ์์ต๋๋ค.
์ ๋ํ ์ซ์ ์ธ์๋ฅผ ์ ์ธํ ์ฐ์ ํํ์์ ํ์ test ๋ด์ฅ ๋ช ๋ น.
์ ์ผํ ์ซ์ 0('XNUMX')์ ์์ ๋ถ์ธ ์ซ์๋ ๋ค์๊ณผ ๊ฐ์ด XNUMX์ง์๋ก ํด์๋์ง ์์ต๋๋ค.
๊ทธ๊ฒ์ ์์ ํ์ง ์์ต๋๋ค.
์คํ์ ๋ก mksh ํ์ฅ์์์ ๋ฐ์ด 8์ธ ์ซ์๋ ๋ค์ ์ค ํ๋๋ก ์ฒ๋ฆฌ๋ฉ๋๋ค(XNUMX๋นํธ
transparent) ASCII ๋๋ ์ ๋์ฝ๋ ์ฝ๋ ํฌ์ธํธ(์ ธ์ ํ์์ ๋ฐ๋ผ ๋ค๋ฆ) utf8 ๋ชจ๋ ํ๋๊ทธ(ํ์ฌ
ํ๊ฒฝ). AT&T ์ ๋์ค ksh93 "1#x" ๋์ "'x'" ๊ตฌ๋ฌธ๋ ์ง์๋ฉ๋๋ค. ๋ฉ๋ชจ
NUL ๋ฐ์ดํธ(XNUMX์ ์ ์๊ฐ)๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ค์ ๋์ง ์์๊ฑฐ๋ ๋น์ด ์๋ ๋งค๊ฐ๋ณ์
์ ์ ์ปจํ ์คํธ์์ 0์ผ๋ก ํ๊ฐ๋ฉ๋๋ค. ์ ๋์ฝ๋ ๋ชจ๋์์ ์์ ์ฅํ ์ ๋ฒ์์ ๋งคํ๋ฉ๋๋ค.
OPTU-80์์์ ๊ฐ์ด EF8..EFFF๋ PUA์ ์๊ณ ์ด ์ฉ๋๋ก CSUR์ ์ํด ํ ๋น๋์์ต๋๋ค. ๋ง์ฝ์
ASCII ๋ชจ๋์์ ๋ ์ด์์ ์ฅํ ๋๋ ์ ํจํ ํ์์ ํ์ฑํ์ง ์๋ ๋ ์ด์์ ์ฅํ ์ํ์ค
์ต์ CESU-8 ์ํ์ค๊ฐ โโ์ ๋ฌ๋๋ฉด ๋์์ด ์ ์๋์ง ์์ต๋๋ค(์ผ๋ฐ์ ์ผ๋ก ์ ธ์ด ์ค๋จ๋จ).
๊ตฌ๋ฌธ ๋ถ์ ์ค๋ฅ๊ฐ ์์ง๋ง ๋๋ฌผ๊ฒ ์ฑ๊ณตํฉ๋๋ค(์: ์ํ์ค C2 20). ๊ทธ๋์ ๋น์ ์
์ ๋ ฅ์ด ์ฌ๋ฐ๋ฅธ ํ์์ UTF-8์ด๋ผ๋ ๊ฒ์ ์์ง ๋ชปํ๋ ํ ํญ์ ASCII ๋ชจ๋๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ 0000..FFFD ๋ฒ์ ์ฝ๊ธฐ -a.
์ฐ์ฐ์๋ ๋ค์๊ณผ ๊ฐ์ด ํ๊ฐ๋ฉ๋๋ค.
๋จํญ +
๊ฒฐ๊ณผ๋ ์ธ์์ ๋๋ค(์์ ์ฑ์ ์ํด ํฌํจ๋จ).
๋จํญ -
๋ถ์ .
! ๋ ผ๋ฆฌ์ NOT; ์ธ์๊ฐ 1์ด๋ฉด ๊ฒฐ๊ณผ๋ 0์ด๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด XNUMX์ ๋๋ค.
~ ์ฐ์ (๋นํธ ๋จ์) NOT.
++ ์ฆ๋ถ; ๋งค๊ฐ๋ณ์์ ์ ์ฉํด์ผ ํฉ๋๋ค(๋ฆฌํฐ๋ด ๋๋ ๊ธฐํ ํํ์์ด ์๋).
๋งค๊ฐ๋ณ์๋ 1์ฉ ์ฆ๊ฐํฉ๋๋ค. ์ ๋์ฌ ์ฐ์ฐ์๋ก ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ๋
์ฆ๊ฐ๋ ๋งค๊ฐ๋ณ์ ๊ฐ์ ๋๋ค. ํ์ ์ฐ์ฐ์๋ก ์ฌ์ฉ๋ ๋,
๊ฒฐ๊ณผ๋ ๋งค๊ฐ๋ณ์์ ์๋ ๊ฐ์ ๋๋ค.
-- ๋น์ทํ๋ค ++, ๋งค๊ฐ๋ณ์๊ฐ 1์ฉ ๊ฐ์ํ๋ค๋ ์ ์ ์ ์ธํ๊ณ .
, ๋ ์ฐ์ ์์ ๋ถ๋ฆฌํฉ๋๋ค. ์ผ์ชฝ์ด ๋จผ์ ํ๊ฐ๋๊ณ ,
๊ทธ๋ผ ์ค๋ฅธ์ชฝ. ๊ฒฐ๊ณผ๋ ์ค๋ฅธ์ชฝ ํํ์์ ๊ฐ์ ๋๋ค.
์ธก๋ฉด.
= ํ ๋น; ์ผ์ชฝ์ ๋ณ์๋ ์ค๋ฅธ์ชฝ์ ๊ฐ์ผ๋ก ์ค์ ๋ฉ๋๋ค.
+= -= *= /= %= <<<= >>>= <<= >>= &= ^= |=
ํ ๋น ์ฐ์ฐ์.์๋ค><op>=ํน๊ธ> ์ ๊ฐ๋ค์๋ค>=์๋ค><op><ํน๊ธ>,
์ฐ์ฐ์ ์ฐ์ ์์ํน๊ธ> ๋ณด์กด. ์๋ฅผ ๋ค์ด "var1 *= 5 +
3โ์ โvar1 = var1 * (5 + 3)โ์ ์ง์ ํ๋ ๊ฒ๊ณผ ๊ฐ์ต๋๋ค.
|| ๋ ผ๋ฆฌ์ OR; ์ธ์๊ฐ 1์ด ์๋ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ๋ 0์ด๊ณ ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ XNUMX์ ๋๋ค. ๊ทธ๋งํผ
์ค๋ฅธ์ชฝ ์ธ์๋ ์ผ์ชฝ ์ธ์๊ฐ XNUMX์ธ ๊ฒฝ์ฐ์๋ง ํ๊ฐ๋ฉ๋๋ค.
&& ๋ ผ๋ฆฌ AND; ๋ ์ธ์๊ฐ ๋ชจ๋ 1์ด ์๋๋ฉด ๊ฒฐ๊ณผ๋ 0์ด๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด XNUMX์ ๋๋ค. ๊ทธ๋งํผ
์ค๋ฅธ์ชฝ ์ธ์๋ ์ผ์ชฝ ์ธ์๊ฐ XNUMX์ด ์๋ ๊ฒฝ์ฐ์๋ง ํ๊ฐ๋ฉ๋๋ค.
| ์ฐ์ (๋นํธ ๋จ์) OR.
^ ์ฐ์ (๋นํธ ๋จ์) XOR(๋ฐฐํ์ OR).
& ์ฐ์ (๋นํธ ๋จ์) AND.
== ๊ฐ์; ๋ ์ธ์๊ฐ ๊ฐ์ผ๋ฉด ๊ฒฐ๊ณผ๋ 1์ด๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด 0์ ๋๋ค.
!= ๊ฐ์ง ์์; ๊ฒฐ๊ณผ๋ ๋ ์ธ์๊ฐ ๊ฐ์ผ๋ฉด 0์ด๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด 1์ ๋๋ค.
< ๋ฏธ๋ง; ๊ฒฐ๊ณผ๋ ์ผ์ชฝ ์ธ์๊ฐ ์ค๋ฅธ์ชฝ ์ธ์๋ณด๋ค ์์ผ๋ฉด 1์ด๊ณ , ๊ทธ๋ ์ง ์์ผ๋ฉด 0์ ๋๋ค.
์๋.
<= > >=
๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์, ๋ณด๋ค ํผ, ํฌ๊ฑฐ๋ ๊ฐ์. ๋ณด๋ค <.
<<< >>>
์ผ์ชฝ(์ค๋ฅธ์ชฝ)์ผ๋ก ํ์ ํฉ๋๋ค. ๊ฒฐ๊ณผ๋ shift์ ์ ์ฌํฉ๋๋ค(์ฐธ์กฐ <<)์ ์ ์ธํ๊ณ
ํ์ชฝ ๋์์ ์ด๋๋ ๋นํธ๋ XNUMX์ด ์๋ ๋ค๋ฅธ ์ชฝ ๋์์ ์ด๋๋ฉ๋๋ค.
๋๋ ๋ถํธ ๋นํธ.
<< >> ์ผ์ชฝ์ผ๋ก ์ด๋(์ค๋ฅธ์ชฝ); ๊ฒฐ๊ณผ๋ ๋นํธ๊ฐ ์ผ์ชฝ์ผ๋ก ์ด๋๋ ์ผ์ชฝ ์ธ์์ ๋๋ค.
(์ค๋ฅธ์ชฝ) ์ค๋ฅธ์ชฝ ์ธ์์ ์ฃผ์ด์ง ๊ธ์ก๋งํผ.
+ - * /
๋ํ๊ธฐ, ๋นผ๊ธฐ, ๊ณฑํ๊ธฐ, ๋๋๊ธฐ.
% ๋๋จธ์ง; ๊ฒฐ๊ณผ๋ ์ผ์ชฝ ๋ถํ ์ ๋์นญ ๋๋จธ์ง์ ๋๋ค.
๊ถ๋ฆฌ์ ์ํ ๋ ผ์. "a์ ์ํ์ ๊ณ์๋ฅผ ์ป์ผ๋ ค๋ฉด ๋ชจ๋ bโ๋ฅผ ์ฌ์ฉํ์ญ์์ค.
๊ณต์ "(a % b + b) % b".
<arg1>?arg2>:arg3>
๋ง์ฝarg1>๊ฐ XNUMX์ด ์๋ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.arg2>; ๊ทธ๋ ์ง ์์ผ๋ฉด ๊ฒฐ๊ณผ๋arg3>.
non-result ์ธ์๋ ํ๊ฐ๋์ง ์์ต๋๋ค.
๊ณต๋ ํ๋ก์ธ์ค
๊ณต๋ ํ๋ก์ธ์ค('|&' ์ฐ์ฐ์๋ก ์์ฑ๋ ํ์ดํ๋ผ์ธ)๋ ๋น๋๊ธฐ ํ๋ก์ธ์ค์ ๋๋ค.
์์ด ๋ ๋ค ์ธ ์ ์์(์ฌ์ฉ ์ธ์ -p) ๋ฐ ์ฝ๊ธฐ (์ฌ์ฉ ์ฝ๊ธฐ -p). ์ ๋ ฅ
๊ณต๋ ํ๋ก์ธ์ค์ ์ถ๋ ฅ์ ๋ค์์ ์ฌ์ฉํ์ฌ ์กฐ์ํ ์๋ ์์ต๋๋ค. >&p ๊ณผ <&p ๋ฆฌ๋๋ ์ ,
๊ฐ๊ธฐ. ๊ณต๋ ํ๋ก์ธ์ค๊ฐ ์์๋๋ฉด ๊ณต๋ ํ๋ก์ธ์ค๊ฐ ์๋ฃ๋ ๋๊น์ง ๋ค๋ฅธ ํ๋ก์ธ์ค๋ฅผ ์์ํ ์ ์์ต๋๋ค.
ํ๋ก์ธ์ค๊ฐ ์ข ๋ฃ๋๊ฑฐ๋ ์ฝํ๋ก์ธ์ค์ ์ ๋ ฅ์ด ๋ค์์ ์ฌ์ฉํ์ฌ ๋ฆฌ๋๋ ์ ๋ ๋๊น์ง ์์ n>&p
๋ฆฌ๋๋ ์ . ์ฝํ๋ก์ธ์ค์ ์ ๋ ฅ์ด ์ด๋ฐ ๋ฐฉ์์ผ๋ก ๋ฆฌ๋๋ ์ ๋๋ฉด ๋ค์ ์ฝํ๋ก์ธ์ค๋
์์๋จ์ ์ด๊ธฐ์ ์ถ๋ ฅ์ด ์๋ ํ ์ฒซ ๋ฒ์งธ ๊ณต๋ ํ๋ก์ธ์ค์ ์ถ๋ ฅ์ ๊ณต์ ํฉ๋๋ค.
co-process๋ ๋ค์์ ์ฌ์ฉํ์ฌ ๋ฆฌ๋๋ ์ ๋์์ต๋๋ค. ์์ n<&p ๋ฆฌ๋๋ ์ .
๊ณต๋ ํ๋ก์ธ์ค์ ๊ดํ ๋ช ๊ฐ์ง ์ฐธ๊ณ ์ฌํญ:
ยท ๊ณต๋ ํ๋ก์ธ์ค์ ์ ๋ ฅ์ ๋ซ๋ ์ ์ผํ ๋ฐฉ๋ฒ์(๋ฐ๋ผ์ ๊ณต๋ ํ๋ก์ธ์ค๊ฐ ํ์ผ ๋์ ์ฝ์)
์ ๋ ฅ์ ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ํ์ผ ์ค๋ช ์๋ก ๋ฆฌ๋๋ ์ ํ ๋ค์ ํด๋น ํ์ผ ์ค๋ช ์๋ฅผ ๋ซ์ต๋๋ค.
์์ 3>&p; ์์ 3>&-
ยท ๊ณต๋ ํ๋ก์ธ์ค๊ฐ ๊ณตํต ์ถ๋ ฅ์ ๊ณต์ ํ๋ ค๋ฉด ์์ด ์ฐ๊ธฐ๋ฅผ ์ ์งํด์ผ ํฉ๋๋ค.
์ถ๋ ฅ ํ์ดํ์ ์ผ๋ถ๊ฐ ์ด๋ ค ์์ต๋๋ค. ์ฆ, ํ์ผ ๋์ด ๊ฐ์ง๋ ๋๊น์ง ๊ฐ์ง๋์ง ์์ต๋๋ค.
๊ณต๋ ํ๋ก์ธ์ค์ ์ถ๋ ฅ์ ๊ณต์ ํ๋ ๋ชจ๋ ๊ณต๋ ํ๋ก์ธ์ค๊ฐ ์ข ๋ฃ๋์์ต๋๋ค(๋ชจ๋ ์ข ๋ฃ๋๋ฉด
์์ ํ์ดํ ์ฌ๋ณธ์ ๋ซ์ต๋๋ค). ์ด๊ฒ์ ์ถ๋ ฅ์
๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ํ์ผ ์ค๋ช ์(์ด๋ก ์ธํด ์์ด ๋ณต์ฌ๋ณธ์ ๋ซ๊ฒ ๋จ). ์ฐธ๊ณ
์ด ๋์์ ๋ณต์ฌ๋ณธ์ ๋ซ๋ ์๋ Korn ์ ธ๊ณผ ์ฝ๊ฐ ๋ค๋ฆ ๋๋ค.
๊ฐ์ฅ ์ต๊ทผ์ ์์๋ co-process๊ฐ ์์๋์์ ๋ co-process ์ถ๋ ฅ์ ์ฐ๊ธฐ ๋ถ๋ถ
(๋ชจ๋ ๊ณต์ ๊ณต๋ ํ๋ก์ธ์ค๊ฐ ์ข ๋ฃ๋๋ ๊ฒฝ์ฐ ๋์ ) ์ข ๋ฃ๋ฉ๋๋ค.
ยท ์ธ์ -p ์ ํธ๊ฐ ํธ๋ฉ๋์ง ์๋ ๊ฒฝ์ฐ ์ฐ๊ธฐ ์ค์ SIGPIPE ์ ํธ๋ฅผ ๋ฌด์ํ๊ฑฐ๋
๋ฌด์; ๊ณต๋ ํ๋ก์ธ์ค ์ ๋ ฅ์ด ๋ค๋ฅธ ํ์ผ์ ๋ณต์ ๋ ๊ฒฝ์ฐ์๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค.
๋์คํฌ๋ฆฝํฐ ๋ฐ ์ธ์ -un ์ฌ์ฉ.
๊ธฐ๋ฅ
ํจ์๋ Korn ์ ธ์ ์ฌ์ฉํ์ฌ ์ ์๋ฉ๋๋ค. ๊ธฐ๋ฅ ํจ์ ์ด๋ฆ ๊ตฌ๋ฌธ ๋๋
๋ณธ/POSIX ์ ํจ์ ์ด๋ฆ() ๊ตฌ๋ฌธ(๋ ์ฌ์ด์ ์ฐจ์ด์ ์ ์๋ ์ฐธ์กฐ)
์์). ํจ์๋ .-scripts(์ฆ, '.' ๋ด์ฅ์ ์ฌ์ฉํ์ฌ ์์ฑ๋ ์คํฌ๋ฆฝํธ)์ ๊ฐ์ต๋๋ค.
ํ์ฌ ํ๊ฒฝ์์ ์คํ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ .โscripts์ ๋ฌ๋ฆฌ ์ ์ธ์๋
(์: ์์น ๋งค๊ฐ๋ณ์ $1, $2 ๋ฑ)๋ ๋ด๋ถ์์ ๋ณผ ์ ์์ต๋๋ค. ๊ป์ง์ด ์์ ๋
๋ช ๋ น์ ์์น ๊ฒฐ์ , ๊ธฐ๋ฅ์ ํน์ ๋ด์ฅ ํ ๊ฒ์๋ฉ๋๋ค.
๋ด์ฅ ๋ฐ PATH๊ฐ ๊ฒ์๋๊ธฐ ์ ์ ๋ช ๋ น.
๊ธฐ์กด ๊ธฐ๋ฅ์ ๋ค์์ ์ฌ์ฉํ์ฌ ์ญ์ ํ ์ ์์ต๋๋ค. ์ค์ ํด์ -f ํจ์ ์ด๋ฆ. ํจ์ ๋ชฉ๋ก์
๋ฅผ ์ฌ์ฉํ์ฌ ์ป๋ค ์กฐํ +f ํจ์ ์ ์๋ ๋ค์์ ์ฌ์ฉํ์ฌ ๋์ดํ ์ ์์ต๋๋ค. ์กฐํ -f.
XNUMXD๋ดํ์ ์๋๋ก๋ ๋ช ๋ น(์ ๋ํ ๋ณ์นญ์ ๋๋ค. ์กฐํ -๋ถ) ์ ์๋์ง ์์ ์์ฑ์ ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
ํจ์: ์ ์๋์ง ์์ ํจ์๊ฐ ์คํ๋ ๋ ์์ ๋ค์์ ์ง์ ๋ ๊ฒฝ๋ก๋ฅผ ๊ฒ์ํฉ๋๋ค.
๋ฐ๊ฒฌ๋ ๊ฒฝ์ฐ ์ฝ์ ํจ์์ ๋์ผํ ์ด๋ฆ์ ๊ฐ์ง ํ์ผ์ ๋ํ FPATH ๋งค๊ฐ๋ณ์
๊ทธ๋ฆฌ๊ณ ์คํ. ํ์ผ์ ์คํํ ํ ๋ช ๋ช ๋ ํจ์๊ฐ ์ ์๋ ๊ฒ์ผ๋ก ํ์ธ๋๋ฉด
๊ธฐ๋ฅ์ด ์คํ๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ผ๋ฐ ๋ช ๋ น ๊ฒ์์ด ๊ณ์๋ฉ๋๋ค(์ฆ, ์
์ผ๋ฐ ๋ด์ฅ ๋ช ๋ น ํ ์ด๋ธ ๋ฐ PATH ๊ฒ์). ๋ช ๋ น์ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ
PATH๋ฅผ ์ฌ์ฉํ์ฌ FPATH๋ฅผ ์ฌ์ฉํ์ฌ ํจ์๋ฅผ ์๋ ๋ก๋ํ๋ ค๊ณ ์๋ํฉ๋๋ค(์ด๋ ๋ฌธ์ํ๋์ง ์์
์๋ Korn ์์ ๊ธฐ๋ฅ).
ํจ์๋ "trace"์ "export"์ ๋ ๊ฐ์ง ์์ฑ์ ๊ฐ์ง ์ ์์ผ๋ฉฐ ๋ค์๊ณผ ๊ฐ์ด ์ค์ ํ ์ ์์ต๋๋ค. ์กฐํ -ํผํธ
๊ณผ ์กฐํ -fx, ๊ฐ๊ฐ. ์ถ์ ๋ ํจ์๊ฐ ์คํ๋ ๋ ์ ธ์ ์์คํธ๋ ์ด์ค
๊ธฐ๋ฅ์ด ์ง์๋๋ ๋์ ์ต์ ์ด ์ผ์ ธ ์์ต๋๋ค. ํจ์์ "๋ด๋ณด๋ด๊ธฐ" ์์ฑ์
ํ์ฌ ์ฌ์ฉํ์ง ์์ต๋๋ค. ์๋ Korn ์ ธ์์ ๋ด๋ณด๋ธ ํจ์๋ ์ ธ์์ ๋ณผ ์ ์์ต๋๋ค.
์คํ๋๋ ์คํฌ๋ฆฝํธ.
ํจ์๋ ํ์ฌ ์ ํ๊ฒฝ์์ ์คํ๋๋ฏ๋ก ๋งค๊ฐ๋ณ์ ํ ๋น์ด ์ด๋ฃจ์ด์ง๋๋ค.
๋ด๋ถ ํจ์๋ ํจ์๊ฐ ์๋ฃ๋ ํ ํ์๋ฉ๋๋ค. ์ด๊ฒ์ด ์ํ๋ ๊ฒ์ด ์๋ ๊ฒฝ์ฐ
ํจ๊ณผ, ์กฐํ ๋ช ๋ น์ ํจ์ ๋ด์์ ๋ก์ปฌ ๋งค๊ฐ๋ณ์๋ฅผ ์์ฑํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ฉ๋ชจ
๊ทธ AT&T ์ ๋์ค ksh93 ์ ์ ๋ฒ์ ์ง์ ์ฌ์ฉ(ํจ์๋น ํ๋์ ์ ์ญ ๋ฒ์, ํ๋์ ๋ก์ปฌ ๋ฒ์)
Korn ์คํ์ผ ํจ์์์๋ง ์ง์ญ ๋ณ์๋ฅผ ํ์ฉํ๋ ๋ฐ๋ฉด mksh ๋์ ๋ฒ์ ์ง์ ์ฌ์ฉ
(๋ค์ํ ์ง์ญ์ ์ค์ฒฉ๋ ๋ฒ์). ํน์ ๋งค๊ฐ๋ณ์(์: $$, $!) ์ ์์ต๋๋ค
์ด๋ฐ ์์ผ๋ก ๋ฒ์๋ฅผ ์ง์ ํฉ๋๋ค.
ํจ์์ ์ข ๋ฃ ์ํ๋ ํจ์์์ ์คํ๋ ๋ง์ง๋ง ๋ช ๋ น์ ์ข ๋ฃ ์ํ์ ๋๋ค. ใ
๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ์ฆ์ ์ข ๋ฃํ๋๋ก ํ ์ ์์ต๋๋ค. return ๋ช ๋ น; ์ด๊ฒ์ ๋ํ ์ฌ์ฉ๋ ์ ์์ต๋๋ค
์ข ๋ฃ ์ํ๋ฅผ ๋ช ์์ ์ผ๋ก ์ง์ ํฉ๋๋ค.
๋ก ์ ์๋ ํจ์ ๊ธฐ๋ฅ ์์ฝ์ด๋ ๋ค์์์ ๋ค๋ฅด๊ฒ ์ทจ๊ธ๋ฉ๋๋ค.
๋ก ์ ์๋ ํจ์๋ก๋ถํฐ์ ๋ฐฉ๋ฒ () ํ๊ธฐ๋ฒ:
ยท $0 ๋งค๊ฐ๋ณ์๋ ํจ์ ์ด๋ฆ์ผ๋ก ์ค์ ๋ฉ๋๋ค(Bourne ์คํ์ผ ํจ์๋ $0
์๋์ง ์์).
ยท ํจ์ ํธ์ถ ์ด์ ์ ๋งค๊ฐ๋ณ์ ํ ๋น์ ์ ํ๊ฒฝ์์ ์ ์ง๋์ง ์์ต๋๋ค.
(Bourne ์คํ์ผ ํจ์๋ฅผ ์คํํ๋ฉด ํ ๋น์ด ์ ์ง๋ฉ๋๋ค).
ยท OPTIND๋ ์ ์ฅ/์ฌ์ค์ ๋๋ฉฐ ํจ์ ์ง์ ๋ฐ ์ข ๋ฃ ์ ๋ณต์๋๋ฏ๋ก getopts ๋ ์ ์์ต๋๋ค
ํจ์ ๋ด๋ถ์ ์ธ๋ถ ๋ชจ๋์์ ์ ์ ํ๊ฒ ์ฌ์ฉ๋จ(Bourne ์คํ์ผ ํจ์๋ OPTIND๋ฅผ ๊ทธ๋๋ก ๋ก๋๋ค.
์๋์ง ์์์ผ๋ฏ๋ก ์ฌ์ฉ getopts ํจ์ ๋ด๋ถ๋ ์ฌ์ฉ์ ๋ฐฉํดํฉ๋๋ค. getopts ๋ฐ์
ํจ์).
ยท ์ ์ต์ (์ธํธ -o) ๋ก์ปฌ ๋ฒ์๋ฅผ ๊ฐ์ง๋๋ค. ์ฆ, ํจ์ ๋ด๋ถ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ค์์ ์ฌ์ค์ ๋ฉ๋๋ค.
๊ทธ๊ฒ์ ์ถ๊ตฌ.
ํฅํ์๋ ๋ค์๊ณผ ๊ฐ์ ์ฐจ์ด์ ๋ ์ถ๊ฐ๋ ์ ์์ต๋๋ค.
ยท ๊ธฐ๋ฅ์ ์คํํ๋ ๋์ ๋ณ๋์ ํธ๋ฉ/์ ํธ ํ๊ฒฝ์ด ์ฌ์ฉ๋ฉ๋๋ค. ์ด๊ฒ
ํจ์ ๋ด๋ถ์ ์ค์ ๋ ํธ๋ฉ์ด ์์ ํธ๋ฉ ๋ฐ ์ ํธ์ ์ํฅ์ ๋ฏธ์น์ง ์์์ ์๋ฏธํฉ๋๋ค.
์ ธ์์ ๋ฌด์๋์ง ์๋(๊ทธ๋ฌ๋ ๋ซ์ ๊ฑธ๋ฆด ์ ์์)
๊ธฐ๋ฅ.
ยท EXIT ํธ๋ฉ์ ํจ์์ ์ค์ ๋ ๊ฒฝ์ฐ ํจ์๊ฐ ๋ฐํ๋ ํ์ ์คํ๋ฉ๋๋ค.
๋ช ๋ น ์คํ
๋ช ๋ น์ค ์ธ์, ๋ฆฌ๋๋ ์ ๋ฐ ๋งค๊ฐ๋ณ์ ํ ๋น์ ํ๊ฐํ ํ
๋ช ๋ น ์ ํ์ด ๊ฒฐ์ ๋ฉ๋๋ค: ํน์ ๋ด์ฅ ๋ช ๋ น, ํจ์, ์ผ๋ฐ ๋ด์ฅ ๋๋
์คํํ ํ์ผ์ ์ด๋ฆ์ PATH ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ฐพ์์ต๋๋ค. ๊ฒ์ฌ๋
์์ ์์. ํน์ ๋ด์ฅ ๋ช ๋ น์ PATH๊ฐ ๋ค๋ฅธ ๋ช ๋ น๊ณผ ๋ค๋ฆ ๋๋ค.
๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์คํ ์ค ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด
์ข ๋ฃํ ๋ํ์ ์ ๋ฐ ๋ช ๋ น ์์ ์ง์ ๋๋ ๋งค๊ฐ๋ณ์ ํ ๋น
๋ช ๋ น์ด ์๋ฃ๋ ํ์๋ ์ ์ง๋ฉ๋๋ค. ์ผ๋ฐ ๋ด์ฅ ๋ช ๋ น์ ๋ค์๊ณผ ๊ฐ์ ์ ์์๋ง ๋ค๋ฆ ๋๋ค.
PATH ๋งค๊ฐ๋ณ์๋ ์ด๋ฅผ ์ฐพ๋ ๋ฐ ์ฌ์ฉ๋์ง ์์ต๋๋ค.
์๋ KSH ๊ทธ๋ฆฌ๊ณ POSIX๋ ๋ช ๋ น์ด ํน๋ณํ๊ฑฐ๋
๊ท์น์ ์ธ
POSIX ํน์ ๋ด์ฅ ์ ํธ๋ฆฌํฐ:
., :, ํ๋ค, ๊ณ์, ํ๊ฐ, ์์, ์ถ๊ตฌ, ์์ถ, ์ฝ๊ธฐ ์ ์ฉ, return, ์ธํธ, ๋ณํ, ์๋, ํธ๋ฉ,
์ค์ ํด์
์ถ๊ฐ mksh ํ ๋น์ ์ ์งํ๋ ๋ช ๋ น:
๋ด์ฅ, ๊ธ๋ก๋ฒ, , ์กฐํ, ๊ธฐ๋ค๋ฆฌ๋ค
ํน๋ณํ์ง ์์ ๋ด์ฅ:
[, ๋ณ๋ช , bg, ๋ฐ์ธ๋ฉ, ๋ฐฉ๋ฒ, cd, ๋ช ๋ น, ์์ฝ, ๊ทธ๋ฆ๋, fc, fg, getopts, ์์ , ์ฃฝ์ด๊ธฐ, ํ์, ์ธ์,
pwd, ์ฝ๊ธฐ, ์ง์ง ๊ฒฝ๋ก, ์ด๋ฆ ๋ณ๊ฒฝ, ์ , ๋งค๋ฌ๋ค, test, ์ฐธ๋, ํ๊ณ, ๋ง์คํฌ, ๋ณ์นญ, ์ด๋ป๊ฒ
๋ช ๋ น ์ ํ์ด ๊ฒฐ์ ๋๋ฉด ๋ชจ๋ ๋ช ๋ น์ค ๋งค๊ฐ๋ณ์ ํ ๋น์
๋ช ๋ น์ด ์คํ๋๋ ๋์ ์ํ๋๊ณ ๋ด๋ณด๋ด์ง๋๋ค.
๋ค์์ ํน์ ๋ฐ ์ผ๋ฐ ๋ด์ฅ ๋ช ๋ น๊ณผ ๋ด์ฅ ์ ์ฌ ์์ฝ์ ๋ํด ์ค๋ช ํฉ๋๋ค.
๋จ์ด:
. ํ์ผ [์๋ฅดํจํฐ๋ ...]
์ด๊ฒ์ "์ " ๋ช ๋ น์ด๋ผ๊ณ ํฉ๋๋ค. ์์ ๋ช ๋ น์ ์คํํฉ๋๋ค. ํ์ผ ํ์ฌ
ํ๊ฒฝ. ํ์ผ์ PATH ๋๋ ํ ๋ฆฌ์์ ๊ฒ์๋ฉ๋๋ค. ์ธ์๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ
์์น ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ก์ธ์คํ ์ ์์ต๋๋ค. ํ์ผ ๋๋ ๊ฒ์ ๋๋ค
์คํ. ์ธ์๊ฐ ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ์์น ๋งค๊ฐ๋ณ์๋
๋ช ๋ น์ด ์ฌ์ฉ๋๋ ํ๊ฒฝ.
: [...]
๋ ๋ช ๋ น. ์ข ๋ฃ ์ํ๋ XNUMX์ผ๋ก ์ค์ ๋ฉ๋๋ค.
[ ํํ ]
๋ง๋๋ค test.
๋ณ๋ช [-d | -t [-r] | +-x] [-p] [+] [name [=๊ฐ์น] ...]
์ธ์ ์์ด, ๋ณ๋ช ๋ชจ๋ ๋ณ์นญ์ ๋์ดํฉ๋๋ค. ๊ฐ์ด ์๋ ์ด๋ฆ์ ๊ฒฝ์ฐ
๊ธฐ์กด ๋ณ์นญ์ด ๋์ด๋ฉ๋๋ค. ๊ฐ์ด ์๋ ์ด๋ฆ์ ๋ณ์นญ์ ์ ์ํฉ๋๋ค(์ฐธ์กฐ: ๋ณ์นญ
์).
๋ณ์นญ์ ๋์ดํ ๋ ๋ ๊ฐ์ง ํ์ ์ค ํ๋๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๋ณ์นญ์ ๋ค์๊ณผ ๊ฐ์ด ๋์ด๋ฉ๋๋ค.
name=๊ฐ์น์ด๋๋ก ๊ฐ์น ์ธ์ฉ๋๋ค. ์ต์ ์์ '+' ๋๋ ๋จ๋ '+'๊ฐ ์๋ ๊ฒฝ์ฐ
๋ช ๋ น์ค์๋ง ์ ๊ณต๋ฉ๋๋ค. name ์ธ์๋ฉ๋๋ค.
XNUMXD๋ดํ์ -d ์ต์ ์ ์ฌ์ฉํ๋ฉด ๋ฌผ๊ฒฐํ ํ์ฅ์ ์ฌ์ฉ๋๋ ๋๋ ํ ๋ฆฌ ๋ณ์นญ์ด ๋์ด๋ฉ๋๋ค.
๋๋ ์ค์ (์ฐธ์กฐ ํธ๋ฐ ํ์ฅ ์).
๊ฒฝ์ฐ -p ์ต์ ์ ์ฌ์ฉํ๋ฉด ๊ฐ ๋ณ์นญ์ "alias "๋ผ๋ ์ ๋์ฌ๊ฐ ๋ถ์ต๋๋ค.
XNUMXD๋ดํ์ -t ์ต์ ์ ์ถ์ ๋ ๋ณ์นญ์ด ๋์ด/์ค์ ๋จ์ ๋ํ๋ ๋๋ค(์ง์ ๋ ๊ฐ
์ถ์ ๋ ๋ณ์นญ์ ๋ํด์๋ ๋ช ๋ น์ค์์ ๋ฌด์๋จ). ๊ทธ๋งํผ -r ์ต์ ์
์ถ์ ๋ ๋ชจ๋ ๋ณ์นญ์ด ์ฌ์ค์ ๋ฉ๋๋ค.
XNUMXD๋ดํ์ -x ์ต์ ์ธํธ(+x clears) ๋ณ์นญ์ ๋ด๋ณด๋ด๊ธฐ ์์ฑ ๋๋ ์ด๋ฆ์ด ์๋ ๊ฒฝ์ฐ
์ฃผ์ด์ง ๊ฒฝ์ฐ ๋ด๋ณด๋ด๊ธฐ ์์ฑ์ด ์๋ ๋ณ์นญ์ ๋์ดํฉ๋๋ค(๋ณ์นญ ๋ด๋ณด๋ด๊ธฐ์๋
ํจ๊ณผ).
bg [์ผ ...]
์ง์ ๋ ์ค์ง๋ ์์ ์ ๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋ค์ ์์ํฉ๋๋ค. ์์ ์ด ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ %+
๊ฐ์ ๋ฉ๋๋ค. ๋ณด๋ค ์ผ ์ ์ด ์์ธํ ๋ด์ฉ์ ์๋๋ฅผ ์ฐธ์กฐํ์ธ์.
๋ฐ์ธ๋ฉ [-l]
ํ์ฌ ๋ฐ์ธ๋ฉ์ด ๋์ด๋ฉ๋๋ค. ๋ง์ฝ -l ๊น๋ฐ์ด ์ฃผ์ด์ง๊ณ , ๋ฐ์ธ๋ฉ ๋์ ๋ค์์ ๋์ดํฉ๋๋ค.
ํค๊ฐ ๋ฐ์ธ๋ฉ๋ ์ ์๋ ๊ธฐ๋ฅ์ ์ด๋ฆ. ๋ณด๋ค ์ด๋งฅ์ค ํธ์ง ๋ชจ๋ ์์ธํ
์ ๋ณด.
๋ฐ์ธ๋ฉ [-m] ํ=[๋์ฉํ] ...
๋ฐ์ธ๋ฉ ํ=[ํธ์ง ๋ช ๋ น] ...
์ง์ ๋ ํธ์ง ๋ช ๋ น์ ์ฃผ์ด์ง ํ, ๋ค์์ผ๋ก ๊ตฌ์ฑ๋์ด์ผ ํฉ๋๋ค.
์ ํ์ ์ผ๋ก ์์ ๋ ๊ฐ์ ์ ๋์ฌ ๋ฌธ์ ์ค ํ๋๊ฐ ์ค๋ ์ ์ด ๋ฌธ์ ๋ฐ
์ ํ์ ์ผ๋ก ๋ฌผ๊ฒฐํ ๋ฌธ์๊ฐ ์ด์ด์ง๋๋ค. ๋ฏธ๋์ ์ ๋ ฅ ํ ์ ์์ธ์ด๋ฉ๋๋ค
์ฆ์ ํธ์ถ๋๋ ํธ์ง ๋ช ๋ น. ๋ง์ฝ -m ํ๋๊ทธ๊ฐ ์ฃผ์ด์ง๋ฉด ์ง์ ๋
์ ๋ ฅ ํ ๋์ค์ ์ฃผ์ด์ง ๊ฒ์ผ๋ก ์ฆ์ ๋์ฒด๋ฉ๋๋ค. ๋์ฉํ ํ
ํธ์ง ๋ช ๋ น์ ํฌํจํ ์ ์์ง๋ง ๋ค๋ฅธ ๋งคํฌ๋ก๋ ํฌํจํ์ง ์์ ์ ์์ต๋๋ค. ๋ฌผ๊ฒฐํ ์ ๋ฏธ์ฌ๊ฐ
์ฃผ์ด์ง ๊ฒฝ์ฐ ํ๋ ๋๋ ๋ ๊ฐ์ ์ ๋์ฌ์ ์ ์ด ๋ฌธ์ ๋ค์ ์ค๋ ๋ฌผ๊ฒฐํ๋ ๋ฌด์๋ฉ๋๋ค.
๋ค๋ฅธ ํํ ๋ฌธ์๋ ๋์ค์ ์ฒ๋ฆฌ๋ฉ๋๋ค.
์ ์ด ๋ฌธ์๋ ์บ๋ฟ ํ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ ์์ฑํ ์ ์์ต๋๋ค. ์ฆ ^X๋ Ctrl-X๋ฅผ ๋ํ๋ ๋๋ค.
๋ ๊ฐ์ ์ ๋์ฌ ๋ฌธ์(์ผ๋ฐ์ ์ผ๋ก ESC ๋ฐ ^X)๋ง ์ง์๋์ง๋ง
์ผ๋ถ ๋ค์ค ๋ฌธ์ ์ํ์ค๊ฐ โโ์ง์๋ ์ ์์ต๋๋ค.
๋ค์ ๊ธฐ๋ณธ ๋ฐ์ธ๋ฉ์ ํ์ดํ ํค, ํ, ์ข ๋ฃ ๋ฐ ์ญ์ ํค๋ฅผ ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง ๋ณด์ฌ์ค๋๋ค.
BSD wsvt25, xterm-xfree86 ๋๋ GNU ์คํฌ๋ฆฐ ํฐ๋ฏธ๋์์ ๋ฐ์ธ๋ฉ๋ฉ๋๋ค(๋ฌผ๋ก ์ผ๋ถ
์ด์ค์ผ์ดํ ์ํ์ค๋ ์ด๋ ๊ฒ ์ ์๋ํ์ง ์์ต๋๋ค.):
๋ฐ์ธ๋ '^X'=์ ๋์ฌ-2
๋ฐ์ธ๋ '^[['=prefix-2
๋ฐ์ธ๋ '^XA'=์ ํ์คํ ๋ฆฌ
๋ฐ์ธ๋ '^XB'=๋ค์ด ํ์คํ ๋ฆฌ
๋ฐ์ธ๋ '^XC'=์ ๋ฐฉํฅ ๋ฌธ์
๋ฐ์ธ๋ '^XD'=์ญ๋ฐฉํฅ ๋ฌธ์
๋ฐ์ธ๋ '^X1~'=ํ์ ์์
๋ฐ์ธ๋ '^X7~'=ํ์ ์์
๋ฐ์ธ๋ '^XH'=ํ์ ์์
๋ฐ์ธ๋ '^X4~'=์ค ๋
๋ฐ์ธ๋ '^X8~'=์ค ๋
๋ฐ์ธ๋ '^XF'=์ค ๋
๋ฐ์ธ๋ '^X3~'=delete-char-forward
ํ๋ค [์ํ]
๋๋ด๊ธฐ ์ํ๊ฐ์ฅ ์์ชฝ for , ๊ณ ๋ฅด๋ค, ๊น์ง๋ฐ ๋์ ๊ณ ๋ฆฌ. ์ํ ๊ธฐ๋ณธ๊ฐ์ 1์ ๋๋ค.
๋ด์ฅ [--] ๋ช ๋ น [์๋ฅดํจํฐ๋ ...]
๋ด์ฅ ๋ช ๋ น ์คํ ๋ช ๋ น.
๋ฐฉ๋ฒ [-u] [ํ์ผ ...]
ํ์ผ์ ๋ช ๋ น์ค ์์๋ก ์์ฐจ์ ์ผ๋ก ์ฝ๊ณ ํ์ค ์ถ๋ ฅ์ ์๋๋ค.
๊ฒฝ์ฐ ํ์ผ ๋จ์ผ ๋์('-')์ด๊ฑฐ๋ ๋ถ์ฌ์ด๋ฉฐ ํ์ค ์ ๋ ฅ์์ ์ฝ์ต๋๋ค. ์ง์
๋ด์ฅ ํธ์ถ, POSIX -u ์ต์ ์ no-op๋ก ์ง์๋ฉ๋๋ค. ์์์ ํธ์ถํ๋ ๊ฒฝ์ฐ
๋ชจ๋ ์ต์ ์ด ์ ๊ณต๋๊ณ ์ธ๋ถ ๋ฐฉ๋ฒ(1) ๋นํธ์ธ๋ณด๋ค ์ ํธ๋ฆฌํฐ๊ฐ ์ ํธ๋ฉ๋๋ค.
cd [-L] [DIR]
cd -P [-e] [DIR]
chdir [-eLP] [DIR]
์์ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ค์์ผ๋ก ์ค์ DIR. ๋งค๊ฐ๋ณ์ CDPATH๊ฐ ์ค์ ๋ ๊ฒฝ์ฐ ๋ค์์ ๋์ดํฉ๋๋ค.
ํฌํจํ๋ ๋๋ ํ ๋ฆฌ์ ๊ฒ์ ๊ฒฝ๋ก DIR. NULL ๊ฒฝ๋ก๋ ํ์ฌ
์๋ฐฐ ๊ท์น์. ๋ง์ฝ์ DIR ์ด์ธ์ CDPATH ๊ฒ์ ๊ฒฝ๋ก์ ๋ชจ๋ ๊ตฌ์ฑ ์์์์ ์ฐพ์ ์ ์์ต๋๋ค.
NULL ๊ฒฝ๋ก, ์ ์์ ๋๋ ํ ๋ฆฌ์ ์ด๋ฆ์ด ํ์ค ์ถ๋ ฅ์ ๊ธฐ๋ก๋ฉ๋๋ค.
If DIR ์ด ์์ผ๋ฉด ํ ๋๋ ํ ๋ฆฌ HOME์ด ์ฌ์ฉ๋ฉ๋๋ค. ๋ง์ฝ์ DIR '-'๋ ์ด์
์์ ๋๋ ํ ๋ฆฌ๊ฐ ์ฌ์ฉ๋ฉ๋๋ค(OLDPWD ๋งค๊ฐ๋ณ์ ์ฐธ์กฐ).
๊ฒฝ์ฐ -L ์ต์ (๋ ผ๋ฆฌ ๊ฒฝ๋ก)์ด ์ฌ์ฉ๋๊ฑฐ๋ ๋ฌผ๋ฆฌ์ ์ต์ ์ด ์ค์ ๋์ง ์์์ต๋๋ค(
์ธํธ ์๋ ๋ช ๋ น), '..'์ ๋ํ ์ฐธ์กฐ DIR ๋์ฐฉํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๊ฒฝ๋ก์ ์๋์ ์ ๋๋ค.
๋๋ ํ ๋ฆฌ. ๋ง์ฝ -P ์ต์ (๋ฌผ๋ฆฌ์ ๊ฒฝ๋ก)์ด ์ฌ์ฉ๋๊ฑฐ๋ ๋ฌผ๋ฆฌ์ ์ต์ ์
set, '..'์ ํ์ผ ์์คํ ๋๋ ํ ๋ฆฌ ํธ๋ฆฌ์ ์๋์ ์ ๋๋ค. PWD ๋ฐ OLDPWD
๋งค๊ฐ๋ณ์๋ ํ์ฌ ๋ฐ ์ด์ ์์ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ฐ์ํ๋๋ก ์ ๋ฐ์ดํธ๋ฉ๋๋ค.
๊ฐ๊ธฐ. ๋ง์ฝ -e ์ต์ ์ ๋ฌผ๋ฆฌ์ ํ์ผ ์์คํ ์ํ ๋ฐ PWD์ ๋ํด ์ค์ ๋ฉ๋๋ค.
์ค์ ํ ์ ์์ต๋๋ค. ์ข ๋ฃ ์ฝ๋๋ 1์ ๋๋ค. ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ 1๋ณด๋ค ํผ, 0
๊ทธ๋ ์ง ์์ผ๋ฉด.
cd [-eLP] ๋ก์
chdir [-eLP] ๋ก์
๋ฌธ์์ด ๋์ฒด ๋จ ๋ก์ ํ์ฌ ๋๋ ํ ๋ฆฌ ๋ฐ ์
์ ๋๋ ํ ๋ฆฌ๋ก ๋ณ๊ฒฝ์ ์๋ํฉ๋๋ค.
๋ช ๋ น [-pVv] cmd๋ฅผ [์๋ฅดํจํฐ๋ ...]
๋ ๋ค -v ...๋ ์๋๋ค -V ์ต์ ์ด ์ฃผ์ด์ง๊ณ , cmd๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์ ํํ๊ฒ ์คํ๋ฉ๋๋ค. ๋ช ๋ น ํ๋ค
๋ ๊ฐ์ง ์์ธ๋ฅผ ์ ์ธํ๊ณ ๋ ์ง์ ๋์ง ์์์ต๋๋ค. ์ฒซ์งธ, cmd๋ฅผ ์ ํจ์์ผ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ
๋์งธ, ํน์ ๋ด์ฅ ๋ช ๋ น์ ํน์์ฑ์ ์์ต๋๋ค(์: ๋ฆฌ๋๋ ์ ๋ฐ
์ ํธ๋ฆฌํฐ ์ค๋ฅ๋ก ์ธํด ์์ด ์ข ๋ฃ๋์ง ์์ผ๋ฉฐ ๋ช ๋ น ์ง์ ์ด ์ํ๋์ง ์์ต๋๋ค.
์๊ตฌ์ ์ธ).
๊ฒฝ์ฐ -p ์ต์ ์ด ์ ๊ณต๋๋ฉด ํ์ฌ ๊ฐ ๋์ ๊ธฐ๋ณธ ๊ฒ์ ๊ฒฝ๋ก๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.
์ค์ ๊ฐ์ ์์คํ ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค.
๊ฒฝ์ฐ -v ์คํํ๋ ๋์ ์ต์ ์ด ์ ๊ณต๋ฉ๋๋ค. cmd๋ฅผ, ๋ฌด์์ ๋ํ ์ ๋ณด
์คํ์ด ์ฃผ์ด์ง๋๋ค(๋์ผํ๊ฒ ์ํ๋ฉ๋๋ค. ์๋ฅดํจํฐ๋ ...). ๋นํธ์ธ, ํจ์ ๋ฐ
ํค์๋, ๊ทธ ์ด๋ฆ์ ๋จ์ํ ์ธ์๋ฉ๋๋ค. ๋ณ์นญ์ ๊ฒฝ์ฐ ์ด๋ฅผ ์ ์ํ๋ ๋ช ๋ น์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ธ์; PATH ๋งค๊ฐ๋ณ์๋ฅผ ๊ฒ์ํ์ฌ ์ฐพ์ ์ ํธ๋ฆฌํฐ์ ๊ฒฝ์ฐ
๋ช ๋ น์ด ์ธ์๋ฉ๋๋ค. ๋ช ๋ น์ด ๋ฐ๊ฒฌ๋์ง ์์ผ๋ฉด(์: ๊ฒฝ๋ก ๊ฒ์ ์คํจ) ์๋ฌด ๊ฒ๋ ๊ฒ์๋์ง ์์ต๋๋ค.
์ธ์ ๋ฐ ๋ช ๋ น XNUMX์ด ์๋ ์ํ๋ก ์ข ๋ฃํฉ๋๋ค. ๊ทธ๋งํผ -V ์ต์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. -v
๋ ์ฅํฉํ๋ค๋ ์ ์ ์ ์ธํ๋ฉด ์ต์ ์ ๋๋ค.
๊ณ์ [์ํ]
์์ ๋ถ๋ถ์ผ๋ก ์ด๋ํฉ๋๋ค. ์ํ๊ฐ์ฅ ์์ชฝ for , ๊ณ ๋ฅด๋ค, ๊น์ง๋ฐ ๋์ ๊ณ ๋ฆฌ.
์ํ ๊ธฐ๋ณธ๊ฐ์ 1์ ๋๋ค.
์์ฝ [-์] [์๋ฅดํจํฐ๋ ...]
๊ฒฝ๊ณ : ์ด ์ ํธ๋ฆฌํฐ๋ ์ด์์ฑ์ด ์์ต๋๋ค. Korn ์ ๋ด์ฅ ์ฌ์ฉ ์ธ์ ๋์ .
์ธ์(๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ) ๋ค์ ์ค ๋ฐ๊ฟ์ ํ์ค์ผ๋ก ์ธ์ํฉ๋๋ค.
์ฐ์ถ. ์ธ์์ ๋ฐฑ์ฌ๋์๊ฐ ํฌํจ๋ ๊ฒฝ์ฐ ์ค ๋ฐ๊ฟ์ด ์ต์ ๋ฉ๋๋ค.
์ํ์ค '\c'. ์ฐธ์กฐ ์ธ์ ๋ค๋ฅธ ๋ฐฑ์ฌ๋์ ์ํ์ค ๋ชฉ๋ก์ ๋ณด๋ ค๋ฉด ์๋ ๋ช ๋ น
์ธ์๋ฉ๋๋ค.
์ต์ ์ BSD ์ ์คํฌ๋ฆฝํธ์์ ํธํ์ฑ์ ์ํด ์ ๊ณต๋ฉ๋๋ค. ๊ทธ๋งํผ -n ์ ํ๊ถ
ํํ ์ค ๋ฐ๊ฟ์ ์ต์ ํฉ๋๋ค. -e ๋ฐฑ์ฌ๋์ ํด์์ ํ์ฑํํฉ๋๋ค(no-op, ์ดํ
์ด๊ฒ์ ์ผ๋ฐ์ ์ผ๋ก ์ํ๋ฉ๋๋ค) ๋ฐ -E ๋ฐฑ์ฌ๋์ ํด์์ ์ต์ ํฉ๋๋ค.
๊ฒฝ์ฐ POSIX or sh ์ต์ ์ด ์ค์ ๋์ด ์๊ฑฐ๋ ์ด๊ฒ์ ์ง์ ๋ด์ฅ ํธ์ถ์ ๋๋ค.
์ธ์๋ ์ต์ ์ผ๋ก ์ทจ๊ธ๋๋ฉฐ ์ ํํ "-n". ๋ฐฑ์ฌ๋์
ํต์ญ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค.
ํ๊ฐ ๋ช ๋ น ...
์ธ์๊ฐ ์ฐ๊ฒฐ๋์ด(๋ ์ฌ์ด์ ๊ณต๋ฐฑ ํฌํจ) ๋จ์ผ ๋ฌธ์์ด์ ํ์ฑํฉ๋๋ค.
๊ทธ๋ฌ๋ฉด ์ ธ์ด ํ์ฌ ํ๊ฒฝ์์ ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ ์คํํฉ๋๋ค.
์์ [-a argv0] [-c] [๋ช ๋ น [์๋ฅดํจํฐ๋ ...]]
์ด ๋ช ๋ น์ ๋ถ๊ธฐ ์์ด ์คํ๋์ด ์ ธ ํ๋ก์ธ์ค๋ฅผ ๋์ฒดํฉ๋๋ค. ์ด๊ฒ์
ํ์ฌ ์ ๋์ , ์ฆ ์์ ๊ฒฝ์ฐ์๋ ์ ๋ ๋ฐํ๋์ง ์์ต๋๋ค. ๋ช ๋ น ์ฐพ์ ์ ์์ต๋๋ค. ๊ทธ๋งํผ
-a ์ต์ ์ ๋ค๋ฅธ argv[0] ๊ฐ ์ค์ ์ ํ์ฉํ๊ณ -c ํ๊ฒฝ์ ์ฒญ์ํฉ๋๋ค
_ ๋ณ์์ ์ง์ ํ ๋น์ ์ ์ธํ๊ณ ์์ ํ๋ก์ธ์ค๋ฅผ ์คํํ๊ธฐ ์ ์.
I/O ๋ฆฌ๋๋ ์ ์ธ์ ๋ช ๋ น์ด ์ฃผ์ด์ง์ง ์์ผ๋ฉด I/O ๋ฆฌ๋๋ ์ ์ ์๊ตฌ์ ์ ๋๋ค.
์์ ๊ต์ฒด๋์ง ์์ต๋๋ค. ์ด๋ ค ์๋ 2๋ณด๋ค ํฐ ๋ชจ๋ ํ์ผ ์ค๋ช ์
or ๋ฉ์ฒญ์ด(2) ์ด๋ฌํ ๋ฐฉ์์ผ๋ก ์คํ๋ ๋ค๋ฅธ ๋ช ๋ น(์:
์์ ๋ด์ฅ๋์ง ์์ ๋ช ๋ น). Bourne ์์ ๋ค๋ฆ ๋๋ค.
์ฌ๊ธฐ; ์ด๋ฌํ ํ์ผ ์ค๋ช ์๋ฅผ ์ ๋ฌํฉ๋๋ค.
์ถ๊ตฌ [์ง์]
์์ ์ง์ ๋ ์ข ๋ฃ ์ํ๋ก ์ข ๋ฃ๋ฉ๋๋ค. ๋ง์ฝ์ ์ง์ ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ์ข ๋ฃ
status๋ ํ์ฌ ๊ฐ์ ๋๋ค. $? ๋งค๊ฐ ๋ณ์์ ๋๋ค.
์์ถ [-p] [๋งค๊ฐ ๋ณ์[=๊ฐ์น]]
๋ช ๋ช ๋ ๋งค๊ฐ๋ณ์์ ๋ด๋ณด๋ด๊ธฐ ์์ฑ์ ์ค์ ํฉ๋๋ค. ๋ด๋ณด๋ธ ๋งค๊ฐ๋ณ์๊ฐ ์ ๋ฌ๋ฉ๋๋ค.
๋ช ๋ น์ ์คํํ ํ๊ฒฝ. ๊ฐ์ ์ง์ ํ๋ฉด ๋ช ๋ช ๋ ๋งค๊ฐ๋ณ์
๋ํ ํ ๋น๋ฉ๋๋ค.
๋งค๊ฐ๋ณ์๋ฅผ ์ง์ ํ์ง ์์ผ๋ฉด ๋ด๋ณด๋ด๊ธฐ ์์ฑ์ด ์ค์ ๋ ๋ชจ๋ ๋งค๊ฐ๋ณ์๊ฐ
ํ ์ค์ ํ๋์ฉ ์ธ์; ์ด๋ฆ ๋๋ ์ต์ ๋ฌธ์๊ฐ ์๋ '-'๊ฐ
์ง์ ๋ ์ด๋ฆ=๊ฐ ์ ๋๋ -p, ์์ถ ์ฌ์ง์ ์ ์ ํฉํ ๋ช ๋ น.
๊ทธ๋ฆ๋ XNUMX์ด ์๋ ์ํ๋ก ์ข ๋ฃ๋๋ ๋ช ๋ น์ ๋๋ค.
fc [-e ํธ์ง์ | -l [-n]] [-r] [๋จผ์ [์ง๋]]
๋จผ์ ๊ณผ ์ง๋ ๊ธฐ๋ก์์ ๋ช ๋ น์ ์ ํํฉ๋๋ค. ํ์คํ ๋ฆฌ๋ก ๋ช ๋ น ์ ํ ๊ฐ๋ฅ
์ซ์(์์๋ ํ์ฌ, ๊ฐ์ฅ ์ต๊ทผ์ ํ์์ ๋ค๋ก ์ด๋) ๋๋ a
ํด๋น ๋ฌธ์์ด๋ก ์์ํ๋ ๊ฐ์ฅ ์ต๊ทผ ๋ช ๋ น์ ์ง์ ํ๋ ๋ฌธ์์ด. ๊ทธ๋งํผ -l ์ ํ๊ถ
ํ์ค ์ถ๋ ฅ์ ๋ช ๋ น์ ๋์ดํ๊ณ -n ๊ธฐ๋ณธ ๋ช ๋ น ๋ฒํธ๋ฅผ ๊ธ์งํฉ๋๋ค.
XNUMXD๋ดํ์ -r ์ต์ ์ ๋ชฉ๋ก์ ์์๋ฅผ ๋ฐ๋๋ก ํฉ๋๋ค. ์์ด -l, ์ ํํ ๋ช ๋ น์
๋ก ์ง์ ๋ ํธ์ง๊ธฐ์ ์ํด ํธ์ง๋จ -e ์ต์ ๋๋ ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ -e ์ง์ ๋๊ณ ,
FCEDIT ๋งค๊ฐ๋ณ์๋ก ์ง์ ๋ ํธ์ง๊ธฐ(์ด ๋งค๊ฐ๋ณ์๊ฐ ์ค์ ๋์ง ์์ ๊ฒฝ์ฐ /๋น/์๋ is
used), ์์ ์ํด ์คํ๋ฉ๋๋ค.
fc -e - | -s [-g] [๋ก์= ] [์ ๋์ฌ]
์ํ ํ ์ ํํ ๋ช ๋ น(๊ธฐ๋ณธ์ ์ผ๋ก ์ด์ ๋ช ๋ น)์ ๋ค์ ์คํํฉ๋๋ค.
์ ํ์ ๋์ฒด ๋ก์ ๊ณผ . ๋ฉด -g ๊ฐ ์ง์ ๋๋ฉด ๋ชจ๋ ๋ฐ์
๋ก์ ๋์ฒด๋๋ค . ๊ทธ ์๋ฏธ -e - ๊ณผ -s ๋์ผ: ๋ค์ ์คํ
ํธ์ง๊ธฐ๋ฅผ ํธ์ถํ์ง ์๊ณ ๋ช ๋ น์ ์ ํํ์ต๋๋ค. ์ด ๋ช ๋ น์ ์ผ๋ฐ์ ์ผ๋ก
๋ฏธ๋ฆฌ ์ ์๋: ๋ณ๋ช r='fc -e -'
fg [์ผ ...]
ํฌ๊ทธ๋ผ์ด๋์์ ์ง์ ๋ ์์ ์ ์ฌ๊ฐํฉ๋๋ค. ์์ ์ด ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ %+ is
์ถ์ . ๋ณด๋ค ์ผ ์ ์ด ์์ธํ ๋ด์ฉ์ ์๋๋ฅผ ์ฐธ์กฐํ์ธ์.
getopts ์ตํธ์คํธ๋ง name [์๋ฅดํจํฐ๋ ...]
์ง์ ๋ ์ธ์(๋๋ ์์น ๋งค๊ฐ๋ณ์,
์ธ์๊ฐ ์ ๊ณต๋์ง ์์ ๊ฒฝ์ฐ) ๋ฒ์ ์ต์ ์ ํ์ธํฉ๋๋ค. ์ตํธ์คํธ๋ง ํฌํจ
์ต์ ๋ฌธ์ getopts ์ธ์ํ๋ ๊ฒ์ ๋๋ค. ๋ฌธ์ ๋ค์์ ์ฝ๋ก ์ด ์ค๋ ๊ฒฝ์ฐ
์ต์ ์๋ ์ธ์๊ฐ ์์ด์ผ ํฉ๋๋ค. ์ธ์๋ฅผ ์ฌ์ฉํ์ง ์๋ ์ต์ ์ ๋ค์๊ณผ ๊ฐ์ ์ ์์ต๋๋ค.
๋จ์ผ ์ธ์๋ก ๊ทธ๋ฃนํ๋ฉ๋๋ค. ์ต์ ์ด ์ธ์์ ์ต์ ์ ์ทจํ๋ ๊ฒฝ์ฐ
๋ฌธ์๋ ๋ฐ๊ฒฌ๋ ์ธ์์ ๋ง์ง๋ง ๋ฌธ์๊ฐ ์๋๋ฉฐ ๋๋จธ์ง๋
์ธ์๋ ์ต์ ์ ์ธ์๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ค์ ์ธ์๋
์ต์ ์ ์ธ์.
๋งค๋ฒ getopts ํธ์ถ๋๋ฉด ์ ๋งค๊ฐ๋ณ์์ ๋ค์ ์ต์ ์ ๋ฐฐ์นํฉ๋๋ค. name
๋ค์ ํธ์ถ์์ ์ฒ๋ฆฌํ ์ธ์์ ์ธ๋ฑ์ค getopts FBI ์ฆ์ค ๋ฒ์ฃ ๋ณด๊ณ ์
์ ๋งค๊ฐ๋ณ์ OPTIND. ์ต์ ์ด '+'์ ํจ๊ป ๋์ ๋ ๊ฒฝ์ฐ ์ต์ ์ด ๋ฐฐ์น๋ฉ๋๋ค.
in name ์์ '+'๊ฐ ๋ถ์ต๋๋ค. ์ต์ ์ ์ธ์๊ฐ ํ์ํ ๊ฒฝ์ฐ getopts ์ฅ์
์ ๋งค๊ฐ๋ณ์ OPTARG์ ์์ต๋๋ค.
์๋ชป๋ ์ต์ ์ด๋ ๋๋ฝ๋ ์ต์ ์ธ์๊ฐ ๋ฐ๊ฒฌ๋๋ฉด ๋ฌผ์ํ
๋๋ ์ฝ๋ก ์ด name (์๋ชป๋ ์ต์ ๋๋ ๋๋ฝ๋ ์ธ์๋ฅผ ๋ํ๋,
๊ฐ๊ฐ) ๋ฐ OPTARG๋ ๋ฌธ์ ๋ฅผ ์ผ์ผํจ ์ต์ ๋ฌธ์๋ก ์ค์ ๋ฉ๋๋ค.
๋ํ, ๊ฒฝ์ฐ ์ตํธ์คํธ๋ง ์ฝ๋ก ์ผ๋ก ์์ํ์ง ์์ผ๋ฉด ๋ฌผ์ํ๊ฐ
name, OPTARG๊ฐ ์ค์ ๋์ง ์๊ณ ํ์ค ์ค๋ฅ์ ์ค๋ฅ ๋ฉ์์ง๊ฐ ์ธ์๋ฉ๋๋ค.
์ต์ ์ ๋์ ๋ง๋ฌ์ ๋, getopts XNUMX์ด ์๋ ์ข ๋ฃ๋ก ์ข ๋ฃ
์ํ. ์ต์ ์ ์์ํ์ง ์๋ ์ฒซ ๋ฒ์งธ(์ต์ ์ธ์๊ฐ ์๋) ์ธ์์์ ๋๋ฉ๋๋ค.
'-' ๋๋ '--' ์ธ์๊ฐ ์๋ ๊ฒฝ์ฐ.
์ต์ ๊ตฌ๋ฌธ ๋ถ์์ OPTIND๋ฅผ 1๋ก ์ค์ ํ์ฌ ์ฌ์ค์ ํ ์ ์์ต๋๋ค(์ด๋ ์๋์ผ๋ก ์ํ๋จ).
์ ๋๋ ์ ํ๋ก์์ ๊ฐ ํธ์ถ๋ ๋๋ง๋ค).
๊ฒฝ๊ณ : ์ ๋งค๊ฐ๋ณ์ OPTIND์ ๊ฐ์ 1 ์ด์ธ์ ๊ฐ์ผ๋ก ๋ณ๊ฒฝํ๊ฑฐ๋
OPTIND๋ฅผ ์ฌ์ค์ ํ์ง ์๊ณ ๋ค๋ฅธ ์ธ์ ์งํฉ์ ๊ตฌ๋ฌธ ๋ถ์ํ๋ฉด ์๊ธฐ์น ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
๊ฒฐ๊ณผ.
๊ธ๋ก๋ฒ ...
๋ง๋๋ค ์กฐํ.
ํด์ [-r] [name ...]
์ธ์๊ฐ ์์ผ๋ฉด ํด์๋ ์คํ ๊ฐ๋ฅํ ๋ช ๋ น ๊ฒฝ๋ก ์ด๋ฆ์ด ๋์ด๋ฉ๋๋ค. ๊ทธ๋งํผ -r ์ ํ๊ถ
๋ชจ๋ ํด์ ๋ช ๋ น์ด ํด์ ํ ์ด๋ธ์์ ์ ๊ฑฐ๋ฉ๋๋ค. ๊ฐ name ๊ฒ์๋๋ค
๋ง์น ๋ช ๋ น ์ด๋ฆ์ด๊ณ ์คํ ํ์ผ์ธ ๊ฒฝ์ฐ ํด์ ํ ์ด๋ธ์ ์ถ๊ฐ๋ ๊ฒ์ฒ๋ผ
๋ช ๋ น.
์์ [-lnp] [์ผ ...]
์ง์ ๋ ์์ ์ ๋ํ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค. ์์ ์ ์ง์ ํ์ง ์์ผ๋ฉด ๋ชจ๋ ์์
ํ์๋ฉ๋๋ค. ๊ทธ๋งํผ -n ์ต์ ์ ์ฌ์ฉํ๋ฉด ๋ค์ ์์ ์ ๋ํด์๋ง ์ ๋ณด๊ฐ ํ์๋ฉ๋๋ค.
๋ง์ง๋ง ์๋ฆผ ์ดํ ์ํ๊ฐ ๋ณ๊ฒฝ๋์์ต๋๋ค. ๋ง์ฝ -l ์ต์ ์ด ์ฌ์ฉ๋๋ฉฐ,
์์ ์ ์๋ ๊ฐ ํ๋ก์ธ์ค์ ํ๋ก์ธ์ค ID๋ ๋์ด๋ฉ๋๋ค. ๊ทธ๋งํผ -p ์ต์ ์
์ธ์ํ ๊ฐ ์์ ์ ํ๋ก์ธ์ค ๊ทธ๋ฃน์ ๋๋ค. ๋ณด๋ค ์ผ ์ ์ด ํ์์ ์๋ ์ผ
๊ทธ๋ฆฌ๊ณ ํ์๋ ์์ .
์ฃฝ์ด๊ธฐ [-s ์๊ทธ๋ค์ | -Signum | -์๊ทธ๋ค์] { ์ผ | PID | pgrp } ...
์ง์ ๋ ์์ , ํ๋ก์ธ์ค ID ๋๋ ํ๋ก์ธ์ค ๊ทธ๋ฃน์ ์ง์ ๋ ์ ํธ๋ฅผ ๋ณด๋ ๋๋ค. ๋ง์ฝ์
์ ํธ๊ฐ ์ง์ ๋์ง ์์ผ๋ฉด TERM ์ ํธ๊ฐ ์ ์ก๋ฉ๋๋ค. ์์ ์ด ์ง์ ๋ ๊ฒฝ์ฐ ์ ํธ
์์ ์ ํ๋ก์ธ์ค ๊ทธ๋ฃน์ผ๋ก ์ ์ก๋ฉ๋๋ค. ๋ณด๋ค ์ผ ์ ์ด ํ์์ ์๋ ์ผ.
์ฃฝ์ด๊ธฐ -l [์ข ๋ฃ ์ํ ...]
์ ํด๋นํ๋ ์ ํธ ์ด๋ฆ์ ์ธ์ํ์ญ์์ค. ์ข ๋ฃ ์ํ. ์ธ์๊ฐ ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ
๋ชจ๋ ์ ํธ ๋ชฉ๋ก, ์ ํธ ๋ฒํธ ๋ฐ ๊ฐ๋จํ ์ค๋ช ์ด ์ธ์๋ฉ๋๋ค.
ํ์ [ํํ ...]
๊ฐ ํํ์์ด ํ๊ฐ๋ฉ๋๋ค(์ฐธ์กฐ ์ฐ์ ํํ ์์). ๋ชจ๋ ์์ ๊ฒฝ์ฐ
์ฑ๊ณต์ ์ผ๋ก ํ๊ฐ๋๊ณ ๋ง์ง๋ง ํํ์์ด ํ๊ฐ๋ ๊ฒฝ์ฐ ์ข ๋ฃ ์ํ๋ 0(1)์ ๋๋ค.
XNUMX์ด ์๋(์ ๋ก). ๊ตฌ๋ฌธ ๋ถ์ ๋๋ ํ๊ฐ ์ค์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ
์ข ๋ฃ ์ํ๋ 1๋ณด๋ค ํฝ๋๋ค.
์ธ์ฉ, (( ํน๊ธ )) { let '์ ๋ํ ๊ตฌ๋ฌธ ์คํ์ ๋๋ค.ํน๊ธ'; }.
ํ๋ฝํ๋ค] ๋ด๋ถ์ ์ผ๋ก ์ฌ์ฉ๋๋ ๋ณ์นญ ํ์.
mknod [-m ๋ชจ๋] name b|c ์ฃผ์ํ ๋ฏธ์ฑ๋ ์
mknod [-m ๋ชจ๋] name p
์ฅ์น ํน์ ํ์ผ์ ๋ง๋ญ๋๋ค. ํ์ผ ํ์์ ๋ค์๊ณผ ๊ฐ์ ์ ์์ต๋๋ค. b (๋ธ๋กํ ์ฅ์น), c
(๋ฌธ์ํ ์ฅ์น) ๋๋ p (๋ช ๋ช ๋ ํ์ดํ, FIFO). ์์ฑ๋ ํ์ผ์ ์์ ๋ ์ ์์ต๋๋ค.
๊ทธ๊ฒ์ ๋ฐ๋ฅด๋ฉด ๋ชจ๋ (๋ฅผ ํตํด -m ์ต์ ), ์ฃผ์ํ (์ฃผ์ ์ฅ์น ๋ฒํธ) ๋ฐ ๋ฏธ์ฑ๋ ์
(๋ถ ์ฅ์น ๋ฒํธ). ์ด๊ฒ์ ์ผ๋ฐ์ ์ผ๋ก ๋ค์์ ์ผ๋ถ๊ฐ ์๋๋๋ค. mksh; ๊ทธ๋ฌ๋ ์ ํต์ ์ฒด๋
์ด๊ฒ์ ์คํผ๋ ํต์ผ๋ก ๋ด์ฅ์ผ๋ก ์ถ๊ฐํ์ต๋๋ค.
์ธ์ [-nprsu[n] | -R [- ์]] [๋ ผ์ ...]
์ธ์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋๊ณ ์ข ๋ฃ๋๋ ํ์ค ์ถ๋ ฅ์ ์ธ์๋ฅผ ์ธ์ํฉ๋๋ค.
์ค ๋ฐ๊ฟ์ผ๋ก. ๊ทธ๋งํผ -n ์ต์ ์ ๊ฐํ์ ์ต์ ํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ํน์ C ์ด์ค์ผ์ดํ
๋ฒ์ญ๋ฉ๋๋ค. ์ฌ๊ธฐ์๋ ์์ ์ธ๊ธ๋ ๊ฒ๋ค์ด ํฌํจ๋ฉ๋๋ค. ๋ฐฑ ์ฌ๋์ ํ์ฅ ์์์๋
'\c'๋ก, ์ด๋ ๋ค์์ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๋์ผํฉ๋๋ค. -n ์ต์ . ๋ฐฑ์ฌ๋์ ํ์ฅ์
๋ก ์ต์ -r ์ ํ๊ถ. ๊ทธ๋งํผ -s ์ต์ ์ ๋์ ํ์คํ ๋ฆฌ ํ์ผ์ ์ธ์ํฉ๋๋ค.
ํ์ค ์ถ๋ ฅ; ๊ทธ๋งํผ -u ์ต์ ์ ํ์ผ ์ค๋ช ์๋ก ์ธ์ํฉ๋๋ค. n (n ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ์ 1์ ๋๋ค.
์๋ต); ๊ทธ๋ฆฌ๊ณ -p ์ต์ ์ ๊ณต๋ ํ๋ก์ธ์ค๋ก ์ธ์๋ฉ๋๋ค(์ฐธ์กฐ ๊ณต๋ ํ๋ก์ธ์ค ์).
XNUMXD๋ดํ์ -R ์ต์ ์ ์ด๋ ์ ๋ BSD๋ฅผ ์๋ฎฌ๋ ์ด์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์์ฝ(1) ํ๋ ๋ช ๋ น
๋ค์์ด ์๋๋ฉด '\' ์ํ์ค๋ฅผ ์ฒ๋ฆฌํ์ง ์์ต๋๋ค. -e ์ต์ ์ด ์ฃผ์ด์ง๋๋ค. ์์ ๊ฐ์ด, -n ์ ํ๊ถ
ํํ ๊ฐํ์ ์ต์ ํฉ๋๋ค.
printf ์ฒด์ฌ [์ธ์ ...]
ํ์ํ๋ ์ถ๋ ฅ. ์ ๋๋ต ๋์ผ printf(1), ์ฌ์ฉ์ ์ ์ธํ ์ ํธ๋ฆฌํฐ
๊ฐ์ ๋ฐฑ ์ฌ๋์ ํ์ฅ ๋ฐ I/O ์ฝ๋์ด๋ฉฐ ๋ถ๋ ์์์ ์ ์ฒ๋ฆฌํ์ง ์์ต๋๋ค.
๋๋จธ์ง mksh. ๋ด์ฅ ์ ํธ๋ฆฌํฐ๋ณด๋ค ์ธ๋ถ ์ ํธ๋ฆฌํฐ๊ฐ ์ ํธ๋ฉ๋๋ค. ์ด๊ฒ์ ์๋๋ค
์ผ๋ฐ์ ์ผ๋ก mksh; ๊ทธ๋ฌ๋ ๋ฐฐํฌ์๋ ์ด๊ฒ์ ๊ธฐ๋ณธ์ผ๋ก ์ถ๊ฐํ์ ์ ์์ต๋๋ค.
์๋ ํดํน. ์ ์ฝ๋์์ ์ฌ์ฉํ์ง ๋ง์ญ์์ค.
pwd [-LP]
ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ๋ฅผ ์ธ์ํฉ๋๋ค. ๋ง์ฝ -L ์ต์ ์ด ์ฌ์ฉ๋๊ฑฐ๋ ๋ฌผ๋ฆฌ์
์ต์ ์ด ์ค์ ๋์ง ์์์ต๋๋ค( ์ธํธ ์๋ ๋ช ๋ น) ๋ ผ๋ฆฌ ๊ฒฝ๋ก๊ฐ ์ธ์๋ฉ๋๋ค(์:
์ ์ฌ์ฉ๋๋ ๊ฒฝ๋ก cd ํ์ฌ ๋๋ ํ ๋ฆฌ๋ก). ๋ง์ฝ -P ์ต์ (๋ฌผ๋ฆฌ์ ๊ฒฝ๋ก) ์ฌ์ฉ
๋๋ ๋ฌผ๋ฆฌ์ ์ต์ ์ด ์ค์ ๋๋ฉด ํ์ผ ์์คํ ์์ ๊ฒฝ๋ก๊ฐ ๊ฒฐ์ ๋ฉ๋๋ค(by
๋ค์ '..' ๋๋ ํ ๋ฆฌ์์ ๋ฃจํธ ๋๋ ํ ๋ฆฌ๊น์ง)์ด ์ธ์๋ฉ๋๋ค.
์ฝ๊ธฐ [-A | -a] [-d x] [-N z | -n z] [-p | -u[n]] [-t n] [-rs] [p ...]
์ ๋ ฅ ๋ผ์ธ์ ์ฝ๊ณ IFS ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ ๋ ฅ์ ํ๋๋ก ๋ถ๋ฆฌํฉ๋๋ค(์ฐธ์กฐ:
์นํ ์) ๊ฐ ํ๋๋ฅผ ์ง์ ๋ ๋งค๊ฐ๋ณ์์ ํ ๋นํฉ๋๋ค. p. ์๋๋ผ๋ฉด
๋งค๊ฐ๋ณ์๊ฐ ์ง์ ๋๋ฉด REPLY ๋งค๊ฐ๋ณ์๊ฐ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ ๋๋ถ์ด
-A ๊ณผ -a ์ต์ ์ด ์์ผ๋ฉด ๋งค๊ฐ๋ณ์๊ฐ ์๊ฑฐ๋ ํ๋๋ง ํ์ฉ๋ฉ๋๋ค. ๋ ์์ผ๋ฉด
ํ๋๋ณด๋ค ๋งค๊ฐ๋ณ์, ์ถ๊ฐ ๋งค๊ฐ๋ณ์๋ ๋น ๋ฌธ์์ด ๋๋ 0์ผ๋ก ์ค์ ๋ฉ๋๋ค. ๋ง์ฝ์
๋งค๊ฐ๋ณ์๋ณด๋ค ๋ ๋ง์ ํ๋๊ฐ ์๋ ๊ฒฝ์ฐ ๋ง์ง๋ง ๋งค๊ฐ๋ณ์์ ๋๋จธ์ง
ํ๋(๋จ์ด ๊ตฌ๋ถ ๊ธฐํธ ํฌํจ).
์ต์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค
-A ๊ฒฐ๊ณผ๋ฅผ ๋งค๊ฐ๋ณ์์ ์ ์ฅ p (๋๋ REPLY)๋ฅผ ๋จ์ด ๋ฐฐ์ด๋ก ์ฌ์ฉํฉ๋๋ค.
-a ๋จ์ด ๋ถํ ์์ด ๊ฒฐ๊ณผ๋ฅผ ๋งค๊ฐ๋ณ์์ ์ ์ฅ p (๋๋ REPLY)๋ก
๋ฌธ์ ๋ฐฐ์ด( utf8 ๋ชจ๋ ์ต์ ์ด ์ ์ ๋๊ณ ,
๊ทธ๋ ์ง ์์ผ๋ฉด ์ฅํ ); ์ฝ๋ ํฌ์ธํธ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ญ์ง์๋ก ์ธ์ฝ๋ฉ๋ฉ๋๋ค.
-d x ์ ์ฒซ ๋ฒ์งธ ๋ฐ์ดํธ ์ฌ์ฉ x, ASCII ๊ฐํ ๋ฌธ์ ๋์ ๋น์ด ์์ผ๋ฉด NUL
์ ๋ ฅ ์ค ๊ตฌ๋ถ ๊ธฐํธ๋ก.
-N z ์ค ๋๊น์ง ์ฝ๋ ๋์ ์ ํํ๊ฒ ์ฝ์ผ์ญ์์ค. z ๋ฐ์ดํธ. EOF ๋๋
์๊ฐ ์ด๊ณผ๊ฐ ๋ฐ์ํ๋ฉด ๋ถ๋ถ ์ฝ๊ธฐ๊ฐ ์ข ๋ฃ ์ํ 1๋ก ๋ฐํ๋ฉ๋๋ค.
-n z ์ค ๋๊น์ง ์ฝ๋ ๋์ ์ต๋ z ๋ฐ์ดํธ์ด์ง๋ง ์ฆ์ ๋ฐํ
์๋ฅผ ๋ค์ด ๋๋ฆฐ ํฐ๋ฏธ๋ ์ฅ์น์์ ๋๋ EOF ๋๋ ์๊ฐ ์ด๊ณผ์ธ ๊ฒฝ์ฐ ๋ชจ๋ ๋ฐ์ดํธ๋ฅผ ์ฝ์ต๋๋ค.
๋ฐ์ํฉ๋๋ค.
-p ํ์ฌ ํ์ฑ ๊ณต๋ ํ๋ก์ธ์ค์์ ์ฝ์ต๋๋ค. ์ฐธ์กฐ ๊ณต๋ ํ๋ก์ธ์ค ์์ธํ ๋ด์ฉ์ ์
์ด์.
-u[n] ํ์ผ ์ค๋ช ์์์ ์ฝ๊ธฐ n (๊ธฐ๋ณธ๊ฐ์ 0, ์ฆ ํ์ค ์ ๋ ฅ). ๊ทธ๋งํผ
์ธ์๋ ์ต์ ๋ฌธ์ ๋ฐ๋ก ๋ค์ ์์ผ ํฉ๋๋ค.
-t n ๋ค์ ์๊ฐ ์ดํ ์ฝ๊ธฐ ์ค๋จ n ์ด (์์ ์ญ์ง์ ๊ฐ์ผ๋ก ์ง์
์ ํ์ ๋ถ์ ๋ถ๋ถ). ์ข ๋ฃ ์ํ ์ฝ๊ธฐ ์๊ฐ ์ด๊ณผ์ธ ๊ฒฝ์ฐ 1
๋ฐ์ํ์ง๋ง ๋ถ๋ถ ์ฝ๊ธฐ๋ ์ฌ์ ํ ๋ฐํ๋ ์ ์์ต๋๋ค.
-r ์ผ๋ฐ์ ์ผ๋ก ASCII ๋ฐฑ์ฌ๋์ ๋ฌธ์๋
๋ค์ ๋ฌธ์๋ ์ ๋ ฅ์์ ์ ๊ฑฐ๋ฉ๋๋ค. ์ฝ๊ธฐ ๋ ๋ฉ์ถ์ง ์๋๋ค
๋ฐฑ ์ฌ๋์-์ค ๋ฐ๊ฟ ์ํ์ค๊ฐ โโ๋ฐ์ํ๊ณ ํด๋น ์ค ๋ฐ๊ฟ์ ์ ์ฅํ์ง ์์ต๋๋ค
๊ฒฐ๊ณผ. ์ด ์ต์ ์ ๋ฐฑ์ฌ๋์๊ฐ ์๋ ์์ ๋ชจ๋๋ฅผ ํ์ฑํํฉ๋๋ค.
์ฒ๋ฆฌ๋จ.
-s ์ ๋ ฅ ๋ผ์ธ์ ํ์คํ ๋ฆฌ์ ์ ์ฅ๋ฉ๋๋ค.
์ ๋ ฅ์ด ํฐ๋ฏธ๋์ด๋ฉด ๋ ๋ค -N ๊ณผ -n ์ต์ ์ ์์ ๋ชจ๋๋ก ์ค์ ํฉ๋๋ค. ๊ทธ๋ค
-1์ด ๋ค์๊ณผ ๊ฐ์ด ์ ๋ฌ๋๋ฉด ์ ์ฒด ํ์ผ์ ์ฝ์ต๋๋ค. z ๋ ผ์.
์ฒซ ๋ฒ์งธ ๋งค๊ฐ๋ณ์์๋ ๋ฌผ์ํ์ ๋ฌธ์์ด์ด ์ถ๊ฐ๋ ์ ์์ต๋๋ค.
๋ฌธ์์ด์ด ํ๋กฌํํธ๋ก ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ(์ ๋ ฅ์ด ์๋ฃ๋๊ธฐ ์ ์ ํ์ค ์ค๋ฅ๋ก ์ธ์๋จ)
์ฝ๊ธฐ) ์ ๋ ฅ์ด ์ฒญ๊ฐ ์ฅ์ (4) (์: ์ฝ๊ธฐ nfoo?'์ซ์ of ํธ์ค: ').
์ ๋ ฅ์ด ์ฝํ์ง ์๊ฑฐ๋ ์๊ฐ ์ด๊ณผ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ ์ฝ๊ธฐ XNUMX์ด ์๋ ์ํ๋ก ์ข ๋ฃ๋ฉ๋๋ค.
๋ ๋ค๋ฅธ ์ ์ฉํ ํธ๋ฆญ: If ์ฝ๊ธฐ ๋ค์๊ณผ ๊ฐ์ ๋ฃจํ์์ ์คํ๋ฉ๋๋ค. ๋์ ์ฝ๊ธฐ ํธ; do ...;
ํ ๊ทธ๋ฌ๋ฉด ์ ํ ๊ณต๋ฐฑ์ด ์ ๊ฑฐ๋๊ณ (IFS) ๋ฐฑ์ฌ๋์๊ฐ ์ฒ๋ฆฌ๋ฉ๋๋ค. ๋
์ฌ์ฉํ๊ณ ์ถ์ ์๋ ์์ต๋๋ค ๋์ IFS= ์ฝ๊ธฐ -r ํธ; do ...; ํ ๊นจ๋ํ I/O๋ฅผ ์ํด. ๋น์ทํ๊ฒ,
์ฌ์ฉํ ๋ -a ์ต์ , ์ฌ์ฉ -r ์ต์ ์ ์ ์คํ ์ ์์ต๋๋ค. ๋์ผํ๊ฒ ์ ์ฉ๋ฉ๋๋ค
์ฉ :
์ฐพ๋ค . -์ ํ f -print0 |& \
while IFS= ์ฝ๊ธฐ -d '' -pr ํ์ผ ์ด๋ฆ; ํ๋ค
์ธ์ -r -- "๋ฐ๊ฒฌ <${filename#./}>"
ํ
๋ด๋ถ ๋ฃจํ๋ ์๋ธ์์์ ์คํ๋๋ฉฐ ๋ณ์ ๋ณ๊ฒฝ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
ํ์ดํ๋ผ์ธ์์ ์คํ๋๋ ๊ฒฝ์ฐ ์ ํ๋จ:
๋ฐ | ๋ฐ์ฆ | foo๋ฅผ ์ฝ๋ ๋์; ํ๋ค ...; ์๋ฃ
๋์ ๊ณต๋ ํ๋ก์ธ์ค๋ฅผ ์ฌ์ฉํ์ญ์์ค.
๋ฐ | ๋ฐ์ฆ |&
-p foo๋ฅผ ์ฝ๋ ๋์; ํ๋ค ...; ์๋ฃ
๊ฐ๋ถ 3>&p; ๊ฐ๋ถ 3>&-
์ฝ๊ธฐ ์ ์ฉ [-p] [๋งค๊ฐ ๋ณ์ [=๊ฐ์น] ...]
๋ช ๋ช ๋ ๋งค๊ฐ๋ณ์์ ์ฝ๊ธฐ ์ ์ฉ ์์ฑ์ ์ค์ ํฉ๋๋ค. ๊ฐ์ด ์ฃผ์ด์ง๋ฉด,
๋งค๊ฐ๋ณ์๋ ์์ฑ์ ์ค์ ํ๊ธฐ ์ ์ ๋งค๊ฐ๋ณ์๋ก ์ค์ ๋ฉ๋๋ค. ๋งค๊ฐ๋ณ์๊ฐ ๋ง๋ค์ด์ง๋ฉด
์ฝ๊ธฐ ์ ์ฉ์ด๋ฉฐ ์ค์ ์ ํด์ ํ ์ ์์ผ๋ฉฐ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
๋งค๊ฐ๋ณ์๋ฅผ ์ง์ ํ์ง ์์ผ๋ฉด ๋ชจ๋ ๋งค๊ฐ๋ณ์์ ์ด๋ฆ์ ์ฝ๊ธฐ ์ ์ฉ
์์ฑ์ ํ ์ค์ ํ๋์ฉ ์ธ์๋ฉ๋๋ค. -p ์ต์ ์ด ์ฌ์ฉ๋๋ฉฐ, ์ด ๊ฒฝ์ฐ
์ฝ๊ธฐ ์ ์ฉ ํด๋น ๊ฐ์ ํฌํจํ์ฌ ๋ชจ๋ ์ฝ๊ธฐ ์ ์ฉ ๋งค๊ฐ๋ณ์๋ฅผ ์ ์ํ๋ ๋ช ๋ น์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ธ์.
์ง์ง ๊ฒฝ๋ก [--] name
๋ค์์ ํด๋นํ๋ ํ์ธ๋ ์ ๋ ๊ฒฝ๋ก ์ด๋ฆ์ ์ธ์ํฉ๋๋ค. name. ๋ฉด name ๋ก ๋๋จ
์ฌ๋์('/'), ์กด์ฌ ์ฌ๋ถ์ ๋๋ ํ ๋ฆฌ ์ฌ๋ถ๋ ํ์ธํฉ๋๋ค.
๊ทธ๋ ์ง ์์ผ๋ฉด, ์ง์ง ๊ฒฝ๋ก ๊ฒฝ๋ก ์ด๋ฆ์ด ์กด์ฌํ๊ฑฐ๋ ๋ง๋ค ์ ์๋ ๊ฒฝ์ฐ 0์ ๋ฐํํฉ๋๋ค.
์ฆ์, ์ฆ ๋ง์ง๋ง ๊ตฌ์ฑ์์๋ฅผ ์ ์ธํ ๋ชจ๋ ๊ฒ์ด ์กด์ฌํ๋ฉฐ ๋๋ ํ ๋ฆฌ์ ๋๋ค.
์ด๋ฆ ๋ณ๊ฒฝ [--] ์ ์
ํ์ผ ์ด๋ฆ ๋ฐ๊พธ๊ธฐ ์ ์ ์. ๋ ๋ค ์์ ํ ๊ฒฝ๋ก ์ด๋ฆ์ด์ด์ผ ํ๋ฉฐ ๋์ผํ ์ฅ์น์ ์์ด์ผ ํฉ๋๋ค.
์ด ๋ด์ฅ์ ๋ค์๊ณผ ๊ฐ์ ๋น์ ์ํฉ์ ์ํ ๊ฒ์ ๋๋ค. /bin/mv ์ฌ์ฉํ ์ ์๊ฒ ๋๋ฉฐ,
์ง์ ์ ํ ์ด๋ฆ ๋ณ๊ฒฝ(2).
return [์ง์]
ํจ์์์ ๋ฐํ ๋๋ . ์คํฌ๋ฆฝํธ, ์ข ๋ฃ ์ํ ํฌํจ ์ง์. ์๋๋ผ๋ฉด ์ง์ ์ฃผ์ด์ง๋ค,
๋ง์ง๋ง์ผ๋ก ์คํ๋ ๋ช ๋ น์ ์ข ๋ฃ ์ํ๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ํจ์ ์ธ๋ถ์์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ
or . ์คํฌ๋ฆฝํธ์ ๋์ผํ ํจ๊ณผ๋ฅผ ๊ฐ์ง๋๋ค. ์ถ๊ตฌ. ๊ทธ ์ฃผ mksh ํ๋กํ๊ณผ
ENV ํ์ผ . ์๋ Korn ์ ธ์ ํ๋กํ๋ง ๋ค์๊ณผ ๊ฐ์ด ์ทจ๊ธํฉ๋๋ค. .
์คํฌ๋ฆฝํธ.
์ธํธ [+-abCefhiklmnprsUuvXx] [+-์ค ์ ํ๊ถ] [+-A name] [--] [์๋ฅดํจํฐ๋ ...]
XNUMXD๋ดํ์ ์ธํธ ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ์ค์ ํ ์ ์์ต๋๋ค(-) ๋๋ ์ง์ฐ๊ธฐ(+) ์ ์ต์ , ์์น ์ค์
๋งค๊ฐ๋ณ์๋ฅผ ์ ํํ๊ฑฐ๋ ๋ฐฐ์ด ๋งค๊ฐ๋ณ์๋ฅผ ์ค์ ํฉ๋๋ค. ์ต์ ์ ๋ค์์ ์ฌ์ฉํ์ฌ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. +-์ค ์ ํ๊ถ
๊ตฌ๋ฌธ, ์ฌ๊ธฐ์ ์ ํ๊ถ ์ต์ ์ ๊ธด ์ด๋ฆ์ด๊ฑฐ๋ +-ํธ์ง ํต์ฌ๋ก ,
์ด๋์ ํธ์ง ์ต์ ์ ๋จ์ผ ๋ฌธ์ ์ด๋ฆ(๋ชจ๋ ์ต์ ์ ๋จ์ผ ๋ฌธ์๊ฐ ์๋ ๊ฒ์ ์๋)
์ด๋ฆ). ๋ค์ ํ์๋ ์ต์ ๋ฌธ์(์๋ ๊ฒฝ์ฐ)์ ๊ธด ์ด๋ฆ์ด ๋ชจ๋ ๋์ด๋์ด ์์ต๋๋ค.
์ต์ ์ ๊ธฐ๋ฅ์ ๋ํ ์ค๋ช ๊ณผ ํจ๊ป:
-A name
๋ฐฐ์ด ๋งค๊ฐ๋ณ์์ ์์๋ฅผ ์ค์ ํฉ๋๋ค. name ์ ์๋ฅดํจํฐ๋ ... If -A ์ด ์ฌ์ฉ๋๋ฉด
์ด๋ ์ด๊ฐ ๋จผ์ ์ฌ์ค์ (์ฆ, ๋น์์ง)๋ฉ๋๋ค. ๋ง์ฝ์ +A ๊ฐ ์ฌ์ฉ๋๋ฉด ์ฒ์ N๊ฐ์ ์์๊ฐ ์ค์ ๋ฉ๋๋ค.
(์ฌ๊ธฐ์ N์ ์ธ์์ ์์ ๋๋ค); ๋๋จธ์ง๋ ๊ทธ๋๋ก ๋ก๋๋ค.
๋ช ๋ น์ ๋์ฒด ๊ตฌ๋ฌธ ์ธํธ -A ํธ -- a b c ํธํ๋๋
GNU ์ธ๊ฒ ๋๋ฆฌ๋ค AT&T UNIX์์๋ ์ง์ ksh93 ์ ๋๋ค ํธ=(a b ์จ); ํธ+=(๋ e)
-a | -o ์์ถ
๋ชจ๋ ์ ๋งค๊ฐ๋ณ์๋ ๋ด๋ณด๋ด๊ธฐ ์์ฑ์ผ๋ก ์์ฑ๋ฉ๋๋ค.
-b | -o ํต๋ณด
์์ ์๋ฆผ ๋ฉ์์ง๋ฅผ ์ธ์ํ๊ธฐ ์ง์ ์ด ์๋๋ผ ๋น๋๊ธฐ์์ผ๋ก ์ธ์ํฉ๋๋ค.
์ฆ๊ฐ์ ์ธ. ์์ ์ ์ด๊ฐ ํ์ฑํ๋ ๊ฒฝ์ฐ์๋ง ์ฌ์ฉ๋ฉ๋๋ค(-m).
-C | -o ๋ ธํด๋ก๋ฒ
๋ฐฉ์ง > ๋ฆฌ๋๋ ์ ์ด ๊ธฐ์กด ํ์ผ์ ๋ฎ์ด์ฐ์ง ์๋๋ก ํฉ๋๋ค. ๋์ >| ์ฌ์ฉํด์ผํฉ๋๋ค
๋ฎ์ด์ฐ๊ธฐ๋ฅผ ๊ฐ์ ํฉ๋๋ค. ์ด๊ฒ์ ์์ฑ์ ์ฌ์ฉํ๊ธฐ์ ์์ ํ์ง ์์ต๋๋ค.
๋ฆฌ๋๋ ์ ์ ํ์ฉํ๋ ํ์ธ์์ TOCTOU๋ก ์ธํ ์์ ํ์ผ ๋๋ ์ ๊ธ ํ์ผ
~์ ์ถ๋ ฅ / dev / null ๋๋ ๋ค๋ฅธ ์ฅ์น ํ์ผ์์๋ ๋ ธํด๋ก๋ฒ ๋ฐฉ๋ฒ.
-e | -o ์ค์
์ค๋ฅ๊ฐ ๋ฐ์ํ๊ฑฐ๋ ๋ช ๋ น์ด ์คํ๋๋ ์ฆ์ ์ข ๋ฃ(ERR ํธ๋ฉ ์คํ ํ)
์คํจํฉ๋๋ค(์ฆ, XNUMX์ด ์๋ ์ํ๋ก ์ข ๋ฃ). ๋ช ๋ น์๋ ์ ์ฉ๋์ง ์์ต๋๋ค.
์ข ๋ฃ ์ํ๋ ๋ค์๊ณผ ๊ฐ์ ์ ธ ๊ตฌ์ฑ์ ์ํด ๋ช ์์ ์ผ๋ก ํ ์คํธ๋ฉ๋๋ค. if, ๊น์ง,
๋์๋ฐ ! ์ง์ . ์ ์ํ && ๋๋ ||, ๋ง์ง๋ง ๋ช ๋ น์ ์ํ๋ง
ํ ์คํธ.
-f | -o ๋ ธ๊ธ๋กญ
ํ์ผ ์ด๋ฆ ํจํด์ ํ์ฅํ์ง ๋ง์ญ์์ค.
-h | -o ํธ๋์ฌ
์คํ๋ ๋ชจ๋ ๋ช ๋ น์ ๋ํด ์ถ์ ๋ ๋ณ์นญ์ ์์ฑํฉ๋๋ค(์ฐธ์กฐ: ๋ณ์นญ ์์). ์ฌ์ฉ
๋น๋ํํ ์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ์ ์ผ๋ก.
-i | -o ๋ํํ
์์ ๋ํ์ ์์ ๋๋ค. ์ด ์ต์ ์ ์์ด
ํธ์ถ๋ฉ๋๋ค. ์ด๊ฒ์ด ๋ฌด์์ ์๋ฏธํ๋์ง์ ๋ํ ์ค๋ช ์ ์๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
-k | -o ํค์๋๋
๋งค๊ฐ๋ณ์ ์ง์ ์ ๋ช ๋ น์ ์ด๋ ๊ณณ์์๋ ์ธ์๋ฉ๋๋ค.
-l | -o ๋ก๊ทธ์ธ
์์ ๋ก๊ทธ์ธ ์์ ๋๋ค. ์ด ์ต์ ์ ์์ด ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค.
ํธ์ถ. ์ด๊ฒ์ด ๋ฌด์์ ์๋ฏธํ๋์ง์ ๋ํ ์ค๋ช ์ ์๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
-m | -o ๋ชจ๋ํฐ
์์ ์ ์ด๋ฅผ ํ์ฑํํฉ๋๋ค(๋ํ์ ์์ ๊ธฐ๋ณธ๊ฐ).
-n | -o noexec
์ด๋ค ๋ช ๋ น๋ ์คํํ์ง ๋ง์ญ์์ค. ์คํฌ๋ฆฝํธ์ ๊ตฌ๋ฌธ์ ํ์ธํ๋ ๋ฐ ์ ์ฉํฉ๋๋ค(๋ฌด์
๋ํํ์ธ ๊ฒฝ์ฐ).
-p | -o ํน๊ถ
์์ ํน๊ถ ์์ ๋๋ค. ์์ด ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์๋์ผ๋ก ์ค์ ๋ฉ๋๋ค.
์ค์ UID ๋๋ GID๊ฐ ์ ํจ UID(EUID) ๋๋ GID์ ์ผ์นํ์ง ์์ต๋๋ค.
(EGID), ๊ฐ๊ฐ. ์ด๊ฒ์ด ๋ฌด์์ ์๋ฏธํ๋์ง์ ๋ํ ์ค๋ช ์ ์๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
-r | -o ํ์ ๋
์์ ์ ํ๋ ์์ ๋๋ค. ์ด ์ต์ ์ ์์ด ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค.
ํธ์ถ. ์ด๊ฒ์ด ๋ฌด์์ ์๋ฏธํ๋์ง์ ๋ํ ์ค๋ช ์ ์๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
-s | -o ํ์ค
์์ด ํธ์ถ๋ ๋ ์ฌ์ฉ๋๋ฉด ํ์ค ์ ๋ ฅ์์ ๋ช ๋ น์ ์ฝ์ต๋๋ค. ์ธํธ
์์ด ์ธ์ ์์ด ํธ์ถ๋๋ฉด ์๋์ผ๋ก.
์ธ์ ๋ค ๊ณต์ ํ๋งค์ ์ธ -s ์ ํจ๊ป ์ฌ์ฉ๋ฉ๋๋ค. ์ธํธ ๋ช ๋ น์ ์ง์ ๋ ์ธ์๋ฅผ
์์น ๋งค๊ฐ๋ณ์(๋๋ ๋ฐฐ์ด์ ํ ๋นํ๊ธฐ ์ ์ ์ ๋ ฌ๋จ) name๋ง์ฝ
-A ์ฌ์ฉ).
-U | -o utf8 ๋ชจ๋
UTF-8 ์ง์ ํ์ฑํ ์ด๋งฅ์ค ํธ์ง ๋ชจ๋ ๋ฐ ๋ด๋ถ ๋ฌธ์์ด ์ฒ๋ฆฌ
๊ธฐ๋ฅ. ์ด ํ๋๊ทธ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋นํ์ฑํ๋์ด ์์ง๋ง ์ค์ ํ์ฌ ํ์ฑํํ ์ ์์ต๋๋ค.
์ ๋ช ๋ น์ค์์; ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ๋ํํ ์ ธ์ ๋ํด ์๋์ผ๋ก ํ์ฑํ๋ฉ๋๋ค.
์ปดํ์ผ ํ์์ ์์ฒญํ๋ฉด ์์คํ ์ด ์ง์ํฉ๋๋ค. ๋ก์ผ์ผ ์ค์ (LC_CTYPE, "") and
์ ํ nl_lang์ ๋ณด(์ฝ๋์ ), ๋๋ LC_ALL, LC_CTYPE ๋๋ LANG ํ๊ฒฝ
๋ณ์ ์ค ์ ์ด๋ ํ๋๋ "UTF-8" ๋๋
"utf8"์ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์์ต๋๋ค. ์ ๋ฐ๋ผ ์ง์ ๋ด์ฅ ํธ์ถ
์์ ์ธ๊ธํ ํ๊ฒฝ ๋ณ์; ๋๋ stdin ๋๋ ์คํฌ๋ฆฝํธ์ ๊ฒฝ์ฐ ์ ๋ ฅ์ด
UTF-8 ๋ฐ์ดํธ ์์ ํ์๋ก ์์ํฉ๋๋ค.
๊ฐ๊น์ด ์ฅ๋์ ๋ก์ผ์ผ ์ถ์ ์ด ๊ตฌํ๋ ์์ ์ ๋๋ค. ์ธํธ -+์ is
POSIX ๋ก์ผ์ผ ๊ด๋ จ ํ๊ฒฝ ๋ณ์ ์ค ํ๋๊ฐ ๋ณ๊ฒฝ๋ ๋๋ง๋ค ๋ณ๊ฒฝ๋ฉ๋๋ค.
-u | -o ๋ช ์ฌ
"$@" ๋๋ "$*" ์ด์ธ์ ์ค์ ๋์ง ์์ ๋งค๊ฐ๋ณ์ ์ฐธ์กฐ๋
'-', '+' ๋๋ '=' ์์์ด ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ง ์๋ ํ ์ค๋ฅ์ ๋๋ค.
-v | -o ๋ง ์๊ฐ ๋ง์
์ ์ ๋ ฅ์ ์ฝ์ ๋ ํ์ค ์ค๋ฅ์ ์๋๋ค.
-X | -o ๋งํฌ๋์ด
ํ์ผ ์ด๋ฆ ์์ฑ ์ค์ ํํ '/'๋ก ๋๋ ํ ๋ฆฌ๋ฅผ ํ์ํฉ๋๋ค.
-x | -o ์์คํธ๋ ์ด์ค
๋ช ๋ น ํธ๋ฆฌ๊ฐ ์คํ๋ ๋ PS4 ๊ฐ์ด ์์ ์ค๋ ์ธ์ ๋ช ๋ น ํธ๋ฆฌ์ ๋๋ค.
-o bgnice
๋ฐฑ๊ทธ๋ผ์ด๋ ์์ ์ ๋ฎ์ ์ฐ์ ์์๋ก ์คํ๋ฉ๋๋ค.
-o ์ค๊ดํธ ํ์ฅ
์ค๊ดํธ ํ์ฅ(์ผ๋ช ๊ต๋)์ ํ์ฑํํฉ๋๋ค. ์ด๊ฒ์ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ๋์ด ์์ต๋๋ค. ๋ง์ฝ์
๋นํ์ฑํ, ๋ฑํธ ๋ค์ ๋ฌผ๊ฒฐํ ํ์ฅ์ ๋ถ์์ฉ์ผ๋ก ๋นํ์ฑํ๋ฉ๋๋ค.
-o ์ด๋งฅ์ค
BRL emacs์ ๊ฐ์ ๋ช ๋ น์ค ํธ์ง์ ํ์ฑํํฉ๋๋ค(๋ํ์ ์ ธ๋ง ํด๋น). ๋ณด๋ค ์ด๋งฅ์ค
ํธ์ง ๋ชจ๋.
-o gmacs
gmacs์ ์ ์ฌํ ๋ช ๋ น์ค ํธ์ง์ ํ์ฑํํฉ๋๋ค(๋ํํ ์ ธ๋ง ํด๋น). ํ์ฌ
์ ์น ๋ฌธ์(^T)๊ฐ ์ฝ๊ฐ ์๋ํ๋ค๋ ์ ์ ์ ์ธํ๋ฉด emacs ํธ์ง๊ณผ ๋์ผํฉ๋๋ค.
๋ค๋ฅด๊ฒ.
-o ๋ฌด์ํ๋ค
ํ์ผ ๋์ ์ฝ์ ๋ ์์ (์ฝ๊ฒ) ์ข ๋ฃ๋์ง ์์ต๋๋ค. ์ถ๊ตฌ ๋ฐ๋์ ์ฌ์ฉํด์ผํฉ๋๋ค.
๋ฌดํ ๋ฃจํ๋ฅผ ํผํ๊ธฐ ์ํด EOF๋ฅผ ์ฐ์์ผ๋ก 13๋ฒ ์ฝ์ผ๋ฉด ์์ด ์ข ๋ฃ๋ฉ๋๋ค.
-o ์์-xtrace
์ฌ์ค์ ํ์ง ๋ง์ญ์์ค -o ์์คํธ๋ ์ด์ค ๊ธฐ๋ฅ์ ์ ๋ ฅํ ๋. ์ด๊ฒ์ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ๋์ด ์์ต๋๋ค.
-o ์๋ผ
๋ก๊ทธ์ธ ์์ด ์ข ๋ฃ๋ ๋ SIGHUP ์ ํธ๋ก ์คํ ์ค์ธ ์์ ์ ์ข ๋ฃํ์ง ๋ง์ญ์์ค.
ํ์ฌ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค์ ๋์ด ์์ง๋ง ๋์ค์ ํธํ๋๋๋ก ๋ณ๊ฒฝ๋ ์ ์์ต๋๋ค.
AT&T ์ ๋์ค KSH, ์ด ์ต์ ์ ์์ง๋ง SIGHUP์ ๋ณด๋ ๋๋ค.
์ ํธ์ ๋๋ค.
-o ๋๋ก๊ทธ
ํจ๊ณผ๊ฐ ์์ต๋๋ค. ์๋ Korn ์์์ ์ด๊ฒ์ ํจ์ ์ ์๊ฐ
๊ธฐ๋ก ํ์ผ์ ์ ์ฅ๋ฉ๋๋ค.
-o ๋ฌผ๋ฆฌ์
์์ธ cd ๊ณผ pwd "๋ฌผ๋ฆฌ์ "(์: ํ์ผ ์์คํ ) '..'์ ์ฌ์ฉํ๋ ๋ช ๋ น
"๋ ผ๋ฆฌ์ " ๋๋ ํ ๋ฆฌ ๋์ ๋๋ ํ ๋ฆฌ(์ฆ, ์์ '..'๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
์ฌ์ฉ์๊ฐ ๋๋ ํ ๋ฆฌ์ ๋ํ ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์ธ์ํ์ง ๋ชปํ๊ฒ ํฉ๋๋ค. ์ญ์ ๊ธฐ์ค
๊ธฐ๋ณธ. ์ด ์ต์ ์ ์ค์ ํด๋ ํ์ฌ ๊ฐ์๋ ์ํฅ์ ๋ฏธ์น์ง ์์ต๋๋ค.
PWD ๋งค๊ฐ๋ณ์; ์ค์ง cd ๋ช ๋ น์ PWD๋ฅผ ๋ณ๊ฒฝํฉ๋๋ค. ์ฐธ์กฐ cd ๊ณผ pwd ๋ช ๋ น
์์ธํ ๋ด์ฉ์ ์.
-o ํ์ดํ ์คํจ
ํ์ดํ๋ผ์ธ์ ์ข ๋ฃ ์ํ(๋ ผ๋ฆฌ์ ์ผ๋ก ๋ณด์ํ๊ธฐ ์ )๋ฅผ
๊ฐ์ฅ ์ค๋ฅธ์ชฝ์ XNUMX์ด ์๋ errorlevel ๋๋ ๋ชจ๋ ๋ช ๋ น์ด XNUMX์ผ๋ก ์ข ๋ฃ๋ ๊ฒฝ์ฐ XNUMX์ ๋๋ค.
-o POSIX
ํ์ค์ ๋ ๊ฐ๊น๊ฒ ํ๋ํ์ญ์์ค(์ฐธ์กฐ POSIX ๋ชจ๋ ์์ธํ ๋ด์ฉ์). ์๋์ผ๋ก
์ ํธ์ถ์ ๊ธฐ๋ณธ ์ด๋ฆ์ด "sh"๋ก ์์ํ๊ณ ์ด๊ฒ์ด
์๋ ๊ฐ์ง ๊ธฐ๋ฅ์ด ์ปดํ์ผ๋ฉ๋๋ค(MirBSD๊ฐ ์๋). ๋ถ์์ฉ์ผ๋ก ์ค์
์ด ํ๋๊ทธ๋ ๊บผ์ง๋๋ค ์ค๊ดํธ ํ์ฅ ์๋์ผ๋ก ๋ค์ ์ผค ์ ์๋ ๋ชจ๋
sh ๋ชจ๋(๋ ๋ค ๋์์ ํ์ฑํ๋์ง ์์ ๊ฒฝ์ฐ).
-o sh
์ฌ์ฉ / ๋น / SH (kludge) ๋ชจ๋(์ฐธ์กฐ SH ๋ชจ๋). ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์๋์ผ๋ก ํ์ฑํ๋จ
์ ํธ์ถ์ ๊ธฐ๋ณธ ์ด๋ฆ์ "sh"๋ก ์์ํ๋ฉฐ ์ด ์๋ ๊ฐ์ง ๊ธฐ๋ฅ
(MirBSD๊ฐ ์๋)์์ ์ปดํ์ผ๋ฉ๋๋ค. ๋ถ์์ฉ์ผ๋ก ์ด ํ๋๊ทธ๋ฅผ ์ค์ ํ๋ฉด ๊บผ์ง๋๋ค.
์ค๊ดํธ ํ์ฅ ์๋์ผ๋ก ๋ค์ ์ผค ์ ์๋ ๋ชจ๋ POSIX ๋ชจ๋(๋ง์ฝ
๋ ๋ค ๋์์ ํ์ฑํ๋จ).
-o vi
์ฌ์ฉ vi(1)๊ณผ ์ ์ฌํ ๋ช ๋ น์ค ํธ์ง(๋ํํ ์ ธ์๋ง ํด๋น). ๋ณด๋ค Vi
ํธ์ง ๋ชจ๋ ๋ฌธ์ํ ๋ฐ ์ ํ ์ฌํญ.
-o vi-esc์๋ฃ
vi ๋ช ๋ น์ค ํธ์ง์์ ํ์ถ(^[) ์ ๋ช ๋ น ๋ฐ ํ์ผ ์ด๋ฆ ์์ฑ ์ํ
๋ช ๋ น ๋ชจ๋๋ก ๋ค์ด๊ฐ๋๋ค.
-o vi-ํญ์์ฑ
vi ๋ช ๋ น์ค ํธ์ง์์ ํญ(^I)์ด ์์ ๋ ๋ช ๋ น ๋ฐ ํ์ผ ์ด๋ฆ ์์ฑ์ ์ํํฉ๋๋ค.
์ฝ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋๋ค. ์ด๊ฒ์ด ๊ธฐ๋ณธ๊ฐ์ ๋๋ค.
-o ๋น๋ก
ํจ๊ณผ๊ฐ ์์ต๋๋ค. ์๋ Korn ์์์ ๋น๋ก vi ๋ช ๋ น์ด ์ค์ ๋์์ต๋๋ค.
๋ผ์ธ ๋ชจ๋๋ ์ฒญ๊ฐ ์ฅ์ (4) ๋๋ผ์ด๋ฒ๋ ESC(^[)๊ฐ ์ ๋ ฅ๋ ๋๊น์ง ์์ ์ ์ํํฉ๋๋ค.
mksh ํญ์ viraw ๋ชจ๋์ ๋๋ค.
์ด ์ต์ ์ ์ ํธ์ถ ์์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ํ์ฌ ์ธํธ
์ต์ (๋จ์ผ ๋ฌธ์ ์ด๋ฆ ํฌํจ)์ '$-' ๋งค๊ฐ๋ณ์์์ ์ฐพ์ ์ ์์ต๋๋ค. ์ธํธ -o ๊ณผ
์ด๋ค ์ต์ ์ด๋ฆ๋ ๋ชจ๋ ์ต์ ๊ณผ ๊ฐ ์ต์ ์ด ์ผ์ ธ ์๋์ง ์ฌ๋ถ๋ฅผ ๋์ดํ์ง ์์ต๋๋ค. ์ธํธ +o ์์ง
ํ์ฌ ์ผ์ ธ ์๋ ๋ชจ๋ ์ต์ ์ ๊ธด ์ด๋ฆ์ ์ธ์ํฉ๋๋ค. ํฅํ ๋ฒ์ ์์๋ ์ธํธ
+o ํ์ฌ ์ต์ ์ ๋ณต์ํ๊ธฐ ์ํด POSIX ํธํ ๋ฐ ์ธ์ ๋ช ๋ น์ ์๋ํฉ๋๋ค.
๋์ .
๋จ์ ์๋ ์ธ์๋ ์์น ๋งค๊ฐ๋ณ์์ด๋ฉฐ ์์๋๋ก ํ ๋น๋ฉ๋๋ค.
์์น ๋งค๊ฐ๋ณ์(์: $1, $2 ๋ฑ). ์ต์ ์ด '--'๋ก ๋๋๋ฉด
๋จ์ ์ธ์๊ฐ ์์ผ๋ฉด ๋ชจ๋ ์์น ๋งค๊ฐ๋ณ์๊ฐ ์ง์์ง๋๋ค. ์ต์ ์ด ์๊ฑฐ๋
์ธ์๊ฐ ์ฃผ์ด์ง๋ฉด ๋ชจ๋ ์ด๋ฆ์ ๊ฐ์ด ์ธ์๋ฉ๋๋ค. ์๋ ค์ง์ง ์์ ์ญ์ฌ์
์ด์ ๋๋ฌธ์ ๊ณ ๋ ํ '-' ์ต์ ์ ํน๋ณํ ์ทจ๊ธ๋ฉ๋๋ค. -v ๊ณผ -x
์ต์ ์ ์ ๊ณตํฉ๋๋ค.
๋ณํ [๋ฒํธ]
์์น ๋งค๊ฐ๋ณ์ ๋ฒํธ+ 1, ๋ฒํธ+2 ๋ฑ์ '1', '2' ๋ฑ์ผ๋ก ์ด๋ฆ์ด ๋ณ๊ฒฝ๋ฉ๋๋ค.
๋ฒํธ ๊ธฐ๋ณธ๊ฐ์ 1์ ๋๋ค.
์ ์ด
์ต์ํ์ ์๊ฐ ๋์ ์คํ์ ์ผ์ ์ค์งํฉ๋๋ค. ์ด ์์ XNUMX์ง์ ๊ฐ์ผ๋ก ์ง์ ๋จ
์ ํ์ ์์ ๋ถ๋ถ์ผ๋ก. ์ ํธ ์ ๋ฌ์ ๋ ์ผ์ฐ ์คํ์ ๊ณ์ํ ์ ์์ต๋๋ค.
ํ์ผ [์๋ฅดํจํฐ๋ ...]
์ฒ๋ผ . ("์ "), ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ๊ฐ ๊ฒ์์ ์ถ๊ฐ๋๋ค๋ ์ ์ ์ธ
๊ฒฝ๋ก(GNU ์ธ๊ฒ ๋๋ฆฌ๋ค ํ๋).
๋งค๋ฌ๋ค
ํฐ๋ฏธ๋์์ ์ผ์ ์ค์ง ๋ฌธ์๋ฅผ ๋ฐ์ ๊ฒ์ฒ๋ผ ์ ธ์ ์ค์งํฉ๋๋ค. ๊ทธ๊ฒ์
๋ถ๋ชจ ํ๋ก์ธ์ค๊ฐ ๋ก๊ทธ์ธ ์์ ๊ตฌ์ฑ์์ด ์๋๋ฉด ๋ก๊ทธ์ธ ์์ ์ผ์ ์ค์งํ ์ ์์ต๋๋ค.
๋์ผํ ํฐ๋ฏธ๋ ์ธ์ ์ด์ง๋ง ๋ค๋ฅธ ํ๋ก์ธ์ค ๊ทธ๋ฃน์ ๊ตฌ์ฑ์์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก
๊ท์น, ์์ด ๋ค๋ฅธ ์์ ์ํด ์์๋์๊ฑฐ๋ ๋ค์์ ํตํด ์์๋ ๊ฒฝ์ฐ su(1) ์ ์ง๋ ์ ์์ต๋๋ค.
test ํํ
[ ํํ ]
test ํ๊ฐ ํํ true์ธ ๊ฒฝ์ฐ 1 ์ํ, false์ธ ๊ฒฝ์ฐ XNUMX ์ด์์ ๋ฐํํฉ๋๋ค.
์ค๋ฅ๊ฐ ์๋ ๊ฒฝ์ฐ 1๋ณด๋ค ๋์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๋ค์์ ์กฐ๊ฑด ๋ช ๋ น์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. if ๊ณผ
๋์ ์ง์ . ๋ชจ๋ ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋ฐ๋ฆ ๋๋ค. ํ์ผ ์ ์ธํ๋ ํํ -h ๊ณผ
-L.
๋ค์๊ณผ ๊ฐ์ ๊ธฐ๋ณธ ํํ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
-a ํ์ผ ํ์ผ ์กด์ฌํฉ๋๋ค.
-b ํ์ผ ํ์ผ ๋ธ๋ก ํน์ ์ฅ์น์ ๋๋ค.
-c ํ์ผ ํ์ผ ์บ๋ฆญํฐ ํน์ ์ฅ์น์ ๋๋ค.
-d ํ์ผ ํ์ผ ๋๋ ํ ๋ฆฌ์ ๋๋ค.
-e ํ์ผ ํ์ผ ์กด์ฌํฉ๋๋ค.
-f ํ์ผ ํ์ผ ์ผ๋ฐ ํ์ผ์ ๋๋ค.
-G ํ์ผ ํ์ผ์ ๊ทธ๋ฃน์ ์์ ์ ํจ ๊ทธ๋ฃน ID์ ๋๋ค.
-g ํ์ผ ํ์ผ์ ๋ชจ๋์๋ setgid ๋นํธ๊ฐ ์ค์ ๋์ด ์์ต๋๋ค.
-H ํ์ผ ํ์ผ ์ปจํ ์คํธ ์ข ์ ๋๋ ํ ๋ฆฌ์ ๋๋ค(HP-UX์์๋ง ์ ์ฉํจ).
-h ํ์ผ ํ์ผ ์ฌ๋ณผ๋ฆญ ๋งํฌ์ ๋๋ค.
-k ํ์ผ ํ์ผ์ ๋ชจ๋๋ ๋์ ๋์ ํ(8) ๋นํธ ์ธํธ.
-L ํ์ผ ํ์ผ ์ฌ๋ณผ๋ฆญ ๋งํฌ์ ๋๋ค.
-O ํ์ผ ํ์ผ์ ์์ ์๋ ์์ ์ ํจ ์ฌ์ฉ์ ID์ ๋๋ค.
-o ์ ํ๊ถ ๊ป์ง ์ ํ๊ถ ์ค์ ๋ฉ๋๋ค(์ฐธ์กฐ ์ธํธ ๋ชฉ๋ก์ ๋ํ ์์ ๋ช ๋ น
์ต์ ). ๋นํ์ค ํ์ฅ์ผ๋ก ์ต์ ์ด ๋ค์์ผ๋ก ์์ํ๋ ๊ฒฝ์ฐ
'!', ํ ์คํธ๊ฐ ๋ฌดํจํ๋ฉ๋๋ค. ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ํ ์คํธ๋ ํญ์ ์คํจํฉ๋๋ค. ์ ํ๊ถ
์กด์ฌํ์ง ์์ต๋๋ค(๋ฐ๋ผ์ [ -o foo -o -o !foo ]๋ ๋ค์ ๊ฒฝ์ฐ์๋ง true๋ฅผ ๋ฐํํฉ๋๋ค.
์ต์ ์ด๋ผ๋ฉด ํธ ์กด์ฌํฉ๋๋ค). [ -o ?foo ]๋ก ๋์ผํ ์์ ์ ์ํํ ์ ์์ต๋๋ค.
AT&T ์ ๋์ค์ฒ๋ผ ksh93. ์ ํ๊ถ ๊ฐ ์ด๋๋ ์งง์ ๊น๋ฐ์ด ๋ ์๋ ์์ต๋๋ค.
'-' ๋๋ '+'(๋ ผ๋ฆฌ์ ๋ถ์ ์์), ์: '-x' ๋๋ '+x'
'xtrace' ๋์ .
-p ํ์ผ ํ์ผ ๋ช ๋ช ๋ ํ์ดํ(FIFO)์ ๋๋ค.
-r ํ์ผ ํ์ผ ์กด์ฌํ๋ฉฐ ์ฝ์ ์ ์์ต๋๋ค.
-S ํ์ผ ํ์ผ ํ๋ ์ ๋์ค(4)-๋๋ฉ์ธ ์์ผ.
-s ํ์ผ ํ์ผ ๋น์ด ์์ง ์์ต๋๋ค.
-t fd ํ์ผ ๊ธฐ์ ์ fd ํ๋ ์ฒญ๊ฐ ์ฅ์ (4) ์ฅ์น.
-u ํ์ผ ํ์ผ์ ๋ชจ๋์๋ setuid ๋นํธ๊ฐ ์ค์ ๋์ด ์์ต๋๋ค.
-w ํ์ผ ํ์ผ ์กด์ฌํ๋ฉฐ ์ฐ๊ธฐ ๊ฐ๋ฅํฉ๋๋ค.
-x ํ์ผ ํ์ผ ์กด์ฌํ๊ณ ์คํ ๊ฐ๋ฅํฉ๋๋ค.
file1 -nt file2 file1 ๋ณด๋ค ์ต์ ์ ๋๋ค file2 or file1 ์กด์ฌํ๊ณ file2 ํ์ง ์์ต๋๋ค.
file1 -์ค file2 file1 ~๋ณด๋ค ๋์ด๊ฐ ๋ง๋ค file2 or file2 ์กด์ฌํ๊ณ file1 ํ์ง ์์ต๋๋ค.
file1 -๋ง์ฝ์ file2 file1 ์ ๊ฐ์ ํ์ผ์ ๋๋ค file2.
ํ ํ ๊ธธ์ด๊ฐ XNUMX์ด ์๋๋๋ค.
-n ํ ํ ๋น์ด ์์ง ์์ต๋๋ค.
-z ํ ํ ๋น์๋ค.
ํ = ํ ๋ฌธ์์ด์ ๋์ผํฉ๋๋ค.
ํ == ํ ๋ฌธ์์ด์ ๋์ผํฉ๋๋ค.
ํ > ํ ์ฒซ ๋ฒ์งธ ๋ฌธ์์ด ํผ์ฐ์ฐ์๊ฐ ๋ ๋ฒ์งธ ๋ฌธ์์ด ํผ์ฐ์ฐ์๋ณด๋ค ํฝ๋๋ค.
ํ < ํ ์ฒซ ๋ฒ์งธ ๋ฌธ์์ด ํผ์ฐ์ฐ์๊ฐ ๋ ๋ฒ์งธ ๋ฌธ์์ด ํผ์ฐ์ฐ์๋ณด๋ค ์์ต๋๋ค.
ํ != ํ ๋ฌธ์์ด์ด ๊ฐ์ง ์์ต๋๋ค.
๋ฒํธ -eq ๋ฒํธ ์ซ์๋ ๊ฐ๋ค๊ณ ๋น๊ต๋ฉ๋๋ค.
๋ฒํธ -๋ค ๋ฒํธ ์ซ์๊ฐ ๊ฐ์ง ์์์ง ๋น๊ตํฉ๋๋ค.
๋ฒํธ -๊ฒ ๋ฒํธ ์ซ์๋ ํฌ๊ฑฐ๋ ๊ฐ์์ ๋น๊ตํฉ๋๋ค.
๋ฒํธ -gt ๋ฒํธ ์ซ์๋ ๋ณด๋ค ํผ์ ๋น๊ตํฉ๋๋ค.
๋ฒํธ ๊ทธ๋ค ๋ฒํธ ์ซ์๋ ์๊ฑฐ๋ ๊ฐ์์ ๋น๊ตํฉ๋๋ค.
๋ฒํธ -๊ทธ ๋ฒํธ ์ซ์๋ ๋ณด๋ค ์๊ฒ ๋น๊ต๋ฉ๋๋ค.
๋จํญ ์ฐ์ฐ์๊ฐ ์ด์ง ์ฐ์ฐ์๋ณด๋ค ์ฐ์ ํ๋ ์์ ๊ธฐ๋ณธ ํํ์
์ฐ์ฐ์๋ ๋ค์ ์ฐ์ฐ์์ ๊ฒฐํฉ๋ ์ ์์ต๋๋ค(์ค๋ฆ์ฐจ์์ผ๋ก ๋์ด๋จ).
์ฐ์ ์์):
expr -o expr ๋ ผ๋ฆฌ์ OR.
expr -a expr ๋ ผ๋ฆฌ์ AND.
! expr ๋ ผ๋ฆฌ์ NOT.
( expr ) ๊ทธ๋ฃนํ.
์ซ์๋ ์ค์ ๋ก ์์๊ณผ ๊ฐ์ ์ฐ์ ํํ์์ผ ์ ์์ต๋๋ค.
์ฉ์ด ๋๋ ์ ์ ๋ณ์์ ์ด๋ฆ:
x=1; [ "x" -eq 1 ] ์ฐธ์ผ๋ก ํ๊ฐ
๋ช ๊ฐ์ง ํน๋ณํ ๊ท์น์ด ์ ์ฉ๋ฉ๋๋ค(POSIX ์ ๊ณต).
์ฃผ์ฅ test ๋๋ ๊ดํธ ์์ [ ... ] XNUMX๋ณด๋ค ์์: ์ ํํ๋ ๊ฒฝ์ฐ '!'
XNUMX~XNUMX๊ฐ์ ์ธ์๋ง ๋จ๋๋ก ์ธ์๋ฅผ ์ ๊ฑฐํ ์ ์์ต๋๋ค.
๋ฎ์์ง ๋น๊ต๊ฐ ์คํ๋ฉ๋๋ค. (XSI ๋๋ถ์) ๊ดํธ \( ... \) ๋ฎ์ XNUMX- ๋ฐ
XNUMX์ธ์ ํ์์์ XNUMX์ธ์ ๋ฐ XNUMX์ธ์ ํ์์ผ๋ก ๊ฐ๊ฐ; XNUMX์ธ์
ํ์์ ๊ถ๊ทน์ ์ผ๋ก ์ด์ง ์ฐ์ฐ์ ์ ํธํ๊ณ ๋ถ์ ๊ณผ ๊ดํธ๊ฐ ๋ค๋ฐ๋ฆ ๋๋ค.
์ ํ; XNUMX์ธ์ ๋ฐ XNUMX์ธ์ ํ์์ ๊ดํธ ๋ค์์ ์ค๋ ๋ถ์ ์ ์ ํธํฉ๋๋ค. ๊ทธ๋งํผ
์ธ์๊ฐ ํ๋์ธ ํ์์ ํญ์ ๋ค์์ ์๋ฏธํฉ๋๋ค. -n.
์ฃผ์ ์ฌํญ: ์ผ๋ฐ์ ์ธ ์ค์๋ "if [ $foo = bar ]"๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค.
๊ณต๋ฐฑ์ด ์๊ฑฐ๋(์: IFS ์ฅํ ) ๋จํญ์ธ ๊ฒฝ์ฐ NULL์ด๊ฑฐ๋ ์ค์ ๋์ง ์์
'!'์ ๊ฐ์ ์ฐ์ฐ์ ๋๋ '-n'. ๋์ "if [ x"$foo" = x"bar" ]"์ ๊ฐ์ ํ ์คํธ๋ฅผ ์ฌ์ฉํ๊ฑฐ๋
์ด์ค ๊ดํธ ์ฐ์ฐ์ "if [[ $foo = bar ]]" ๋๋ ํจํด ์ผ์น๋ฅผ ํผํ๊ธฐ ์ํด(์ฐธ์กฐ [[
์): โif [[ $foo = "$bar" ]]โ
XNUMXD๋ดํ์ [[ ... ]] ๊ตฌ์กฐ๋ ์ฌ์ฉํ๊ธฐ์ ๋ ์์ ํ ๋ฟ๋ง ์๋๋ผ ์ข ์ข ๋ ๋น ๋ฆ ๋๋ค.
์๊ฐ [-p] [๊ด๋ก]
๊ฒฝ์ฐ ๊ด๋ก ๊ฐ ์ฃผ์ด์ง๋ฉด ํ์ดํ๋ผ์ธ์ ์คํํ๋ ๋ฐ ์ฌ์ฉ๋ ์๊ฐ์ด ๋ณด๊ณ ๋ฉ๋๋ค. ์๋์ค์ธ ๊ฒฝ์ฐ
ํ์ดํ๋ผ์ธ์ด ์ฃผ์ด์ง๋ฉด ์ ธ ์์ฒด์์ ์ฌ์ฉํ๋ ์ฌ์ฉ์ ๋ฐ ์์คํ ์๊ฐ๊ณผ ๋ชจ๋
์์๋ ์ดํ ์คํํ ๋ช ๋ น์ด ๋ณด๊ณ ๋ฉ๋๋ค. ๋ณด๊ณ ๋ ์๊ฐ์
์ค์๊ฐ(์ฒ์๋ถํฐ ๋๊น์ง ๊ฒฝ๊ณผ๋ ์๊ฐ), ์ฌ์ฉ์ CPU ์๊ฐ(์ฌ์ฉํ ์๊ฐ)
์ฌ์ฉ์ ๋ชจ๋์์ ์คํ) ๋ฐ ์์คํ CPU ์๊ฐ(์ปค๋ ๋ชจ๋์์ ์คํํ๋ ๋ฐ ์์๋ ์๊ฐ).
์๊ฐ์ ํ์ค ์ค๋ฅ๋ก ๋ณด๊ณ ๋ฉ๋๋ค. ์ถ๋ ฅ ํ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
0m0.00s ์ค์ 0m0.00s ์ฌ์ฉ์ 0m0.00s ์์คํ
๊ฒฝ์ฐ -p ์ต์ ์ด ์ฃผ์ด์ง๋ฉด ์ถ๋ ฅ์ด ์ฝ๊ฐ ๋ ๊ธธ์ด์ง๋๋ค.
์ค์ 0.00
์ฌ์ฉ์ 0.00
์์คํ 0.00
๋ฅผ ์ง์ ํ๋ ๊ฒ์ ์ค๋ฅ์ ๋๋ค. -p ์ต์ ์ด ์๋ ํ ๊ด๋ก ๊ฐ๋จํ ๋ช ๋ น์ ๋๋ค.
ํ์ค ์ค๋ฅ์ ๋จ์ ๋ฆฌ๋๋ ์ ์ ์ถ๋ ฅ์ ์ํฅ์ ์ฃผ์ง ์์ต๋๋ค. ์๊ฐ ๋ช ๋ น:
$ ์๊ฐ ์๋ฉด 1 2> ํ์ผ
$ { ์๊ฐ ์๋ฉด 1; } 2>ํ์ผ
์ฒซ ๋ฒ์งธ ๋ช ๋ น์ ์๊ฐ์ "afile"๋ก ์ด๋ํ์ง ์์ง๋ง ๋ ๋ฒ์งธ ๋ช ๋ น์ ์๊ฐ์ ์ด๋ํฉ๋๋ค.
์๋ ์ ธ๊ณผ ํ๋ก์ธ์ค ๋ชจ๋์์ ์ฌ์ฉ๋ ๋์ ์ฌ์ฉ์ ๋ฐ ์์คํ ์๊ฐ์ ์ธ์ํฉ๋๋ค.
์ข ๋ฃ๋ ์์ด ์์๋์์ต๋๋ค. ์ถ๋ ฅ ํ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
0๋ถ0.00์ด 0๋ถ0.00์ด
0๋ถ0.00์ด 0๋ถ0.00์ด
ํธ๋ฉ n [์ ํธ ...]
์ฒซ ๋ฒ์งธ ํผ์ฐ์ฐ์๊ฐ ๋ถํธ ์๋ XNUMX์ง ์ ์์ธ ๊ฒฝ์ฐ ์ง์ ๋ ๋ชจ๋ ์ ํธ๋ฅผ ์ฌ์ค์ ํฉ๋๋ค.
๊ธฐ๋ณธ ๋์์ผ๋ก, ์ฆ ํธ์ถ๊ณผ ๋์ผํฉ๋๋ค. ํธ๋ฉ ๋นผ๊ธฐ ๊ธฐํธ('-')๋ก
๋งค๋์ , ์ธ์(n [์ ํธ ...]), ๋ชจ๋ ๋ค์๊ณผ ๊ฐ์ด ์ทจ๊ธ๋ฉ๋๋ค.
์ ํธ.
ํธ๋ฉ [๋งค๋์ ์ ํธ ...]
์ง์ ๋ ๊ฒฝ์ฐ ์คํ๋ ํธ๋ฉ ํธ๋ค๋ฌ๋ฅผ ์ค์ ํฉ๋๋ค. ์ ํธS๋
๋ฐ์์ต๋๋ค. ๋งค๋์ ์ ํธ๋ฅผ ๋ํ๋ด๋ ๋น ๋ฌธ์์ด์ ๋๋ค.
๋ฌด์๋จ, ๋นผ๊ธฐ ๊ธฐํธ('-'), ๊ธฐ๋ณธ ์์ ์ด ๋ค์์ ๋ํด ์ํ๋จ์ ๋ํ๋
์ ํธ(์ฐธ์กฐ ์ ํธ(3)), ๋๋ ์คํํ ์ ๋ช ๋ น์ ํฌํจํ๋ ๋ฌธ์์ด
์ฒซ ๋ฒ์งธ ๊ธฐํ(์ฆ, ํ์ฌ ๋ช ๋ น์ด ์๋ฃ๋ ๋ ๋๋ ์ธ์ํ๊ธฐ ์ ์
์ ํธ ์ค ํ๋๋ฅผ ์์ ํ ํ ๋ค์ PS1 ํ๋กฌํํธ). ์ ํธ ์ ์ด๋ฆ์ ๋๋ค
์ ํธ(์: PIPE ๋๋ ALRM) ๋๋ ์ ํธ ๋ฒํธ( ์ฃฝ์ด๊ธฐ -l ๋ช ๋ น
์).
๋ ๊ฐ์ง ํน์ ์ ํธ๊ฐ ์์ต๋๋ค. EXIT(0์ด๋ผ๊ณ ๋ ํจ)๋ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์ ์คํ๋ฉ๋๋ค.
shell์ ์ข ๋ฃํ๋ ค๊ณ ํ๊ณ , ERR์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ํ์ ์คํ๋ฉ๋๋ค. ์ค๋ฅ๋
๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์์ด ์ข ๋ฃ๋๋๋ก ํ๋ ๊ฒ ์ธํธ -e or ์ธํธ -o ์ค์ ์ ํ๊ถ
์ค์ ๋์์ต๋๋ค. EXIT ์ฒ๋ฆฌ๊ธฐ๋ ๋ง์ง๋ง์ผ๋ก ์คํ๋ ํ๊ฒฝ์์ ์คํ๋ฉ๋๋ค.
๋ช ๋ น.
๋น๋ํํ ์์ ๊ฒฝ์ฐ ์ ํธ์ ๋ํด ํธ๋ฉ ์ฒ๋ฆฌ๊ธฐ๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
์์ด ์์๋ ๋ ๋ฌด์๋์์ต๋๋ค.
์ธ์๊ฐ ์์ผ๋ฉด ์ ์ดํ๋ก ์ค์ ๋ ํธ๋ฉ์ ํ์ฌ ์ํ
์์๋จ์ ์ผ๋ จ์ ํธ๋ฉ ๋ช ๋ น. ์ถ๋ ฅ์ ํธ๋ฉ
๋ค๋ฅธ ํ๋ก์ธ์ค๋ก ์ ์ฉํ๊ฒ ์ฐ๊ฒฐ๋ ์ ์์ต๋๋ค(ํธ๋ฉ์ด ์ง์์ง๋ค๋ ์ฌ์ค์ ์ํฐํฉํธ).
ํ์ ํ๋ก์ธ์ค๊ฐ ์์ฑ๋ ๋).
์๋ Korn ์์ DEBUG ํธ๋ฉ๊ณผ ERR ๋ฐ EXIT ํธ๋ฉ์ ์ฒ๋ฆฌ
๊ธฐ๋ฅ์ ์์ง ๊ตฌํ๋์ง ์์์ต๋๋ค.
์ฐธ๋ XNUMX ๊ฐ์ผ๋ก ์ข ๋ฃํ๋ ๋ช ๋ น์ ๋๋ค.
๊ธ๋ก๋ฒ [[+-alpnrtUux] [-L[n]] [-R[n]] [-Z[n]] [-i[n]] | -f [-ํฑ์๋]] [name [=๊ฐ์น] ...]
์กฐํ [[+-alpnrtUux] [-LRZ[n]] [-i[n]] | -f [-ํฑ์๋]] [name [=๊ฐ์น] ...]
๋งค๊ฐ๋ณ์ ์์ฑ์ ํ์ํ๊ฑฐ๋ ์ค์ ํฉ๋๋ค. ์์ด name ์ธ์, ๋งค๊ฐ๋ณ์ ์์ฑ
ํ์๋ฉ๋๋ค. ์ต์ ์ ์ฌ์ฉํ์ง ์์ผ๋ฉด ๋ชจ๋ ๋งค๊ฐ๋ณ์์ ํ์ฌ ์์ฑ์ด
๋ก ์ธ์ ์กฐํ ๋ช ๋ น; ์ต์ ์ด ์ฃผ์ด์ง๋ฉด(๋๋ ์ต์ ๋ฌธ์๊ฐ ์๋ '-'),
์ง์ ๋ ์์ฑ์ ๊ฐ์ง ๋ชจ๋ ๋งค๊ฐ๋ณ์์ ํด๋น ๊ฐ์ด ์ธ์๋ฉ๋๋ค. ์ต์ ์ด ์๋ ๊ฒฝ์ฐ
'+'๋ก ์์ํ๋ฉด ๋งค๊ฐ๋ณ์ ๊ฐ์ด ์ธ์๋์ง ์์ต๋๋ค.
If name ์ธ์๊ฐ ์ฃผ์ด์ง๋ฉด ๋ช ๋ช ๋ ๋งค๊ฐ๋ณ์์ ์์ฑ์ด ์ค์ ๋ฉ๋๋ค(-) ๋๋
ํด๋ฆฌ์ด (+). ๋งค๊ฐ๋ณ์ ๊ฐ์ ์ ํ์ ์ผ๋ก ์ง์ ํ ์ ์์ต๋๋ค. ์ ์ํ name[*],
๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฒด ์ด๋ ์ด์ ์ํฅ์ ๋ฏธ์น๋ฉฐ ๊ฐ์ ์ง์ ํ ์ ์์ต๋๋ค.
If ์กฐํ ํจ์ ๋ด์์ ์ฌ์ฉ๋๋ฉฐ ์ง์ ๋ ๋ชจ๋ ๋งค๊ฐ๋ณ์๋ ํ์งํ๋ฉ๋๋ค. ์ด๊ฒ
๊ทธ๋ ์ง ์์ผ๋ฉด ๋์ผํ ๋ฐฉ์์ผ๋ก ์ํ๋์ง ์์ต๋๋ค. ๊ธ๋ก๋ฒ. ์ฃผ์ ์ฌํญ: ์ด ๋ง์ mksh 's ๊ธ๋ก๋ฒ
๋ช ๋ น์ ์ง์ ํ์ฉํ์ง ์๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๋์ผํฉ๋๋ค.
์ค์ ์ ์ญ ๋ฒ์์์ ๋งค๊ฐ๋ณ์์ ์ก์ธ์คํ๊ธฐ ์ํด ๋ค๋ฅธ ํจ์์์ ํธ์ถ๋๋ ํจ์,
๊ทธ๋ฌ๋ ์ก์ธ์ค๋ ํญ๋ชฉ์ ๋ก์ปฌ ๋ฒ์์ ๋ฃ๋ ๊ฒ์ ๋ฐฉ์งํ ๋ฟ์ ๋๋ค.
์ธ์ ๋ค ๊ณต์ ํ๋งค์ ์ธ -f ์ฌ์ฉ, ์กฐํ ๊ธฐ๋ฅ์ ์์ฑ์์ ์๋ํฉ๋๋ค. ์ ๊ฐ์
์๋ ๊ฒฝ์ฐ ๋งค๊ฐ๋ณ์ name ์ธ์๊ฐ ์ฃผ์ด์ง๋ฉด ํจ์๋ ํด๋น ๊ฐ๊ณผ ํจ๊ป ๋์ด๋ฉ๋๋ค.
(์: ์ ์) ์ต์ ์ด '+'๋ก ๋์ ๋์ง ์๋ ํ, ์ด ๊ฒฝ์ฐ
ํจ์ ์ด๋ฆ์ด ๋ณด๊ณ ๋ฉ๋๋ค.
-a ์ธ๋ฑ์ค ๋ฐฐ์ด ์์ฑ.
-f ๊ธฐ๋ฅ ๋ชจ๋. ๋์ ๊ธฐ๋ฅ ๋ฐ ์์ฑ์ ํ์ํ๊ฑฐ๋ ์ค์ ํฉ๋๋ค.
๋งค๊ฐ ๋ณ์๋ฅผ ์ค์ ํฉ๋๋ค.
-i[n] ์ ์ ์์ฑ. n ์ ์๋ฅผ ํ์ํ ๋ ์ฌ์ฉํ ๊ธฐ์ค์ ์ง์ ํฉ๋๋ค.
(์ง์ ํ์ง ์์ผ๋ฉด ์ฒซ ๋ฒ์งธ ํ ๋น์์ ์ฃผ์ด์ง ๋ฒ ์ด์ค๊ฐ ์ฌ์ฉ๋จ).
์ด ์์ฑ์ด ์๋ ๋งค๊ฐ๋ณ์์๋ ์ฐ์ ์ ํฌํจํ๋ ๊ฐ์ด ํ ๋น๋ ์ ์์ต๋๋ค.
ํํ.
-L[n] ์ผ์ชฝ ์ ๋ ฌ ์์ฑ. n ํ๋ ๋๋น๋ฅผ ์ง์ ํฉ๋๋ค. ๋ง์ฝ์ n ์ง์ ๋์ง ์๊ณ ,
๋งค๊ฐ๋ณ์์ ํ์ฌ ๋๋น(๋๋ ์ฒซ ๋ฒ์งธ ํ ๋น๋ ๊ฐ์ ๋๋น)
์ฌ์ฉ. ์ ํ ๊ณต๋ฐฑ(๋ฐ XNUMX๊ณผ ํจ๊ป ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ -Z ์ต์ )์
๋ฒ๊ฒจ์ง. ํ์ํ ๊ฒฝ์ฐ ๊ฐ์ด ์๋ฆฌ๊ฑฐ๋ ๊ณต๊ฐ์ ๋ง๊ฒ ์ฑ์์ง๋๋ค.
ํ๋ ๋๋น.
-l ์๋ฌธ์ ์์ฑ. ๊ฐ์ ๋ชจ๋ ๋๋ฌธ์๋ ๋ค์์ผ๋ก ๋ณํ๋ฉ๋๋ค.
์๋ฌธ์. (์๋ Korn ์์์ ์ด ๋งค๊ฐ๋ณ์๋ "๊ธด ์ ์"๋ฅผ ์๋ฏธํ์ต๋๋ค.
์ ํจ๊ป ์ฌ์ฉํ ๋ -i ์ ํ๊ถ.)
-n ๋ฐ์ธ๋ฉ๋ ๋ณ์ ๋ง๋ค๊ธฐ(์ด๋ฆ ์ฐธ์กฐ): ๋ณ์์ ๋ํ ๋ชจ๋ ์ก์ธ์ค name
๋ณ์์ ์ก์ธ์คํฉ๋๋ค ๊ฐ์น ํ์ฌ ๋ฒ์์์(์ด๋
AT&T ์ ๋์ค ksh93!) ๋์ ์. ๋ํ AT&T UNIX์ ๋ค๋ฆ ๋๋ค. ksh93 ๊ทธ๋
๊ฐ์น ๋น์์ ๊ฒ์ผ๋ฅธ ํ๊ฐ name ์ก์ธ์ค๋ฉ๋๋ค. ์ด๊ฒ์ ๋ค์์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋์ ์ด๋ฆ์ด ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌ๋๋ ๋ณ์์ ์ก์ธ์คํ๋ ํจ์
์ฌ์ฉ ํ๊ฐ.
-p ์ธ์ ์๋ฃ ์กฐํ ์์ฑ์ ์ฌ์์ฑํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ๋ช ๋ น
๊ทธ๋ฆฌ๊ณ ๋งค๊ฐ๋ณ์์ ๊ฐ.
-R[n] ์ค๋ฅธ์ชฝ ์ ๋ ฌ ์์ฑ. n ํ๋ ๋๋น๋ฅผ ์ง์ ํฉ๋๋ค. ๋ง์ฝ์ n ํ์ง ์์ต๋๋ค
์ง์ ๋ ๋งค๊ฐ๋ณ์์ ํ์ฌ ๋๋น(๋๋ ์ฒซ ๋ฒ์งธ ๋งค๊ฐ๋ณ์์ ๋๋น)
ํ ๋น๋ ๊ฐ)์ ์ฌ์ฉํฉ๋๋ค. ํํ ๊ณต๋ฐฑ์ด ์ ๊ฑฐ๋ฉ๋๋ค. ํ์ํ๋ค๋ฉด,
๊ฐ์ ์ ํ ๋ฌธ์๋ฅผ ์ ๊ฑฐํ๊ฑฐ๋ ๊ณต๋ฐฑ์ ์ฑ์ ๊ฐ์ ๋ง๋ญ๋๋ค.
ํ๋ ๋๋น์ ๋ง์ถฅ๋๋ค.
-r ์ฝ๊ธฐ ์ ์ฉ ์์ฑ. ์ด ์์ฑ์ด ์๋ ๋งค๊ฐ๋ณ์๋ ๋ค์์ ํ ๋น๋ ์ ์์ต๋๋ค.
๋๋ ์ค์ ํด์ . ์ด ์์ฑ์ด ์ค์ ๋๋ฉด ๋ ์ ์์ต๋๋ค.
-t ํ๊ทธ ์์ฑ. ๊ป์ง์๋ ์๋ฏธ๊ฐ ์์ต๋๋ค. ์์ฉ ํ๋ก๊ทธ๋จ ์ฌ์ฉ์ ์ํด ์ ๊ณต๋ฉ๋๋ค.
๊ธฐ๋ฅ์ ๊ฒฝ์ฐ, -t ์ถ์ ์์ฑ์ ๋๋ค. ์ถ์ ๊ธฐ๋ฅ์ด ์๋ ๊ฒฝ์ฐ
์์ฑ์ด ์คํ๋๋ฉด ์์คํธ๋ ์ด์ค (-x) ์ ์ต์ ์ด ์ผ์์ ์ผ๋ก ์ผ์ง
์.
-U ๋ถํธ ์๋ ์ ์ ์์ฑ. ์ ์๋ ๋ถํธ ์๋ ๊ฐ์ผ๋ก ์ธ์๋ฉ๋๋ค(๊ฒฐํฉ
์ ๋๋ถ์ด -i ์ต์ ). ์ด ์ต์ ์ ์๋ Korn ์์ ์์ต๋๋ค.
-u ๋๋ฌธ์ ์์ฑ. ๊ฐ์ ๋ชจ๋ ์๋ฌธ์๋ ๋ค์์ผ๋ก ๋ณํ๋ฉ๋๋ค.
๋๋ฌธ์. (์๋ Korn ์ ธ์์ ์ด ๋งค๊ฐ๋ณ์๋ "๋ถํธ ์๋
์ ์โ์ ํจ๊ป ์ฌ์ฉํ ๋ -i ๋๋ฌธ์๋ฅผ ์๋ฏธํ๋ ์ต์ ์
10๋ณด๋ค ํฐ ์ผ๊ธฐ์๋ ์ ๋ ์ฌ์ฉํ์ง ๋ง์ญ์์ค. -U ์ ํ๊ถ.)
๊ธฐ๋ฅ์ ๊ฒฝ์ฐ, -u ์ ์๋์ง ์์ ์์ฑ์ ๋๋ค. ๋ณด๋ค ๊ธฐ๋ฅ ์์
์ด๊ฒ์ ์๋ฏธ.
-x ๋ด๋ณด๋ด๊ธฐ ์์ฑ. ๋งค๊ฐ๋ณ์(๋๋ ํจ์)๋
์คํ๋ ๋ชจ๋ ๋ช ๋ น. ๋ด๋ณด๋ธ ๊ธฐ๋ฅ์ ์์ง ๊ตฌํ๋์ง ์์์ต๋๋ค.
-Z[n] ์ ๋ก ์ฑ์ฐ๊ธฐ ์์ฑ. ์ ๊ฒฐํฉํ์ง ์๋ ๊ฒฝ์ฐ -L, ์ด๊ฒ์ ๋ค์๊ณผ ๋์ผํฉ๋๋ค. -R์ ์ธ
์คํ์ด์ค ํจ๋ฉ ๋์ ์ ๋ก ํจ๋ฉ์ด ์ฌ์ฉ๋ฉ๋๋ค. ์ ์์ ๊ฒฝ์ฐ ์ซ์
๋ฒ ์ด์ค ๋์ ํจ๋ฉ์ด ์์ต๋๋ค.
๋ค์ ์ค ํ๋๋ผ๋ -i, -L, -l, -R, -U, -u๋ฐ -Z ์ต์ ์ด ๋ณ๊ฒฝ๋๊ณ ๋ค๋ฅธ ๋ชจ๋ ์ต์ ์ ์ฌ๊ธฐ์์
๋์ผํ ๋ช ๋ น์ค์ ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ์งํฉ์ด ์ง์์ง๋๋ค.
ํ๊ณ [-aBCcdefHilMmnOPpqrSsTtVvw] [๊ฐ์น]
ํ๋ก์ธ์ค ์ ํ์ ํ์ํ๊ฑฐ๋ ์ค์ ํฉ๋๋ค. ์ต์ ์ ์ฌ์ฉํ์ง ์์ผ๋ฉด ํ์ผ ํฌ๊ธฐ ์ ํ(-f)์ด๋ค
์ถ์ . ๊ฐ์น, ์ง์ ๋ ๊ฒฝ์ฐ ์ฐ์ ํํ์ ๋๋ ๋จ์ด์ผ ์ ์์ต๋๋ค.
"์ ํ ์๋". ์ ํ์ ์ ธ ๋ฐ ์ ธ์์ ์์ฑ๋ ๋ชจ๋ ํ๋ก์ธ์ค์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค.
ํ๋๊ฐ ๋ถ๊ณผ๋ ํ. ์ผ๋ถ ์์คํ ์์๋ ์ ํ์ ํ์ฉํ์ง ์์ ์ ์์ต๋๋ค.
์ผ๋จ ์ค์ ๋๋ฉด ์ฆ๊ฐํฉ๋๋ค. ๋ํ ์ฌ์ฉ ๊ฐ๋ฅํ ์ ํ ์ ํ์ ์์คํ ์ ๋๋ค.
์ข ์ โ ์ผ๋ถ ์์คํ ์ -f ํ๋.
-a ๋ชจ๋ ํ๊ณ๋ฅผ ํ์ํฉ๋๋ค. ~ํ์ง ์๋ ํ -H ๋ฅผ ์ฌ์ฉํ๋ฉด ์ํํธ ํ๊ณ๊ฐ ํ์๋ฉ๋๋ค.
-B n ์์ผ ๋ฒํผ ํฌ๊ธฐ๋ฅผ ๋ค์์ผ๋ก ์ค์ n ํค๋น๋ฐ์ดํธ.
-C n ์บ์๋ ์ค๋ ๋ ์๋ฅผ ๋ค์์ผ๋ก ์ค์ n.
-c n ๋ค์ ํฌ๊ธฐ ์ ํ์ ๋ถ๊ณผํฉ๋๋ค. n ์ฝ์ด ๋คํ ํฌ๊ธฐ์ ๋ํ ๋ธ๋ก.
-d n ๋ค์ ํฌ๊ธฐ ์ ํ์ ๋ถ๊ณผํฉ๋๋ค. n ๋ฐ์ดํฐ ์์ญ์ ํฌ๊ธฐ์ ๋ํ kibibytes.
-e n ์ต๋ niceness๋ฅผ ๋ค์์ผ๋ก ์ค์ n.
-f n ๋ค์ ํฌ๊ธฐ ์ ํ์ ๋ถ๊ณผํฉ๋๋ค. n ์๊ณผ ๊ทธ ์์์ด ์์ฑํ ํ์ผ์ ๋ํ ๋ธ๋ก
ํ๋ก์ธ์ค(๋ชจ๋ ํฌ๊ธฐ์ ํ์ผ์ ์ฝ์ ์ ์์).
-H ํ๋ ์ ํ๋ง ์ค์ ํฉ๋๋ค(๊ธฐ๋ณธ๊ฐ์ ํ๋ ์ ํ๊ณผ ์ํํธ ์ ํ์ ๋ชจ๋ ์ค์ ํ๋ ๊ฒ์).
-i n ๋๊ธฐ ์ค์ธ ์ ํธ ์๋ฅผ ๋ค์์ผ๋ก ์ค์ n.
-l n ํ๋๋ฅผ ๋ถ๊ณผํ๋ค n ์ ๊ธด(์ ์ ) ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ์ ์์ ๋ํ kibibytes.
-M n AIO ์ ๊ธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ค์์ผ๋ก ์ค์ n ํค๋น๋ฐ์ดํธ.
-m n ํ๋๋ฅผ ๋ถ๊ณผํ๋ค n ์ฌ์ฉ๋ ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ ์์ ๋ํ kibibytes.
-n n ํ๋๋ฅผ ๋ถ๊ณผํ๋ค n ํ ๋ฒ์ ์ด ์ ์๋ ํ์ผ ์ค๋ช ์.
-O n AIO ์์ ์๋ฅผ ๋ค์์ผ๋ก ์ค์ n.
-P n ํ๋ก์ธ์ค๋น ์ค๋ ๋ ์๋ฅผ ๋ค์์ผ๋ก ์ ํ n.
-p n ํ๋๋ฅผ ๋ถ๊ณผํ๋ค n ์ฌ์ฉ์๊ฐ ์ธ์ ๋ ์ง ์คํํ ์ ์๋ ํ๋ก์ธ์ค.
-q n POSIX ๋ฉ์์ง ๋๊ธฐ์ด์ ํฌ๊ธฐ๋ฅผ ๋ค์์ผ๋ก ์ ํ n ๋ฐ์ดํธ.
-r n ์ต๋ ์ค์๊ฐ ์ฐ์ ์์๋ฅผ ๋ค์์ผ๋ก ์ค์ n.
-S ์ํํธ ์ ํ๋ง ์ค์ ํฉ๋๋ค(๊ธฐ๋ณธ๊ฐ์ ํ๋ ์ ํ๊ณผ ์ํํธ ์ ํ์ ๋ชจ๋ ์ค์ ํ๋ ๊ฒ์).
-s n ๋ค์ ํฌ๊ธฐ ์ ํ์ ๋ถ๊ณผํฉ๋๋ค. n ์คํ ์์ญ์ ํฌ๊ธฐ์ ๋ํ kibibytes.
-T n ์ ์๊ฐ ์ ํ์ ๋ถ๊ณผ n ๊ฐ ํ๋ก์ธ์ค์์ ์ฌ์ฉํ ์ค์ ์ด.
-t n ์ ์๊ฐ ์ ํ์ ๋ถ๊ณผ n ๊ฐ ์ฌ์ฉ์ ๋ชจ๋์์ ์ฌ์ฉ๋๋ CPU ์๊ฐ
ํ๋ก์ธ์ค.
-V n Haiku์ vnode ๋ชจ๋ํฐ ์๋ฅผ ๋ค์์ผ๋ก ์ค์ ํฉ๋๋ค. n.
-v n ํ๋๋ฅผ ๋ถ๊ณผํ๋ค n ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ(์ฃผ์ ๊ณต๊ฐ)์ ์์ ๋ํ kibibytes
์ต์ํ.
-w n ํ๋๋ฅผ ๋ถ๊ณผํ๋ค n ์ฌ์ฉ๋ ์ค์ ๊ณต๊ฐ์ ์์ ๋ํ kibibytes.
ํ ํ๊ณ ํ ๋ธ๋ก์ 512๋ฐ์ดํธ์ ๋๋ค.
๋ง์คํฌ [-S] [๋ง์คํฌ]
ํ์ผ ๊ถํ ์์ฑ ๋ง์คํฌ ๋๋ umask๋ฅผ ํ์ํ๊ฑฐ๋ ์ค์ ํฉ๋๋ค(์ฐธ์กฐ ๋ง์คํฌ(2)). ๋ง์ฝ -S
์ต์ ์ ์ฌ์ฉํ๋ฉด ํ์๋๊ฑฐ๋ ์ค์ ๋ ๋ง์คํฌ๊ฐ ๊ธฐํธ์ ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด XNUMX์ง์์ ๋๋ค.
์.
์์ง์ ๋ง์คํฌ๋ chmod๋ฅผ(1). ์ฌ์ฉ๋ ๋, ๊ทธ๋ค์ ๋ฌด์์ ์ค๋ช ํฉ๋๋ค
๊ถํ์ ์ฌ์ฉํ ์ ์์ต๋๋ค(์ธํธ ๋นํธ๊ฐ ์๋ฏธํ๋ XNUMX์ง์ ๋ง์คํฌ์ ๋ฐ๋๋ก).
ํด๋น ๋นํธ๊ฐ ์ง์์ง๋๋ค). ์๋ฅผ ๋ค์ด "ug=rwx,o="๋ ๋ง์คํฌ๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์ค์ ํฉ๋๋ค.
ํ์ผ์ "๋ค๋ฅธ ์ฌ๋"์ด ์ฝ๊ฑฐ๋ ์ฐ๊ฑฐ๋ ์คํํ ์ ์์ผ๋ฉฐ ๋๋ฑํฉ๋๋ค.
(๋๋ถ๋ถ์ ์์คํ ์์) 007์ง์ ๋ง์คํฌ "XNUMX"๋ก ์ค์ ํฉ๋๋ค.
๋ณ์นญ [-adt] [name ...]
์ฃผ์ด์ง ์ด๋ฆ์ ๋ณ์นญ์ด ์ ๊ฑฐ๋ฉ๋๋ค. ๋ง์ฝ -a ์ต์ ์ด ์ฌ์ฉ๋๋ฉด ๋ชจ๋ ๋ณ์นญ
์ ๊ฑฐ๋ฉ๋๋ค. ๋ง์ฝ -t or -d ์ต์ ์ด ์ฌ์ฉ๋๋ฉด ํ์๋ ์์ ์ด ์ํ๋ฉ๋๋ค.
์ถ์ ๋๋ ๋๋ ํฐ๋ฆฌ ๋ณ์นญ์์ ๊ฐ๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค.
์ค์ ํด์ [-fv] ๋งค๊ฐ ๋ณ์ ...
๋ช ๋ช ๋ ๋งค๊ฐ๋ณ์ ์ค์ ํด์ (-v, ๊ธฐ๋ณธ๊ฐ) ๋๋ ํจ์(-f). ์ ๋งค๊ฐ ๋ณ์[*],
์์ฑ์ ์ ์ง๋๊ณ ๊ฐ๋ง ์ค์ ํด์ ๋ฉ๋๋ค.
๋งค๊ฐ๋ณ์์ ์ฝ๊ธฐ ์ ์ฉ ์์ฑ์ด ์๋ ๊ฒฝ์ฐ ์ข ๋ฃ ์ํ๋ XNUMX์ด ์๋๋๋ค.
๊ทธ๋ ์ง ์์ผ๋ฉด XNUMX์ผ๋ก ์ค์ ํฉ๋๋ค.
๊ธฐ๋ค๋ฆฌ๋ค [์ผ ...]
์ง์ ๋ ์์ ์ด ์๋ฃ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ์ญ์์ค. ์ข ๋ฃ ์ํ ๊ธฐ๋ค๋ฆฌ๋ค ๋ง์ง๋ง ๊ฒ์ ๋๋ค
์ง์ ๋ ์ง์ ; ๋ง์ง๋ง ์์ ์ด ์ ํธ์ ์ํด ์ข ๋ฃ๋๋ฉด ์ข ๋ฃ ์ํ๋ 128 +
์ ํธ ๋ฒํธ(์ฐธ์กฐ ์ฃฝ์ด๊ธฐ -l ์ข ๋ฃ ์ํ ์์); ๋ง์ง๋ง์ผ๋ก ์ง์ ๋ ์์ ์ด
์ฐพ์ ์ ์์ต๋๋ค(์กด์ฌํ์ง ์์๊ฑฐ๋ ์ด๋ฏธ ์๋ฃ๋์๊ธฐ ๋๋ฌธ์). ๊ธฐ๋ค๋ฆฌ๋ค
127์ ๋๋ค. ์ฐธ์กฐ ์ผ ์ ์ด ํ์์ ์๋ ์ผ. ๊ธฐ๋ค๋ฆฌ๋ค ์ ํธ๊ฐ ์์ผ๋ฉด ๋์์ฌ ๊ฒ์ ๋๋ค
ํธ๋ฉ์ด ์ค์ ๋ ํธ๋ฉ์ด ์์ ๋๊ฑฐ๋ SIGHUP, SIGINT ๋๋ SIGQUIT ์ ํธ๊ฐ ์์ ๋ ๊ฒฝ์ฐ
์์ ๋ฉ๋๋ค.
์์ ์ด ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ๊ธฐ๋ค๋ฆฌ๋ค ํ์ฌ ์คํ ์ค์ธ ๋ชจ๋ ์์ (์๋ ๊ฒฝ์ฐ)์ด
์๋ฃํ๊ณ XNUMX ์ํ๋ก ์ข ๋ฃํฉ๋๋ค. ์์ ๋ชจ๋ํฐ๋ง์ด ํ์ฑํ๋ ๊ฒฝ์ฐ ์๋ฃ
์์ ์ํ๊ฐ ์ธ์๋ฉ๋๋ค(์์ ์ด ๋ช ์์ ์ผ๋ก ์ง์ ๋ ๊ฒฝ์ฐ๋ ์๋).
์ด๋ป๊ฒ [- PV.] [name ...]
์์ด -v ์ต์ ๊ณผ ๋์ผํฉ๋๋ค ๋ช ๋ น -v, ๋ณ์นญ์ด ์ธ์๋์ง ์๋ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ
๋ณ์นญ ๋ช ๋ น์ผ๋ก. ์ ๋๋ถ์ด -v ์ต์ ๊ณผ ์์ ํ ๋์ผํฉ๋๋ค. ๋ช ๋ น -V. ์
์ด๋ ์ชฝ์ด๋ , -p ์ต์ ๋ค๋ฆ: ๊ฒ์ ๊ฒฝ๋ก๋ ๋ค์์์ ์ํฅ์ ๋ฐ์ง ์์ต๋๋ค. ์ด๋ป๊ฒํ์ง๋ง,
๊ฒ์์ ๊ฒฝ๋ก๋ก ์ ํ๋ฉ๋๋ค.
์ผ ์ ์ด
์์ ์ ์ด๋ ํ๋ก์ธ์ค ๋๋ ํ๋ก์ธ์ค์ธ ์์ ์ ๋ชจ๋ํฐ๋งํ๊ณ ์ ์ดํ๋ โโ์ ธ์ ๊ธฐ๋ฅ์ ๋ํ๋ ๋๋ค.
๋ช ๋ น ๋๋ ํ์ดํ๋ผ์ธ์ ์ํด ์์ฑ๋ ํ๋ก์ธ์ค ๊ทธ๋ฃน์ ๋๋ค. ์ต์ํ ์์ ์ถ์ ํฉ๋๋ค.
ํ์ฌ ์กด์ฌํ๋ ๋ฐฑ๊ทธ๋ผ์ด๋(์ฆ, ๋น๋๊ธฐ) ์์ ์ ์ํ ์ด๊ฒ
์ ๋ณด๋ ๋ค์์ ์ฌ์ฉํ์ฌ ํ์ํ ์ ์์ต๋๋ค. ์์ ๋ช ๋ น. ์์ ์ ์ด๊ฐ ์์ ํ ํ์ฑํ๋ ๊ฒฝ์ฐ
(์ฌ์ฉ ์ธํธ -m or ์ธํธ -o ๋ชจ๋ํฐ), ๋ํ์ ์์ ๊ฒฝ์ฐ์ ๋ง์ฐฌ๊ฐ์ง๋ก ์์ ํ๋ก์ธ์ค
์์ฒด ํ๋ก์ธ์ค ๊ทธ๋ฃน์ ๋ฐฐ์น๋ฉ๋๋ค. suspend๋ฅผ ์ ๋ ฅํ์ฌ ํฌ๊ทธ๋ผ์ด๋ ์์ ์ ์ค์งํ ์ ์์ต๋๋ค.
ํฐ๋ฏธ๋์ ๋ฌธ์(์ผ๋ฐ์ ์ผ๋ก ^Z), ์์ ์ ํฌ๊ทธ๋ผ์ด๋ ๋๋
๋ฅผ ์ฌ์ฉํ ๋ฐฐ๊ฒฝ fg ๊ณผ bg ๋ช ๋ น ๋ฐ ํฐ๋ฏธ๋ ์ํ๊ฐ ์ ์ฅ๋๊ฑฐ๋ ๋ณต์๋ฉ๋๋ค.
ํฌ๊ทธ๋ผ์ด๋ ์์ ์ด ์ค์ง๋๊ฑฐ๋ ๋ค์ ์์๋ ๋ ๊ฐ๊ฐ.
ํ๋ก์ธ์ค๋ฅผ ์์ฑํ๋ ๋ช ๋ น(์: ๋น๋๊ธฐ ๋ช ๋ น, ์๋ธ์)๋ง
๋ช ๋ น ๋ฐ ๋น๋ด์ฅ, ๋น๊ธฐ๋ฅ ๋ช ๋ น)์ ์ค์งํ ์ ์์ต๋๋ค. ๋ค์๊ณผ ๊ฐ์ ๋ช ๋ น ์ฝ๊ธฐ
์๋ค.
์์ ์ด ์์ฑ๋๋ฉด ์์ ๋ฒํธ๊ฐ ํ ๋น๋ฉ๋๋ค. ๋ํํ ์์ ๊ฒฝ์ฐ ์ด ์ซ์๋
"[..]" ์์ ์ธ์๋๊ณ ๊ทธ ๋ค์ ์์ ์ ์๋ ํ๋ก์ธ์ค์ ํ๋ก์ธ์ค ID๊ฐ ํ์๋ฉ๋๋ค.
๋น๋๊ธฐ ๋ช ๋ น์ด ์คํ๋ฉ๋๋ค. ์์ ์ ๋ค์์์ ์ฐธ์กฐํ ์ ์์ต๋๋ค. bg, fg, ์์ , ์ฃฝ์ด๊ธฐ๋ฐ ๊ธฐ๋ค๋ฆฌ๋ค
๋ช ๋ น ํ์ดํ๋ผ์ธ์ ์๋ ๋ง์ง๋ง ํ๋ก์ธ์ค์ ํ๋ก์ธ์ค ID(
์ ์, $! ๋งค๊ฐ๋ณ์) ๋๋ ์์ ๋ฒํธ ์์ ํผ์ผํธ ๊ธฐํธ('%')๋ฅผ ๋ถ์ ๋๋ค. ๊ธฐํ ๋น์จ
์ํ์ค๋ ์์ ์ ์ฐธ์กฐํ๋ ๋ฐ ์ฌ์ฉํ ์๋ ์์ต๋๋ค.
%+ | %% | % ๊ฐ์ฅ ์ต๊ทผ์ ์ค์ง๋ ์์ ๋๋ ์ค์ง๋ ์์ ์ด ์์ผ๋ฉด ๊ฐ์ฅ ์ค๋๋ ์์
์์ ์ ์คํํฉ๋๋ค.
%- ๋ ์ง์ %+ ํ์๊ฐ ์กด์ฌํ์ง ์๋ ๊ฒฝ์ฐ ์์ .
%n ์์ ๋ฒํธ๊ฐ ์๋ ์์ n.
%?ํ ๋ฌธ์์ด์ ํฌํจํ๋ ๋ช ๋ น์ด ์๋ ์์ ํ (์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด
์ฌ๋ฌ ์์ ์ด ์ผ์นํฉ๋๋ค).
%ํ ๋ฌธ์์ด๋ก ์์ํ๋ ๋ช ๋ น์ด ์๋ ์์ ํ (์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด
์ฌ๋ฌ ์์ ์ด ์ผ์นํฉ๋๋ค).
์์ ์ํ๊ฐ ๋ณ๊ฒฝ๋๋ฉด(์: ๋ฐฑ๊ทธ๋ผ์ด๋ ์์ ์ด ์๋ฃ๋๊ฑฐ๋ ํฌ๊ทธ๋ผ์ด๋ ์์ ์ด ์ค์ง๋จ)
์์ ๋ค์ ์ํ ์ ๋ณด๋ฅผ ์ธ์ํฉ๋๋ค.
[๋ฒํธ] ํ๋๊ทธ ์ง์ ๋ช ๋ น
์ด๋...
๋ฒํธ ์์ ์ ์์ ๋ฒํธ์ ๋๋ค.
ํ๋๊ทธ ์์ ์ด '+' ๋๋ '-' ๋ฌธ์์ธ ๊ฒฝ์ฐ %+ or %- ๊ฐ๊ฐ ์ง์ ๋๋ ๊ณต๊ฐ
๋ ๋ค ์๋ ๊ฒฝ์ฐ;
์ง์ ์์ ์ ํ์ฌ ์ํ๋ฅผ ๋ํ๋ด๋ฉฐ ๋ค์๊ณผ ๊ฐ์ ์ ์์ต๋๋ค.
์๋ฃ [๋ฒํธ]
์์ ์ด ์ข ๋ฃ๋์์ต๋๋ค. ๋ฒํธ ์๋ต๋ ์์ ์ ์ข ๋ฃ ์ํ์ ๋๋ค.
์ํ๊ฐ XNUMX์ธ ๊ฒฝ์ฐ.
Running ์์ ์ด ์ค์ง๋๊ฑฐ๋ ์ข ๋ฃ๋์ง ์์์ต๋๋ค.
๋ฐ๋์ CPU ์๊ฐ ์๋น๋ฅผ ์๋ฏธํฉ๋๋ค. ํ๋ก์ธ์ค๊ฐ ์ฐจ๋จ๋ ์ ์์ต๋๋ค.
์ด๋ค ์ด๋ฒคํธ๋ฅผ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค).
์ค์ง๋จ [์ ํธ]
ํ์๋ ์๊ฐ์ ์์ ์ด ์ค์ง๋์์ต๋๋ค. ์ ํธ (์ ํธ๊ฐ ์ฃผ์ด์ง์ง ์์ผ๋ฉด
์์ ์ด SIGTSTP์ ์ํด ์ค์ง๋จ).
์ ํธ ์ค๋ช ["์ฝ์ด ๋คํ"]
์์ ์ด ์ ํธ(์: ๋ฉ๋ชจ๋ฆฌ ์ค๋ฅ, ๋๊น)์ ์ํด ์ข ๋ฃ๋์์ต๋๋ค. ์ฌ์ฉ ์ฃฝ์ด๊ธฐ -l
์ ํธ ์ค๋ช ๋ชฉ๋ก. "core dumped" ๋ฉ์์ง๋ ๋ค์์ ๋ํ๋ ๋๋ค.
ํ๋ก์ธ์ค๊ฐ ์ฝ์ด ํ์ผ์ ์์ฑํ์ต๋๋ค.
๋ช ๋ น ํ๋ก์ธ์ค๋ฅผ ๋ง๋ ๋ช ๋ น์ ๋๋ค. ํ๋ก์ธ์ค์ ์ฌ๋ฌ ํ๋ก์ธ์ค๊ฐ ์๋ ๊ฒฝ์ฐ
์์ , ๊ฐ ํ๋ก์ธ์ค์๋ ์์ ์ ์์ ์ ๋ณด์ฌ์ฃผ๋ ๋ผ์ธ์ด ์์ต๋๋ค. ๋ช ๋ น ๊ทธ๋ฆฌ๊ณ ์๋ง๋ ๊ทธ๊ฒ์ ์ง์๋ง์ฝ
์ด์ ํ๋ก์ธ์ค์ ์ํ์ ๋ค๋ฆ ๋๋ค.
์ค์ง๋ ์ํ์ ์์ ์ด ์๋ ๋์ ์ ธ์ ์ข ๋ฃํ๋ ค๊ณ ํ๋ฉด
shell์ ์ค์ง๋ ์์ ์ด ์์์ ์ฌ์ฉ์์๊ฒ ๊ฒฝ๊ณ ํ๊ณ ์ข ๋ฃํ์ง ์์ต๋๋ค. ๋ ๋ค๋ฅธ ์๋๋ผ๋ฉด
์ฆ์ ์ ธ์ ์ข ๋ฃํ๋ฉด ์ค์ง๋ ์์ ์ SIGHUP ์ ํธ๊ฐ ์ ์ก๋๊ณ ์ ธ์ด
์ข ๋ฃํฉ๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก, ์๋ผ ์ต์ ์ด ์ค์ ๋์ง ์์์ผ๋ฉฐ ์๋ํ ๋ ์คํ ์ค์ธ ์์ ์ด ์์ต๋๋ค.
๋ก๊ทธ์ธ ์์ ์ข ๋ฃํ๋๋ก ๋ง๋ค์ด์ง๋ฉด ์์ ์ฌ์ฉ์์๊ฒ ๊ฒฝ๊ณ ํ๊ณ ์ข ๋ฃํ์ง ์์ต๋๋ค. ๋ค๋ฅธ ๊ฒฝ์ฐ
์ฆ์ ์ ์ข ๋ฃ๋ฅผ ์๋ํ๋ฉด ์คํ ์ค์ธ ์์ ์ SIGHUP ์ ํธ๊ฐ ์ ์ก๋๊ณ
์์ด ์ข ๋ฃ๋ฉ๋๋ค.
POSIX ๋ชจ๋
์ ๋ ฅ ์ธํธ -o POSIX ๋ชจ๋๋ ์์ธ์ด ๋ฉ๋๋ค mksh ์ฅ์์์ ๋ ๋ง์ POSIX ํธํ ๋์
๊ธฐ๋ณธ๊ฐ ๋๋ ์๊ฒฌ์ด ๋ค๋ฅธ ๊ฒฝ์ฐ. ์ฐธ๊ณ mksh ์๋ช ๋์ง ์์ ์ํ๋ก ๊ณ์ ์๋ํฉ๋๋ค.
32๋นํธ ์ฐ์ ; ์ฌ์ฉ lksh ํธ์คํธ์์ ์ฐ์ ์ฐ์ฐ์ ์ํํ๋ ๊ฒฝ์ฐ ๊ธด ๋ฐ์ดํฐ ์ ํ, ISO C๋ก ์๋ฃ
์ ์๋์ง ์์ ๋์์ด ํ์ํฉ๋๋ค. ์ฐธ์กฐ lksh(1) ์์ธํ ๋ด์ฉ์ ๋งค๋ด์ผ ํ์ด์ง. ๋๋ถ๋ถ์ ๋ค๋ฅธ
์ญ์ฌ์ , AT&T UNIX KSH- ํธํ ๊ฐ๋ฅํ๊ฑฐ๋ ๋ ๋จ์ ์ธ ์ฐจ์ด๋ ์ด๊ฒ์ ์ฌ์ฉํ์ฌ ๋นํ์ฑํํ ์ ์์ต๋๋ค.
๋ฐฉ๋ฒ; ์ด๊ฒ๋ค์:
ยท GNU ์ธ๊ฒ ๋๋ฆฌ๋ค I / O ๋ฆฌ๋๋ ์ &>ํ์ผ ๋ ์ด์ ์ง์๋์ง ์์ต๋๋ค.
ยท I/O ๋ฆฌ๋๋ ์ ์ ์ํด ์์ฑ๋ ํ์ผ ์ค๋ช ์๋ ์์ ํ๋ก์ธ์ค์ ์ํด ์์๋ฉ๋๋ค.
ยท ์ ํ ์ซ์ XNUMX์ด ์๋ ์ซ์๋ XNUMX์ง์๋ก ํด์๋ฉ๋๋ค.
ยท XNUMXD๋ดํ์ ์์ฝ builtin์ ๋ฐฑ์ฌ๋์๋ฅผ ํด์ํ์ง ์์ผ๋ฉฐ ์ ํํ ์ต์ "-n".
ยท ... (๋ชฉ๋ก์ด ๋ถ์์ ํ๋ฉฐ R53์ ๊ฒฝ์ฐ ๋ณ๊ฒฝ๋ ์ ์์)
SH ๋ชจ๋
ํธํ ๋ชจ๋; ์ฝ๊ฒ ๊ณ ์น ์ ์๋ ๋ ๊ฑฐ์ ์คํฌ๋ฆฝํธ์ ํจ๊ป ์ฌ์ฉํ๊ธฐ ์ํ ๊ฒ์ ๋๋ค. ๊ทธ๋งํผ
๋ณ๊ฒฝ ์ฌํญ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ยท GNU ์ธ๊ฒ ๋๋ฆฌ๋ค I / O ๋ฆฌ๋๋ ์ &>ํ์ผ ๋ ์ด์ ์ง์๋์ง ์์ต๋๋ค.
ยท I/O ๋ฆฌ๋๋ ์ ์ ์ํด ์์ฑ๋ ํ์ผ ์ค๋ช ์๋ ์์ ํ๋ก์ธ์ค์ ์ํด ์์๋ฉ๋๋ค.
ยท XNUMXD๋ดํ์ ์์ฝ builtin์ ๋ฐฑ์ฌ๋์๋ฅผ ํด์ํ์ง ์์ผ๋ฉฐ ์ ํํ ์ต์ "-n".
ยท ... (๋ชฉ๋ก์ด ๋ถ์์ ํ๋ฉฐ R53์ ๊ฒฝ์ฐ ๋ณ๊ฒฝ๋ ์ ์์)
๋ํ ํ ์ ๋ ฅ ์ ํธ์ง
์ ธ์ ๋ค์์์ ๋ช ๋ น์ค์ ์ฝ๋ ์ธ ๊ฐ์ง ๋ชจ๋๋ฅผ ์ง์ํฉ๋๋ค. ์ฒญ๊ฐ ์ฅ์ (4) ์ธํฐ๋ํฐ๋ธ
์ ์ํด ์ ์ด๋๋ ์ธ์ ์ด๋งฅ์ค, gmacs๋ฐ vi ์ต์ (์ด๋ค ์ค ์ต๋ ํ๋๋
ํ ๋ฒ). ๊ธฐ๋ณธ๊ฐ์ ์ด๋งฅ์ค. ํธ์ง ๋ชจ๋๋ ๋ค์์ ์ฌ์ฉํ์ฌ ๋ช ์์ ์ผ๋ก ์ค์ ํ ์ ์์ต๋๋ค. ์ธํธ ๋ด์ฅํ๋ค.
์ด๋ฌํ ์ต์ ์ค ์ด๋ ๊ฒ๋ ํ์ฑํ๋์ง ์์ ๊ฒฝ์ฐ ์ ธ์ ๋จ์ํ ์ผ๋ฐ ์ฒญ๊ฐ ์ฅ์ (4)
์ด์ ์ฌ. ๋ง์ฝ ์ด๋งฅ์ค or gmacs ์ต์ ์ด ์ค์ ๋๋ฉด ์ ธ์์ emacs์ ๊ฐ์ ํธ์ง์ ํ์ฉํฉ๋๋ค.
๋ช ๋ น; ๋ง์ฐฌ๊ฐ์ง๋ก, ๋ง์ฝ vi ์ต์ ์ด ์ค์ ๋๋ฉด ์์ vi์ ๊ฐ์ ํธ์ง์ ํ์ฉํฉ๋๋ค.
๋ช ๋ น. ์ด๋ฌํ ๋ชจ๋๋ ๋ค์ ์น์ ์์ ์์ธํ ์ค๋ช ํฉ๋๋ค.
์ด๋ฌํ ํธ์ง ๋ชจ๋์์ ๋ผ์ธ์ด ํ๋ฉด ๋๋น๋ณด๋ค ๊ธด ๊ฒฝ์ฐ(COLUMNS ์ฐธ์กฐ)
๋งค๊ฐ๋ณ์), '>', '+' ๋๋ '<' ๋ฌธ์๋ ๋ค์์ ๋ํ๋ด๋ ๋ง์ง๋ง ์ด์ ํ์๋ฉ๋๋ค.
ํ์ฌ ์์น ๋ค, ์, ๋ค ๋๋ ์์ ๋ ๋ง์ ๋ฌธ์๊ฐ ์์ต๋๋ค.
๊ฐ๊ธฐ. ๋ผ์ธ์ ํ์์ ๋ฐ๋ผ ๊ฐ๋ก๋ก ์คํฌ๋กค๋ฉ๋๋ค.
์๋ฃ๋ ๋ผ์ธ์ IFS ์ฅํ ๋๋ IFS๋ก ์์ํ์ง ์๋ ํ ํ์คํ ๋ฆฌ์ ํธ์๋ฉ๋๋ค.
๊ณต๋ฐฑ์ด๊ฑฐ๋ ์ด์ ํ๊ณผ ๋์ผํฉ๋๋ค.
์ด๋งฅ์ค ํธ์ง ๋ชจ๋
๋ ์ด๋งฅ์ค ์ต์ ์ด ์ค์ ๋์ด ์์ผ๋ฉด ๋ํํ ์ ๋ ฅ ์ค ํธ์ง์ด ํ์ฑํ๋ฉ๋๋ค. ๊ฒฝ๊ณ : ์ด ๋ชจ๋
์๋ Korn ์ ธ์ emacs ๋ชจ๋์ ์ฝ๊ฐ ๋ค๋ฆ ๋๋ค. ์ด ๋ชจ๋์์๋ ๋ค์ํ
ํธ์ง ๋ช ๋ น(์ผ๋ฐ์ ์ผ๋ก ํ๋ ์ด์์ ์ ์ด ๋ฌธ์์ ๋ฐ์ธ๋ฉ๋จ)์ ์ฆ๊ฐ์ ์ธ ์กฐ์น๋ฅผ ์ ๋ฐํฉ๋๋ค.
๊ฐํ์ ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ . ์ฌ๋ฌ ํธ์ง ๋ช ๋ น์ด ํน์ ์ปจํธ๋กค์ ๋ฐ์ธ๋ฉ๋จ
์์ด ํธ์ถ๋ ๋์ ๋ฌธ์; ์ด๋ฌํ ๋ฐ์ธ๋ฉ์ ๋ค์์ ์ฌ์ฉํ์ฌ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ๋ฐ์ธ๋ฉ ๋ช ๋ น.
๋ค์์ ์ฌ์ฉ ๊ฐ๋ฅํ ํธ์ง ๋ช ๋ น ๋ชฉ๋ก์ ๋๋ค. ๊ฐ ์ค๋ช ์
์ฝ๋ก ์ด ๋ถ์ ๋ช ๋ น ์ด๋ฆ; [n] (๋ช ๋ น ์์
์ธ๋ค); ๋ฐ ์บ๋ฟ ํ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ ์์ฑ๋ ๋ช ๋ น์ด ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฐ์ธ๋ฉ๋ ๋ชจ๋ ํค ์:
ASCII ESC ๋ฌธ์๋ ^[๋ก ์์ฑ๋ฉ๋๋ค. ์ด๋ฌํ ์ ์ด ์ํ์ค๋ ๋/์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์์ต๋๋ค.
๋ช ๋ น์ ๋ํ ์นด์ดํธ ์ ๋์ฌ๋ ^[ ์ํ์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ ๋ ฅ๋ฉ๋๋ค.n์ด๋๋ก n 1์ ์ํ์ค์ ๋๋ค
๋๋ ๋ ๋ง์ ์๋ฆฟ์. ๋ณ๋๋ก ์ง์ ํ์ง ์๋ ํ ๊ฐ์๋ฅผ ์๋ตํ๋ฉด ๊ธฐ๋ณธ๊ฐ์ 1์ ๋๋ค.
ํธ์ง ๋ช ๋ น ์ด๋ฆ์ ๋ฐ์ธ๋ฉ ๋ช ๋ น. ๊ฒ๋ค๊ฐ, ๋ง์
ํธ์ง ๋ช ๋ น์ ์ปค์๊ฐ ๋ณด์ด๋ ํฐ๋ฏธ๋์์๋ง ์ ์ฉํฉ๋๋ค. ๊ธฐ๋ณธ ๋ฐ์ธ๋ฉ
ํด๋น Emacs ํค ๋ฐ์ธ๋ฉ๊ณผ ์ ์ฌํ๋๋ก ์ ํ๋์์ต๋๋ค. ์ฌ์ฉ์์ ์ฒญ๊ฐ ์ฅ์ (4) ๋ฌธ์
(์: ERASE)๋ ํฉ๋นํ ๋์ฒด ํญ๋ชฉ์ ๋ฐ์ธ๋ฉ๋๋ฉฐ ๊ธฐ๋ณธ ๋ฐ์ธ๋ฉ์ ์ฌ์ ์ํฉ๋๋ค.
์ค๋จ: ^C, ^G
ํ์ฌ ๋ช ๋ น์ ์ค๋จํ๊ณ ๋ผ์ธ ๋ฒํผ๋ฅผ ๋น์ฐ๊ณ ์ข ๋ฃ ์ํ๋ฅผ
์ค๋จ๋์์ต๋๋ค.
์๋ ์ฝ์ : [n]
๋จ์ํ ๋ฌธ์๊ฐ ๋ฆฌํฐ๋ด ์ ๋ ฅ์ผ๋ก ๋ํ๋๋๋ก ํฉ๋๋ค. ๋๋ถ๋ถ์ ํ๋ฒํ ์บ๋ฆญํฐ
์ด์ ๊ฒฐ์๋์ด ์์ต๋๋ค.
์ญ๋ฐฉํฅ ๋ฌธ์: [n] ^B, ^XD, ANSI-CurLeft, PC-CurLeft
์ปค์๋ฅผ ๋ค๋ก ์ด๋ํฉ๋๋ค. n ์.
์ญ๋ฐฉํฅ ๋จ์ด: [n] ^[b, ANSI-Ctrl-CurLeft, ANSI-Alt-CurLeft
์ปค์๋ฅผ ๋จ์ด์ ์ฒ์์ผ๋ก ๋ค๋ก ์ด๋ํฉ๋๋ค. ๋จ์ด๋ก ๊ตฌ์ฑ
์์ซ์, ๋ฐ์ค('_') ๋ฐ ๋ฌ๋ฌ ๊ธฐํธ('$') ๋ฌธ์.
์ญ์ฌ์ ์์: ^[
๊ธฐ๋ก์ ์์ ๋ถ๋ถ์ผ๋ก ์ด๋ํฉ๋๋ค.
๋ผ์ธ ์์: ^A, ANSI-Home, PC-Home
ํธ์ง๋ ์ ๋ ฅ ๋ผ์ธ์ ์์ ๋ถ๋ถ์ผ๋ก ์ปค์๋ฅผ ์ด๋ํฉ๋๋ค.
๋๋ฌธ์ ๋จ์ด: [n] ^[C, ^[C
๋ค์์ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ฅผ ๋๋ฌธ์๋ก n ๋จ์ด, ์ปค์๊ฐ ๋์ ์ง๋์ ๋จ์
๋ง์ง๋ง ๋จ์ด์.
ํ๋ฉด ์ง์ฐ๊ธฐ: ^[^L
์ปดํ์ผ ํ์ ๊ตฌ์ฑ ๊ฐ๋ฅ ์ํ์ค๋ฅผ ์ธ์ํ์ฌ ํ๋ฉด์ ์ง์ฐ๊ณ ์ปค์๋ฅผ ํ์ผ๋ก ๊ฐ์ ธ์ต๋๋ค.
์ ์ฒด ํ๋กฌํํธ์ ํ์ฌ ํธ์ง๋ ์ ๋ ฅ ์ค์ ๋ค์ ๊ทธ๋ฆฝ๋๋ค. ๊ธฐ๋ณธ ์ํ์ค
๊ฑฐ์ ๋ชจ๋ ํ์ค ํฐ๋ฏธ๋์์ ์๋ํฉ๋๋ค.
๋๊ธ: ^[#
ํ์ฌ ์ค์ด ์ฃผ์ ๋ฌธ์๋ก ์์ํ์ง ์์ผ๋ฉด ๋งจ ์์ ์ถ๊ฐ๋ฉ๋๋ค.
ํ์ ์์๊ณผ ํ์ด ์ ๋ ฅ๋ฉ๋๋ค(๋ฆฌํด์ ๋๋ฅธ ๊ฒ์ฒ๋ผ).
๊ทธ๋ ์ง ์์ผ๋ฉด ๊ธฐ์กด ์ฃผ์ ๋ฌธ์๊ฐ ์ ๊ฑฐ๋๊ณ ์ปค์๊ฐ
๋ผ์ธ์ ์์.
์๋ฃ: ^[^[
๋ช ๋ น์ด ์ด๋ฆ์ด๋ ํ์ผ ์ด๋ฆ์ด ๊ณ ์ ํ ๋งํผ ์๋ ์์ฑ
์ปค์๋ฅผ ํฌํจํฉ๋๋ค. ๋๋จธ์ง ์ ์ฒด ๋ช ๋ น ๋๋ ํ์ผ ์ด๋ฆ์ด ๊ณ ์ ํ ๊ฒฝ์ฐ
๊ณต๋ฐฑ์ ๋๋ ํ ๋ฆฌ ์ด๋ฆ์ด ์๋ ๊ฒฝ์ฐ ์๋ฃ ํ ์ธ์๋ฉ๋๋ค.
'/'๊ฐ ์ถ๊ฐ๋ฉ๋๋ค. ํ์ฌ ๋ถ๋ถ ๋จ์ด๊ฐ ํฌํจ๋ ๋ช ๋ น ๋๋ ํ์ผ ์ด๋ฆ์ด ์๋ ๊ฒฝ์ฐ
์ ๋์ฌ๋ก ๋ฒจ ๋ฌธ์๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค(์ผ๋ฐ์ ์ผ๋ก ๊ฒฝ๊ณ ์์ด ์ธ๋ฆผ).
์์ ํ ๋ช ๋ น: ^X^[
๋ถ๋ถ์ด ์๋ ๋ช ๋ น ์ด๋ฆ์ ๊ณ ์ ํ ๋งํผ ์๋ ์์ฑ
์์์ ๊ฐ์ด ์ ๋์ฌ๋ก ์ปค์๊น์ง ๋จ์ด ์์ ํ ์์ ๋ช ๋ น.
์ ์ฒด ํ์ผ: ^[^X
๋ถ๋ถ์ด ์๋ ํ์ผ ์ด๋ฆ์ ๊ณ ์ ํ ๋งํผ ์๋ ์์ฑ
์์์ ๊ฐ์ด ์ ๋์ฌ๋ก ์ปค์๊น์ง ๋จ์ด ์์ ํ ์์์ ์ค๋ช ํ ๋ช ๋ น.
์ ์ฒด ๋ชฉ๋ก: ^I, ^[=
ํ์ฌ ๋จ์ด๋ฅผ ๊ฐ๋ฅํ ํ ๋ง์ด ์์ฑํ๊ณ ๊ฐ๋ฅํ ๋จ์ด๋ฅผ ๋์ดํ์ญ์์ค.
๊ทธ๊ฒ์ ์ํ ์์ฑ. ์๋ฃ๊ฐ ํ๋๋ง ๊ฐ๋ฅํ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ด ์ผ์นํฉ๋๋ค. ์์ ํ
์์ ๋ช ๋ น. ^I๋ ์ผ๋ฐ์ ์ผ๋ก TAB(tabulator) ํค์ ์ํด ์์ฑ๋ฉ๋๋ค.
์ญ์ -๋ฌธ์-๋ค๋ก: [n] ์ง์ฐ๊ธฐ, ^?, ^H
์ญ์ n ์ปค์ ์์ ๋ฌธ์.
์ญ์ ๋ฌธ์ ์ ๋ฌ: [n] ANSI-Del, PC-Del
์ญ์ n ์ปค์ ๋ค์ ๋ฌธ์.
์ญ์ -๋จ์ด-๋ค๋ก: [n] ์ญ์ , ^[^?, ^[^H, ^[h
์ญ์ n ์ปค์ ์์ ๋จ์ด.
์ญ์ ๋จ์ด ์ ๋ฌ: [n] ^[๋
์ปค์ ๋ค์ ๋ฌธ์๋ฅผ ๋๊น์ง ์ญ์ ํฉ๋๋ค. n ๋จ์ด.
๋ค์ด ํ์คํ ๋ฆฌ: [n] ^N, ^XB, ANSI-CurDown, PC-CurDown
ํ์คํ ๋ฆฌ ๋ฒํผ๋ฅผ ์์ผ๋ก ์คํฌ๋กคํฉ๋๋ค. n ๋ผ์ธ(๋์ค์). ๊ฐ ์ ๋ ฅ ๋ผ์ธ์ ์๋
ํ์คํ ๋ฆฌ ๋ฒํผ์ ๋ง์ง๋ง ํญ๋ชฉ ์งํ์ ์์ํ๋ฏ๋ก ๋ค์ด ํ์คํ ๋ฆฌ ํ์ง ์์ต๋๋ค
๋ค์ ์ค ํ๋๊น์ง ์ ์ฉ ๊ฒ์ ๊ธฐ๋ก, ๊ฒ์ ๊ธฐ๋ก ์ or ์ ํ์คํ ๋ฆฌ ์๋ค
์ํ.
์๋ฌธ์-๋จ์ด: [n] ^[์, ^[์
๋ค์ ์๋ฌธ์ n ๋จ์ด.
ํธ์ง ๋ผ์ธ: [n] ^์
๋ผ์ธ ํธ์ง n ๋๋ ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ํ์ฌ ์ค์ ๋ํ์์ผ๋ก ํ์ํฉ๋๋ค. ์ค์
์คํ๋ ๋ช ๋ น์ fc -e ${์๊ฐ์ :-${ํธ์ง์:-vi}} n.
์ญ์ฌ์ ๋: ^[>
๊ธฐ๋ก์ ๋์ผ๋ก ์ด๋ํฉ๋๋ค.
๋ผ์ธ ๋: ^E, ANSI-End, PC-End
์ปค์๋ฅผ ์ ๋ ฅ ์ค์ ๋์ผ๋ก ์ด๋ํฉ๋๋ค.
์: ^_
ํ์ผ ๋์ผ๋ก ์๋ํฉ๋๋ค. ์ด๊ฒ์ ํธ์ง ๋ชจ๋ ์ ๋ ฅ์ด ์ผ๋ฐ์ ๋นํ์ฑํํ๊ธฐ ๋๋ฌธ์ ์ ์ฉํฉ๋๋ค.
ํฐ๋ฏธ๋ ์ ๋ ฅ ์ ๊ทํ.
์ญ์ ๋๋ ์ญ์ : [n] ^D
์ฒ๋ผ ์ฐ๊ธฐํ๋ค ์ดํธ ๋ผ์ธ์ ํผ์ ์๋ ๊ฒฝ์ฐ; ๊ทธ๋ ์ง ์์ผ๋ฉด ์ญ์ ๋ฌธ์ ์ ๋ฌ.
์ค๋ฅ: (์ฐ๊ฒฐ๋์ง ์์)
์ค๋ฅ์ ๋๋ค(์ข ์ ์ธ๋ ค์ฃผ์ธ์).
ํฌ์ธํธ์ ๋งํฌ ๊ตํ: ^X^X
ํ์๊ฐ ์๋ ๊ณณ์ ์ปค์๋ฅผ ๋๊ณ ์ปค์๊ฐ ์๋ ์์น์ ํ์๋ฅผ ์ค์ ํฉ๋๋ค.
ํ์ฅ ํ์ผ: ^[*
ํ์ฌ ๋จ์ด์ '*'๋ฅผ ์ถ๊ฐํ๊ณ ๋จ์ด๋ฅผ ๋ค์์ ๊ฒฐ๊ณผ๋ก ๋ฐ๊ฟ๋๋ค.
๋จ์ด์ ๋ํด ํ์ผ ๊ธ๋ก๋น์ ์ํํฉ๋๋ค. ํจํด๊ณผ ์ผ์นํ๋ ํ์ผ์ด ์์ผ๋ฉด ๋ฒจ์ด ์ธ๋ฆฝ๋๋ค.
๊ฐ๋ก์ฅ.
์ ๋ฐฉํฅ ๋ฌธ์: [n] ^F, ^XC, ANSI-CurRight, PC-CurRight
์ปค์๋ฅผ ์์ผ๋ก ์ด๋ํฉ๋๋ค. n ์.
์์ผ๋ก ๋จ์ด: [n] ^[f, ANSI-Ctrl-CurRight, ANSI-Alt-CurRight
์ปค์๋ฅผ ๋ ๋ถ๋ถ์ผ๋ก ์์ผ๋ก ์ด๋ํฉ๋๋ค. n์ผ.
๊ณ ํ ํ์คํ ๋ฆฌ : [n] ^[์ง
์ญ์ฌ ๋ฒํธ๋ก ์ด๋ n.
ํฌ๋ผ์ธ: KILL
์ ์ฒด ์ ๋ ฅ ๋ผ์ธ์ ์ญ์ ํฉ๋๋ค.
ํฌ-์์ญ: ^W
์ปค์์ ๋งํฌ ์ฌ์ด์ ์ ๋ ฅ์ ์ญ์ ํฉ๋๋ค.
ํฌํฌ์ผ: [n] ^K
๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์ปค์์์ ์ค ๋๊น์ง ์ ๋ ฅ์ ์ญ์ ํฉ๋๋ค. n ์ง์ ๋์ง ์์์ต๋๋ค.
๊ทธ๋ ์ง ์์ผ๋ฉด ์ปค์์ ์ด ์ฌ์ด์ ๋ฌธ์๋ฅผ ์ญ์ ํฉ๋๋ค. n.
๋ชฉ๋ก: ^[?
๋ช ๋ น ์ด๋ฆ ๋๋ ํ์ผ ์ด๋ฆ(์๋ ๊ฒฝ์ฐ)์ ์ ๋ ฌ๋ ์ด ๋ชฉ๋ก์ ์ธ์ํฉ๋๋ค.
์ปค์๊ฐ ํฌํจ๋ ๋ถ๋ถ ๋จ์ด๋ฅผ ์์ฑํฉ๋๋ค. ๋๋ ํ ๋ฆฌ ์ด๋ฆ์ '/'๊ฐ ์ถ๊ฐ๋จ
๊ทธ๋ค์๊ฒ.
๋ชฉ๋ก ๋ช ๋ น: ^X?
๋ช ๋ น ์ด๋ฆ(์๋ ๊ฒฝ์ฐ)์ ์ ๋ ฌ๋ ์ด ๋ชฉ๋ก์ ์ธ์ํฉ๋๋ค.
์ปค์๋ฅผ ํฌํจํ๋ ๋ถ๋ถ ๋จ์ด.
๋ชฉ๋ก ํ์ผ: ^X^Y
ํ์ผ ์ด๋ฆ์ ์ ๋ ฌ๋ ์ด ๋ชฉ๋ก(์๋ ๊ฒฝ์ฐ)์ ์ธ์ํฉ๋๋ค.
์ปค์๋ฅผ ํฌํจํ๋ ๋ถ๋ถ ๋จ์ด. ์ค๋ช ๋ ๋๋ก ํ์ผ ์ ํ ํ์๊ธฐ๊ฐ ์ถ๊ฐ๋ฉ๋๋ค.
์๋์ ๋ช ๋ถ ์.
๊ฐํ: ^J, ^M
ํ์ฌ ์ ๋ ฅ ํ์ด ์์ ์ํด ์ฒ๋ฆฌ๋๋๋ก ํฉ๋๋ค. ํ์ฌ ์ปค์
์์น๋ ๋ผ์ธ์ ์ด๋ ์์น์๋ ์์ ์ ์์ต๋๋ค.
๊ฐํ ๋ฐ ๋ค์: ^O
ํ์ฌ ์ ๋ ฅ ๋ผ์ธ์ด ์์ ์ํด ์ฒ๋ฆฌ๋๊ณ ๋ค์ ๋ผ์ธ์ด
ํ์คํ ๋ฆฌ๊ฐ ํ์ฌ ํ์ด ๋ฉ๋๋ค. ์ด๊ฒ์ ๋ค์์๋ง ์ ์ฉํฉ๋๋ค. ์ ํ์คํ ๋ฆฌ,
๊ฒ์ ๊ธฐ๋ก or ๊ฒ์ ๊ธฐ๋ก ์ .
๋ฌด์๋: ์ข ๋ฃ
์ด๊ฒ์ ์๋ฌด๊ฒ๋ ํ์ง ์์ต๋๋ค.
์ ๋์ฌ-1: ^[
2๋ฌธ์ ๋ช ๋ น ์ํ์ค๋ฅผ ์๊ฐํฉ๋๋ค.
์ ๋์ฌ-2: ^X, ^[[, ^[O
2๋ฌธ์ ๋ช ๋ น ์ํ์ค๋ฅผ ์๊ฐํฉ๋๋ค.
์ด์ -ํ์คํธ-๋จ์ด: [n] ^[., ^[_
๋ง์ง๋ง ๋จ์ด, ๋๋ ์ฃผ์ด์ง ๊ฒฝ์ฐ n์ด์ ๋จ์ด(๋ฐ๋ณต ์)์ ๋ฒ์งธ ๋จ์ด(XNUMX๋ถํฐ ์์)
์คํ, ๋ง์ง๋ง ๋ ๋ฒ์งธ, ๋ง์ง๋ง ์ธ ๋ฒ์งธ ๋ฑ) ๋ช ๋ น์ด ์ปค์์ ์ฝ์ ๋ฉ๋๋ค. ์ฌ์ฉ
์ด ํธ์ง ๋ช ๋ น์ ๋งํฌ๋ฅผ ์ญ์ ํฉ๋๋ค.
์ธ์ฉ: ^^, ^V
๋ค์ ๋ฌธ์๋ ํธ์ง ๋ช ๋ น์ด ์๋ ๋ฌธ์ ๊ทธ๋๋ก ์ฌ์ฉ๋ฉ๋๋ค.
๋ค์ ๊ทธ๋ฆฌ๊ธฐ: ^L
ํ๋กฌํํธ ๋ฌธ์์ด์ ๋ง์ง๋ง ์ค๊ณผ ํ์ฌ ์ ๋ ฅ ์ค์ ์
์ค์ ๋๋ค.
๊ฒ์-๋ฌธ์-๋ค๋ก: [n] ^[^]
ํ์ฌ ์ค์์ ๋ค๋ก ๊ฒ์ํ์ฌ n๋ค์ ๋ฌธ์์ th ๋ฐ์
ํ์.
๊ฒ์-๋ฌธ์-์์ผ๋ก: [n] ^]
ํ์ฌ ์ค์์ ์์ผ๋ก ๊ฒ์ n๋ค์ ๋ฌธ์์ th ๋ฐ์
ํ์.
๊ฒ์ ๊ธฐ๋ก: ^R
์ฆ๋ถ ๊ฒ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋๋ค. ๋ด๋ถ ์ด๋ ฅ ๋ชฉ๋ก์ด ์ญ๋ฐฉํฅ์ผ๋ก ๊ฒ์๋ฉ๋๋ค.
์ ๋ ฅ๊ณผ ์ผ์นํ๋ ๋ช ๋ น. ๊ฒ์ ๋ฌธ์์ด์ ์ด๊ธฐ '^'๋
์ฐพ๋ค. Esc ํค๋ ๊ฒ์ ๋ชจ๋๋ฅผ ์ข ๋ฃํฉ๋๋ค. ์ํ์ค๋ฅผ ํฌํจํ ๊ธฐํ ๋ช ๋ น
ํ์ถ์ ์ ๋์ฌ-1 ๋ค์ ์ ๋์ฌ-1 or ์ ๋์ฌ-2 ํค๋ ๋ค์์ ์คํ๋ฉ๋๋ค.
๊ฒ์ ๋ชจ๋๋ฅผ ์ข ๋ฃํฉ๋๋ค. ๊ทธ๋งํผ ์ค๋จํ๋ค (^G) ๋ช ๋ น์ ์ด์ ์ ์ ๋ ฅ ํ์ ๋ณต์ํฉ๋๋ค.
๊ฒ์์ด ์์๋์์ต๋๋ค. ์ฐ์ ๊ฒ์ ๊ธฐ๋ก ๋ช ๋ น์ ๋ค๋ก ๊ฒ์์ ๊ณ์ํฉ๋๋ค.
ํจํด์ ๋ค์ ์ด์ ๋ฐ์. ํ์คํ ๋ฆฌ ๋ฒํผ๋
ํ์ ๋ ์์ ๋ผ์ธ; ๊ฐ์ฅ ์ค๋๋ ๊ฒ์ ํ์์ ๋ฐ๋ผ ํ๊ธฐ๋ฉ๋๋ค.
๊ฒ์ ๊ธฐ๋ก ์ : ANSI-PgUp, PC-PgUp
์์์ด ์ผ์นํ๋ ๋ช ๋ น์ ๋ํด ํ์คํ ๋ฆฌ ๋ฒํผ๋ฅผ ํตํด ๋ค๋ก ๊ฒ์ํฉ๋๋ค.
์ปค์ ์์ ์ ๋ ฅ ๋ผ์ธ ๋ถ๋ถ. ๋น ์ค์ ์ฌ์ฉํ๋ฉด
์ ๊ฐ์ ํจ๊ณผ ์ ํ์คํ ๋ฆฌ.
๊ฒ์ ๊ธฐ๋ก ๋ค์ด: ANSI-PgDn, PC-PgDn
์์์ด ์ผ์นํ๋ ๋ช ๋ น์ ๋ํด ํ์คํ ๋ฆฌ ๋ฒํผ๋ฅผ ํตํด ์์ผ๋ก ๊ฒ์ํฉ๋๋ค.
์ปค์ ์์ ์ ๋ ฅ ๋ผ์ธ ๋ถ๋ถ. ๋น ์ค์ ์ฌ์ฉํ๋ฉด
์ ๊ฐ์ ํจ๊ณผ ๋ค์ด ํ์คํ ๋ฆฌ. ์ด๊ฒ์ ๋ค์์๋ง ์ ์ฉํฉ๋๋ค. ์ ํ์คํ ๋ฆฌ,
๊ฒ์ ๊ธฐ๋ก or ๊ฒ์ ๊ธฐ๋ก ์ .
์ธํธ ๋งํฌ ๋ช ๋ น: ^[
์ปค์ ์์น์ ๋งํฌ๋ฅผ ์ค์ ํฉ๋๋ค.
์ ์น ๋ฌธ์: ^T
์ค์ ๋์ ์๋ ๊ฒฝ์ฐ ๋๋ gmacs ์ต์ ์ด ์ค์ ๋๋ฉด ๋ ๊ฐ์ด ๊ตํ๋ฉ๋๋ค.
์ด์ ๋ฌธ์; ๊ทธ๋ ์ง ์์ผ๋ฉด ์ด์ ๋ฌธ์์ ํ์ฌ ๋ฌธ์๋ฅผ ๊ตํํ๊ณ
์ปค์๋ฅผ ์ค๋ฅธ์ชฝ์ผ๋ก ํ ๋ฌธ์ ์ด๋ํฉ๋๋ค.
์ ํ์คํ ๋ฆฌ : [n] ^P, ^XA, ANSI-CurUp, PC-CurUp
ํ์คํ ๋ฆฌ ๋ฒํผ๋ฅผ ๋ค๋ก ์คํฌ๋กคํฉ๋๋ค. n ์ (์ด์ ).
๋๋ฌธ์ ๋จ์ด: [n] ^[์ , ^[์
๋ค์์ ๋๋ฌธ์๋ก n ๋จ์ด.
๋ฒ์ : ^[^V
๋ฒ์ ํ์ mksh. ํค๊ฐ ์ ๋ ฅ๋๋ ์ฆ์ ํ์ฌ ํธ์ง ๋ฒํผ๊ฐ ๋ณต์๋ฉ๋๋ค.
์ ๋๋ฆ ๋๋ค. ๋ณต์ ํค ๋๋ฅด๊ธฐ๋ ๊ณต๋ฐฑ์ด ์๋ ํ ์ฒ๋ฆฌ๋ฉ๋๋ค.
์ก์๋น๊ธฐ๊ธฐ: ^Y
ํ์ฌ ์ปค์ ์์น์ ๊ฐ์ฅ ์ต๊ทผ์ ์ฃฝ์ธ ํ ์คํธ ๋ฌธ์์ด์ ์ฝ์ ํฉ๋๋ค.
ํฑ-ํ: ^[y
์ฆ์ ์ํค, ์ฝ์ ๋ ํ ์คํธ ๋ฌธ์์ด์ ์ด์ ์ ๋ค์ ๋ฌธ์์ด๋ก ๋ฐ๊ฟ๋๋ค.
ํ ์คํธ ๋ฌธ์์ด์ ์ฃฝ์์ต๋๋ค.
Vi ํธ์ง ๋ชจ๋
์ฐธ๊ณ : vi ๋ช ๋ น์ค ํธ์ง ๋ชจ๋๋ ๊ณ ์์ด์ง๋ง ์ฌ์ ํ ์๋ํฉ๋๋ค. 8๋นํธ ํด๋ฆฐ
๊ทธ๋ฌ๋ ํนํ UTF-8 ๋๋ MBCS๋ฅผ ์ง์ํ์ง ์์ต๋๋ค.
vi ๋ช ๋ น์ค ํธ์ง๊ธฐ mksh ๊ธฐ๋ณธ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ ๋ช ๋ น์ด ์์ต๋๋ค. vi(1) ํธ์ง๊ธฐ
๋ค์ ์์ธ:
ยท ์ฝ์ ๋ชจ๋์์ ์์ํฉ๋๋ค.
ยท ํ์ผ ์ด๋ฆ ๋ฐ ๋ช ๋ น ์์ฑ ๋ช ๋ น์ด ์์ต๋๋ค: =, \, *, ^X, ^E, ^F ๋ฐ,
์ ํ์ ์ผ๋ก ๊ทธ๋ฆฌ๊ณ .
ยท XNUMXD๋ดํ์ _ ๋ช ๋ น์ด ๋ค๋ฆ ๋๋ค(์์ mksh, ๋ง์ง๋ง ์ธ์ ๋ช ๋ น์ ๋๋ค. ~์ vi(1) ๊ฐ๋ค
ํ์ฌ ์ค์ ์์ ๋ถ๋ถ์ผ๋ก).
ยท XNUMXD๋ดํ์ / ๊ณผ G ๋ช ๋ น์ ๋ฐ๋ ๋ฐฉํฅ์ผ๋ก ์ด๋ํฉ๋๋ค. j ๋ช ๋ น.
ยท ํ ์ค ํธ์ง๊ธฐ์์ ์๋ฏธ๊ฐ ์๋ ๋ช ๋ น์ ์ฌ์ฉํ ์ ์์ต๋๋ค(์: screen
์ด๋ ๋ช ๋ น ๋ฐ ex(1) ์คํ์ผ ์ฝ๋ก (:) ๋ช ๋ น).
์ฒ๋ผ vi(1) "์ฝ์ " ๋ชจ๋์ "๋ช ๋ น" ๋ชจ๋์ ๋ ๊ฐ์ง ๋ชจ๋๊ฐ ์์ต๋๋ค. ์ฝ์ ๋ชจ๋์์ ๋๋ถ๋ถ
๋ฌธ์๋ ์ ๋ ฅ๋ ๋ ํ์ฌ ์ปค์ ์์น์ ๋ฒํผ์ ๋ฃ๊ธฐ๋ง ํ๋ฉด ๋ฉ๋๋ค.
๊ทธ๋ฌ๋ ์ผ๋ถ ๋ฌธ์๋ ํน๋ณํ๊ฒ ์ทจ๊ธ๋ฉ๋๋ค. ํนํ ๋ค์ ๋ฌธ์๋
ํ์ฌ์์ ๊ฐ์ ธ์จ ์ฒญ๊ฐ ์ฅ์ (4) ์ค์ (์ฐธ์กฐ ์คํฐ(1)) ๋ฐ ์ผ๋ฐ์ ์ธ ์๋ฏธ(์ ์ ๊ฐ)๋ฅผ ๊ฐ์ต๋๋ค.
๊ดํธ ์์ ์์): kill(^U), ์ง์ฐ๊ธฐ(^?), werase(^W), eof(^D), intr(^C) ๋ฐ ์ข ๋ฃ(^\).
์์ ๋ฌธ์ ์ธ์๋ ์ฝ์ ์์ ๋ค์ ๋ฌธ์๋ ํน์ ์ฒ๋ฆฌ๋ฉ๋๋ค.
๋ฐฉ๋ฒ:
^E ๋ช ๋ น ๋ฐ ํ์ผ ์ด๋ฆ ์ด๊ฑฐ(์๋ ์ฐธ์กฐ).
^F ๋ช ๋ น ๋ฐ ํ์ผ ์ด๋ฆ ์์ฑ(์๋ ์ฐธ์กฐ). ์ฐ์์ผ๋ก ๋ ๋ฒ ์ฌ์ฉํ๋ฉด ๋ชฉ๋ก์ด
๊ฐ๋ฅํ ์๋ฃ๊ฐ ํ์๋ฉ๋๋ค. ์ธ ๋ฒ์งธ๋ก ์ฌ์ฉํ๋ฉด ์๋ฃ๊ฐ ์ทจ์๋ฉ๋๋ค.
^H ์ด์ ๋ฌธ์๋ฅผ ์ง์๋๋ค.
^J | ^M ์ค ๋. ํ์ฌ ์ค์ ์ ธ์์ ์ฝ๊ณ ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ ์คํํฉ๋๋ค.
^V ๋ฆฌํฐ๋ด ๋ค์. ์ ๋ ฅ๋ ๋ค์ ๋ฌธ์๋ ํน๋ณํ ์ฒ๋ฆฌ๋์ง ์์ต๋๋ค(๋ค์์ ์ฌ์ฉํ ์ ์์).
์ฌ๊ธฐ์ ์ค๋ช ๋ ๋ฌธ์๋ฅผ ์ฝ์ ํ์ญ์์ค).
^X ๋ช ๋ น ๋ฐ ํ์ผ ์ด๋ฆ ํ์ฅ(์๋ ์ฐธ์กฐ).
ํธ์ง๊ธฐ๋ฅผ ๋ช ๋ น ๋ชจ๋๋ก ์ค์ ํฉ๋๋ค(์๋ ์ฐธ์กฐ).
์ ํ์ ํ์ผ ์ด๋ฆ ๋ฐ ๋ช ๋ น ์์ฑ(์ฐธ์กฐ ^F ์), ์ธํธ -o
vi-ํญ์์ฑ.
๋ช ๋ น ๋ชจ๋์์ ๊ฐ ๋ฌธ์๋ ๋ช ๋ น์ผ๋ก ํด์๋ฉ๋๋ค. ์ํ๋ ์บ๋ฆญํฐ
๋ช ๋ น์ ํด๋นํ๊ฑฐ๋, ๋ช ๋ น์ ์๋ชป๋ ์กฐํฉ์ด๊ฑฐ๋, ์ฌ์ฉํ ์ ์๋ ๋ช ๋ น์ ๋๋ค.
์ํํ๋ฉด ๋ชจ๋ ๊ฒฝ๊ณ ์์ด ๋ฐ์ํฉ๋๋ค. ๋ค์ ๋ช ๋ น ์ค๋ช ์์ [n]๋
๋ช ๋ น ์์ ์ซ์๊ฐ ๋ถ์ ์ ์์ต๋๋ค(์: 10l ์ค๋ฅธ์ชฝ์ผ๋ก 10์ ์ด๋); ์ซ์๊ฐ ์์ผ๋ฉด
ํ๋ฆฌํฝ์ค๊ฐ ์ฌ์ฉ๋๋ฉฐ, n ๋ฌ๋ฆฌ ์ง์ ํ์ง ์๋ ํ 1๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. "ํ์ฌ์
์์นโ๋ ์ปค์์ ์ปค์ ์์ ๋ฌธ์ ์ฌ์ด์ ์์น๋ฅผ โโ๋ํ๋ ๋๋ค.
"๋จ์ด"๋ ์ผ๋ จ์ ๋ฌธ์, ์ซ์ ๋ฐ ๋ฐ์ค ๋ฌธ์ ๋๋
๋ฌธ์, ์ซ์, ๋ฐ์ค ๋ฐ ๊ณต๋ฐฑ์ด ์๋ ๋ฌธ์(์: "ab2*&^"์๋
๋จ์ด) ๋ฐ "๋น ์๋"๋ ๊ณต๋ฐฑ์ด ์๋ ๋ฌธ์์ ์ํ์ค์ ๋๋ค.
์ด๋ฌ์ ์คํ์ mksh vi ๋ช ๋ น:
๋ค์ ๋ช ๋ น์ ์ผ๋ฐ vi ํ์ผ ํธ์ง๊ธฐ์ ์๊ฑฐ๋ ๋ค๋ฆ ๋๋ค.
[n]_ ๋ค์ ๊ณต๋ฐฑ์ ์ฝ์ ํ์ญ์์ค. nํ์คํ ๋ฆฌ์ ๋ง์ง๋ง ๋ช ๋ น์์ th ๋น ์๋
ํ์ฌ ์์น์์ ์ฝ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋๋ค. ๋ง์ฝ์ n ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ๋ง์ง๋ง
๋จ์ด๊ฐ ์ฝ์ ๋ฉ๋๋ค.
# ํ์ฌ ์ค์ ์์ ๋ถ๋ถ์ ์ฃผ์ ๋ฌธ์('#')๋ฅผ ์ฝ์ ํ๊ณ ๋ฐํ
์์ ์ (์ ํด๋น ๋#^J).
[n]g ์ข์์ G, ๋ค์ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ n ์ง์ ํ์ง ์์ผ๋ฉด ๊ฐ์ฅ ์ต๊ทผ์ ๊ธฐ์ต๋
์ค์ ๋๋ค.
[n]v ๋ผ์ธ ํธ์ง n ๋ฅผ ์ฌ์ฉํ์ฌ vi(1) ํธ์ง์ ๋ง์ฝ์ n ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ํ์ฌ ์ค์
์์ ํ์ต๋๋ค. ์คํ๋๋ ์ค์ ๋ช ๋ น์ fc -e ${์๊ฐ์ :-${ํธ์ง์:-vi}} n.
* ๋ฐ ^X ๋ช ๋ น ๋๋ ํ์ผ ์ด๋ฆ ํ์ฅ์ด ํ์ฌ ๋น ์๋์ ์ ์ฉ๋ฉ๋๋ค(
๋จ์ด์ ํ์ผ ๊ธ๋ก๋น ๋ฌธ์๊ฐ ํฌํจ๋์ง ์์ ๊ฒฝ์ฐ '*' ์ถ๊ฐ) โ ๋น ์๋๋
๊ฒฐ๊ณผ ๋จ์ด๋ก ๋์ฒด๋ฉ๋๋ค. ํ์ฌ ํฐ ๋จ์ด๊ฐ
์ค ๋๋ ';', '|', '&', '(' ๋๋ ')' ๋ฌธ์ ์ค ํ๋๋ฅผ ๋ฐ๋ฅด๋ฉฐ
์ฌ๋์('/')๋ฅผ ํฌํจํ๋ฉด ๋ช ๋ น ํ์ฅ์ด ์๋ฃ๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ํ์ผ ์ด๋ฆ
ํ์ฅ์ด ์ด๋ฃจ์ด์ง๋๋ค. ๋ช ๋ น ํ์ฅ์ ๋ชจ๋ ๊ฒ์ ๋ํ ํฐ ๋จ์ด์ ์ผ์นํฉ๋๋ค.
๋ณ์นญ, ๊ธฐ๋ฅ ๋ฐ ๋ด์ฅ ๋ช ๋ น๊ณผ ๋ฐ๊ฒฌ๋ ๋ชจ๋ ์คํ ํ์ผ
PATH ๋งค๊ฐ๋ณ์์์ ๋๋ ํ ๋ฆฌ๋ฅผ ๊ฒ์ํฉ๋๋ค. ํ์ผ ์ด๋ฆ ํ์ฅ ์ผ์น
ํ์ฌ ๋๋ ํ ๋ฆฌ์ ํ์ผ์ ๋ํ ๋น ์๋. ํ์ฅ ํ,
์ปค์๋ ๋ง์ง๋ง ๋จ์ด ๋ฐ๋ก ๋ค์ ์์นํ๋ฉฐ ํธ์ง๊ธฐ๋ ์ฝ์ ๋ชจ๋์ ์์ต๋๋ค.
[n]\, [n]^F, [n] , ๊ทธ๋ฆฌ๊ณ [n]
๋ช ๋ น/ํ์ผ ์ด๋ฆ ์์ฑ. ํ์ฌ ํฐ ๋จ์ด๋ฅผ ๊ฐ์ฅ ๊ธด ๋จ์ด๋ก ๊ต์ฒด
๋ช ๋ น ๋ฐ ํ์ผ ์ด๋ฆ ํ์ฅ์ ์ํํ ํ ์ป์ ๊ณ ์ ์ผ์น.
๊ฒฝ์ฐ์๋ง ์ธ์๋ฉ๋๋ค. vi-ํญ์์ฑ ์ต์ ์ด ์ค์ ๋์ด ์๋ ๋์ ์ค์ง
๊ฒฝ์ฐ ์ธ์ vi-esc์๋ฃ ์ต์ ์ด ์ค์ ๋์ด ์์ต๋๋ค(์ฐธ์กฐ ์ธํธ -o). ๋ง์ฝ n ์ง์ ๋๊ณ ,
์ ์, n๊ฐ๋ฅํ ์๋ฃ๊ฐ ์ ํ๋์์ต๋๋ค(๋ช ๋ น/ํ์ผ ์ด๋ฆ์ ์ํด ๋ณด๊ณ ๋ ๋๋ก).
์ด๊ฑฐ ๋ช ๋ น).
= ๋ฐ ^E ๋ช ๋ น/ํ์ผ ์ด๋ฆ ์ด๊ฑฐ. ์ผ์นํ๋ ๋ชจ๋ ๋ช ๋ น ๋๋ ํ์ผ ๋์ด
ํ์ฌ ํฐ ๋จ์ด.
^V ๋ฒ์ ํ์ mksh. ํ์ฌ ํธ์ง ๋ฒํผ๋
ํค๊ฐ ๋๋ฆฝ๋๋ค. ๋ณต์ ํค ๋๋ฅด๊ธฐ๋ ๋ฌด์๋ฉ๋๋ค.
@c ๋งคํฌ๋ก ํ์ฅ. ๋ณ์นญ์ ์๋ ๋ช ๋ น ์คํ c.
์ธํธ๋ผ ๋ผ์ธ ์ด๋ ๋ช ๋ น:
[n]์ [n]^H
์ผ์ชฝ์ผ๋ก ์ด๋ n ์.
[n]๋ [n]
์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํด๋ผ n ์.
0 0์ด๋ก ์ด๋ํฉ๋๋ค.
^ ๊ณต๋ฐฑ์ด ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ก ์ด๋ํฉ๋๋ค.
[n]| ์ด๋ก ์ด๋ n.
$ ๋ง์ง๋ง ๋ฌธ์๋ก ์ด๋ํฉ๋๋ค.
[n]b ๋ค๋ก ์ด๋ n ๋จ์ด.
[n]B ๋ค๋ก ์ด๋ n ํฐ ๋จ์ด.
[n]e ๋จ์ด์ ๋์ผ๋ก ์์ผ๋ก ์ด๋ํฉ๋๋ค. n ์๊ฐ.
[n]E ํฐ ๋จ์ด์ ๋์ผ๋ก ์์ผ๋ก ์ด๋ํฉ๋๋ค. n ์๊ฐ.
[n]w ์์ผ๋ก ์ด๋ n ๋จ์ด.
[n]W ์์ผ๋ก ์ด๋ n ํฐ ๋จ์ด.
% ์ผ์นํ๋ ํญ๋ชฉ์ ์ฐพ์ต๋๋ค. ํธ์ง๊ธฐ๋ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ดํธ, ๋๊ดํธ ๋๋ ์ค๊ดํธ๋ฅผ ์ฐพ์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ ์ผ์นํ๋ ๊ดํธ, ๋๊ดํธ ๋๋ ์ค๊ดํธ๋ก ์ปค์๋ฅผ ์ด๋ํฉ๋๋ค.
[n]fc ์์ผ๋ก ์ด๋ n๋ฌธ์์ th ๋ฐ์ c.
[n]Fc ๋ค๋ก ์ด๋ n๋ฌธ์์ th ๋ฐ์ c.
[n]tc ์ง์ ๊น์ง ์์ผ๋ก ์ด๋ n๋ฌธ์์ th ๋ฐ์ c.
[n]Tc ๋ฐ๋ก ์ง์ ์ผ๋ก ๋ค๋ก ์ด๋ n๋ฌธ์์ th ๋ฐ์ c.
[n]; ๋ง์ง๋ง ๋ฐ๋ณต f, F, t๋ฐ T ๋ช ๋ น.
[n], ๋ง์ง๋ง ๋ฐ๋ณต f, F, t๋ฐ T ๋ช ๋ น์ ๋ด๋ฆฌ์ง๋ง ๋ฐ๋ ๋ฐฉํฅ์ผ๋ก ์์ง์ ๋๋ค.
ํ๊ฐ ์ด๋ ๋ช ๋ น:
[n]์ ์ด, [n]+ ๋ฐ [n]^N
๋ก ์ด๋ n์ญ์ฌ์ ๋ค์ ์ค.
[n]์ผ์ด, [n]-, ๊ทธ๋ฆฌ๊ณ [n]^ํผ
๋ก ์ด๋ n์ญ์ฌ์ ์ด์ ๋ผ์ธ.
[n]G ํ์ผ๋ก ์ด๋ n ์ญ์ฌ์; ๋ง์ฝ์ n ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ ์ฒซ ๋ฒ์งธ ๋ฒํธ
๊ธฐ์ต๋ ๋ผ์ธ์ด ์ฌ์ฉ๋ฉ๋๋ค.
[n]g ์ข์์ G, ๋ค์ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ n ์ง์ ํ์ง ์์ผ๋ฉด ๊ฐ์ฅ ์ต๊ทผ์ ๊ธฐ์ต๋ ์ค๋ก ์ด๋ํฉ๋๋ค.
[n]/ํ
์ ๋ํ ์ญ์ฌ๋ฅผ ํตํด ๋ค๋ก ๊ฒ์ nํฌํจํ๋ th ๋ผ์ธ ํ; ๋ง์ฝ ํ
'^'๋ก ์์ํ๊ณ ๋๋จธ์ง ๋ฌธ์์ด์ ๊ธฐ๋ก ์์ ๋ถ๋ถ์ ๋ํ๋์ผ ํฉ๋๋ค.
์ผ์นํ๋๋ก ์ค์ ๊ธ์ต๋๋ค.
[n]?ํ
๊ณผ ๋์ผ /, ๊ธฐ๋ก์ ํตํด ์์ผ๋ก ๊ฒ์ํ๋ค๋ ์ ์ ์ ์ธํ๊ณ .
[n]n ๊ฒ์ n๋ง์ง๋ง ๊ฒ์ ๋ฌธ์์ด์ th ๋ฐ์; ๊ฒ์์ ๋ฐฉํฅ
๋ง์ง๋ง ๊ฒ์๊ณผ ๋์ผํฉ๋๋ค.
[n]N ๊ฒ์ n๋ง์ง๋ง ๊ฒ์ ๋ฌธ์์ด์ th ๋ฐ์; ๊ฒ์์ ๋ฐฉํฅ
๋ง์ง๋ง ๊ฒ์์ ๋ฐ๋์ ๋๋ค.
ANSI-CurUp, PC-PgUp
๋ค์๊ณผ ๊ฐ์ด ์ค ์์ ๋ถ๋ถ๋ถํฐ ํ์ฌ ์ปค์ ์์น๊น์ง ๋ฌธ์๋ฅผ ๊ฐ์ ธ์ต๋๋ค.
๋ฌธ์์ด์ ๊ฒ์ํ๊ณ ์ด ํญ๋ชฉ์ผ๋ก ์์ํ๋ ์ค์ ๋ํด ์ญ๋ฐฉํฅ ๊ธฐ๋ก ๊ฒ์์ ์ํํฉ๋๋ค.
๋; ์ปค์ ์์น๋ฅผ ์ ์งํ์ญ์์ค. ์ด๊ฒ์ ์ฝ์ ๋ชจ๋์์๋ง ์๋ํ๊ณ ์ ์งํฉ๋๋ค.
์ฌ์ฉํ๋๋ก ์ค์ ๋์์ต๋๋ค.
๋ช ๋ น ํธ์ง
[n]a ํ ์คํธ ์ถ๊ฐ n ํ์์ค; ํ์ฌ ์์น ๋ฐ๋ก ๋ค์์ ์ฝ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋๋ค. ๊ทธ๋งํผ
์ถ๊ฐ๋ ๋ช ๋ น ๋ชจ๋๊ฐ ๋ค์ ์ ๋ ฅ๋๋ ๊ฒฝ์ฐ์๋ง ๋ณต์ ๋ฉ๋๋ค. ์ฌ์ฉ.
[n]A ๋์ผ a, ์ค ๋์ ์ถ๊ฐ๋๋ ๊ฒ์ ์ ์ธํ๊ณ .
[n]i ํ ์คํธ ์ฝ์ n ํ์์ค; ํ์ฌ ์์น์์ ์ฝ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋๋ค. ์ฝ์
๋ช ๋ น ๋ชจ๋๊ฐ ๋ค์ ์ ๋ ฅ๋๋ ๊ฒฝ์ฐ์๋ง ๋ณต์ ๋ฉ๋๋ค. ์ฌ์ฉ.
[n]I ๋์ผ i, ๊ณต๋ฐฑ์ด ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์ ๋ฐ๋ก ์์์ ์ฝ์ ์ด ์ํ๋๋ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ .
[n]s ๋ค์์ผ๋ก ๋์ฒด n ๋ฌธ์(์ฆ, ๋ฌธ์๋ฅผ ์ญ์ ํ๊ณ ์ฝ์ ์ผ๋ก ์ด๋)
๋ฐฉ๋ฒ).
S ์ ์ฒด ๋ผ์ธ์ ๋์ฒดํฉ๋๋ค. ๊ณต๋ฐฑ์ด ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ถํฐ ๋๊น์ง์ ๋ชจ๋ ๋ฌธ์
ํ์ด ์ญ์ ๋๊ณ ์ฝ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋๋ค.
[n]c์ด๋ cmd
ํ์ฌ ์์น์์ ๊ฒฐ๊ณผ ์์น๋ก ๋ณ๊ฒฝ n ์ด๋ cmds (์ฆ
ํ์๋ ์์ญ์ ์ญ์ ํ๊ณ ์ฝ์ ๋ชจ๋๋ก ์ด๋); ๋ง์ฝ์ ์ด๋ cmd is c๋ผ์ธ
๊ณต๋ฐฑ์ด ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ถํฐ ์์ํ์ฌ ๋ณ๊ฒฝ๋ฉ๋๋ค.
C ํ์ฌ ์์น์์ ์ค ๋๊น์ง ๋ณ๊ฒฝ(์: ์ค ๋์ผ๋ก ์ญ์ )
์ค์ ์ ๋ ฅํ๊ณ ์ฝ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ๋๋ค).
[n]x ๋ค์ ์ญ์ n ์.
[n]X ์ด์ ์ญ์ n ์.
D ์ค ๋๊น์ง ์ญ์ ํฉ๋๋ค.
[n]d์ด๋ cmd
ํ์ฌ ์์น์์ ๊ฒฐ๊ณผ ์์น๊น์ง ์ญ์ n ์ด๋ cmds;
์ด๋ cmd ์ด๋ ๋ช ๋ น(์ ์ฐธ์กฐ)์ด๊ฑฐ๋ d, ์ด ๊ฒฝ์ฐ ํ์ฌ ์ค์
์ญ์ ๋จ
[n]rc ๋ค์ ๊ต์ฒด n ์บ๋ฆญํฐ๊ฐ ์๋ ์บ๋ฆญํฐ c.
[n]R ๊ต์ฒดํ์ญ์์ค. ์ฝ์ ๋ชจ๋๋ก ๋ค์ด๊ฐ์ง๋ง ์ฝ์ ํ๋ ๋์ ๊ธฐ์กด ๋ฌธ์๋ฅผ ๋ฎ์ด์๋๋ค.
๊ธฐ์กด ์บ๋ฆญํฐ ์ . ๊ต์ฒด๊ฐ ๋ฐ๋ณต๋ฉ๋๋ค n ์๊ฐ.
[n]~ ๋ค์์ ๋์๋ฌธ์ ๋ณ๊ฒฝ n ์.
[n]y์ด๋ cmd
ํ์ฌ ์์น์์ ๊ฒฐ๊ณผ ์์น๋ก Yank n ์ด๋ cmds ์์ผ๋ก
์ก์๋น๊ธฐ๊ธฐ ๋ฒํผ; ๋ง์ฝ์ ์ด๋ cmd is y, ์ ์ฒด ๋ผ์ธ์ด ๋น๊ฒจ์ง๋๋ค.
Y ํ์ฌ ์์น์์ ์ค ๋๊น์ง ์ก์๋น๊น๋๋ค.
[n]p ํ์ฌ ์์น ๋ฐ๋ก ๋ค์ yank ๋ฒํผ์ ๋ด์ฉ์ ๋ถ์ฌ๋ฃ์ต๋๋ค. n ์๊ฐ.
[n]P ๋์ผ p, ๋ฒํผ๊ฐ ํ์ฌ ์์น์ ๋ถ์ฌ๋ฃ์ด์ง๋ ๊ฒ์ ์ ์ธํ๊ณ .
๊ธฐํ vi ๋ช ๋ น
^J์ ^M
ํ์ฌ ์ค์ ์ ธ์์ ์ฝ๊ณ ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ ์คํํฉ๋๋ค.
^L๊ณผ ^R
ํ์ฌ ์ค์ ๋ค์ ๊ทธ๋ฆฝ๋๋ค.
[n]. ๋ง์ง๋ง ํธ์ง ๋ช ๋ น ๋ค์ ์คํ n ์๊ฐ.
u ๋ง์ง๋ง ํธ์ง ๋ช ๋ น์ ์คํ ์ทจ์ํฉ๋๋ค.
U ํ์ฌ ์ค์ ์ ์ฉ๋ ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์คํ ์ทจ์ํฉ๋๋ค.
PC Home, End, Del ๋ฐ ์ปค์ ํค
์ฝ์ ๋ชจ๋์ ๋ช ๋ น ๋ชจ๋ ๋ชจ๋์์ ์์๋๋ก ์ด๋ํฉ๋๋ค.
intr ๊ณผ ์ข ๋ฃ
์ธํฐ๋ฝํธ ๋ฐ ์ข ๋ฃ ํฐ๋ฏธ๋ ๋ฌธ์๋ก ์ธํด ํ์ฌ ํ์ด ์ญ์ ๋๊ณ
์ธ์ํ ์ ํ๋กฌํํธ.
onworks.net ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ mksh ์จ๋ผ์ธ ์ฌ์ฉ