Powershell: powershell.exe๋ฅผ ํ˜ธ์ถœํ•˜๊ธฐ์œ„ํ•œ ๋” ์งง์€ ์ด๋ฆ„์œผ๋กœ pwsh ๋งŒ๋“ค๊ธฐ

์— ๋งŒ๋“  2017๋…„ 07์›” 11์ผ  ยท  127์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: PowerShell/PowerShell

cmd๋ฅผ powershell๋กœ ์ „ํ™˜ํ•˜๋Š” ๊ทผ์œก ๊ธฐ์–ต์€ ๊ณ ํ†ต ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. cmd ๋˜๋Š” bash๋ฅผ ์ž…๋ ฅํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๊ธธ๋‹ค๋Š” ์‚ฌ์‹ค๋กœ ์ธํ•ด ๋” ๋‚˜๋น ์ง‘๋‹ˆ๋‹ค. ์‹œ์ž‘์—์„œ Windows ๊ฒ€์ƒ‰์„ ์‚ฌ์šฉํ•˜๋”๋ผ๋„ ํ•œ๋™์•ˆ ์‚ฌ์šฉํ•œ ๊ฒฝ์šฐ ISE๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์œผ๋ฏ€๋กœ ์ „์ฒด ์ด๋ฆ„์„ ์ž…๋ ฅํ•ด์•ผํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.

๋” ๋‚˜์€ ์ด๋ฆ„์€ posh.exe ๋˜๋Š” ๊ธฐํƒ€ ์œ ํšจํ•œ ํ™•์žฅ์ž์ž…๋‹ˆ๋‹ค. bash๋งŒํผ ๊ธธ๊ณ  cmd๋ณด๋‹ค ํ•œ ๋ฌธ์ž ๋” ๊น๋‹ˆ๋‹ค. Posh๋Š” PowerShell์˜ ๋ชจ๋“  ๊ฒƒ์— ๋Œ€ํ•ด ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ํ—ˆ์šฉ๋˜๋Š” ์•ฝ์–ด์ด๋ฏ€๋กœ ์•ฝ๊ฐ„์˜ ์นœ์ˆ™ ํ•จ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ๋‹ค๋ฅธ ์•ฑ๊ณผ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์ง€๋งŒ ํŒŒํ—ค์ณ ์•ผํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋‹ฌ์„ฑ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. powershell.exe๋ฅผ ์ฐธ์กฐํ•˜๋Š” posh๋ผ๋Š” ๊ณต์‹ ๋ฐ”๋กœ ๊ฐ€๊ธฐ ๋˜๋Š” ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
  2. powershell.exe์˜ ์ด๋ฆ„์„ posh.exe๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

์ „์ž๋Š” ์ด์ „ ๋ฒ„์ „๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์œ ์ง€ํ•˜๋ฉฐ ์‚ฌ์šฉ์ž๊ฐ€ posh ๋˜๋Š” powershell.exe ์ค‘์—์„œ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด ์Šคํฌ๋ฆฝํŠธ๋Š” ์˜ํ–ฅ์„๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ›„์ž๋Š” # 4199 ๋ฐ ๊ธฐํƒ€ POSIX ์ œ์•ˆ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ์— ์‰˜์ด ์‹œ์ž‘๋˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๋” ๋งŽ์€ ์ž์œ ๋ฅผ ์ œ๊ณต ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋Š” ํš๊ธฐ์ ์ธ ๋ณ€๊ฒฝ์ด๋ฉฐ ์˜ํ–ฅ ๋ฐ ๋ธŒ๋žœ๋”ฉ ์˜๋ฏธ์— ๋Œ€ํ•ด ๊ฒ€ํ† ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ณต์‹์ ์ธ ๊ณ ๊ธ‰ ๋‹จ์ถ•ํ‚ค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ตœ์†Œํ•œ์˜ ์˜ํ–ฅ์œผ๋กœ ์ตœ์„ ์˜ ์„ ํƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ ๋ฌธ์„œ๋Š” PowerShell์„ ์ž…๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ posh๋ฅผ ์„ ํ˜ธ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Area-SideBySide Committee-Reviewed Issue-Discussion Resolution-Fixed

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ €๋Š” psh ํˆฌํ‘œ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ถฉ๋Œ๋กœ ์–ธ๊ธ‰ ํ•œ ํ”„๋กœ์ ํŠธ๋Š” 10 ๋…„ ๋™์•ˆ ์ถœ์‹œ ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์–ด๋–ค ๊ฒฝ์šฐ์—๋„ ํŒจํ‚ค์ง€ ์ €์žฅ์†Œ์— ํฌํ•จ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  127 ๋Œ“๊ธ€

๋‚˜๋Š” ๋„ˆ๋ฌด ์งง์€ ๋ณ„์นญ์„ ์‹ถ์ง€๋งŒ, ์ด๊ฒƒ์€ ์šฐ๋ฆฌ๊ฐ€ ์ด๋™๋˜์ง€ ์•Š์€ ์ด์œ ๋Š” posh ์šฐ๋ฆฌ๊ฐ€ ์ฒ˜์Œ ๋ฐ–์œผ๋กœ ๊ฐ”์„ ๋•Œ (์šฐ๋ฆฌ๊ฐ€ ๊ธธ์ด์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐ). ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค ์ตœ์‹  ํŒจํ‚ค์ง€๋„ ์—ฌ์ „ํžˆ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์ œ์•ˆ์— ๊ฐœ๋ฐฉ์ ์ด์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์˜ ๋ช…๋ฐฑํ•œ * sh ์ œ์•ˆ์ด ์ฑ„ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์œ ์ผํ•œ wget / curl ๋ณ„์นญ ์ดํ›„, ๋œ ์ผ๋ฐ˜์ ์ด๋”๋ผ๋„ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€์™€ ์ถฉ๋Œํ•˜๋Š” ๊ฒƒ์„ ์ •๋ง๋กœ ํ”ผํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š”์ด ๋ชจ๋“  ์•„์ด๋””์–ด์— ๋„ˆ๋ฌด ์—ด๊ด‘ํ•˜์ง€๋Š” ์•Š์ง€๋งŒ pwsh ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” powershell์˜ ๋‹จ์ถ•์œผ๋กœ ํฌ์‰ฌ์— ์—ด์ค‘ ํ•œ ์ ์ด ์—†์Šต๋‹ˆ๋‹ค. pwsh๊ฐ€ ๋” ์ข‹์•„ ๋ณด์ด์ง€๋งŒ ๋น ๋ฅธ ์ธํ„ฐ๋„ท ๊ฒ€์ƒ‰์€ ๋ช‡ ๊ฐ€์ง€ ๊ฐ€๋Šฅํ•œ ๋ฌธ์ œ๋ฅผ ์ œ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์ด๊ฒƒ์„ํ•œ๋‹ค๋ฉด ๊ฐ€๋Šฅํ•œ ํ•œ ์งง๊ฒŒ ์ œ์•ˆ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ps๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

์ข‹์•„์š”-์žŠ์–ด ๋ฒ„๋ ค์š”-๋ฐฉ๊ธˆ ps๊ฐ€ get-process์˜ ๋ณ„์นญ์ด๋ผ๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋„ˆ๋ฌด ํ˜ผ๋ž€ ์Šค๋Ÿฌ์šธ ๊ฒƒ์ž…๋‹ˆ๋‹ค

๋‚˜๋Š” ์ง€๊ธˆ ๊ฐ•ํ•œ ๋ฐ์ž๋ทฐ๋ฅผ ์–ป๊ณ ์žˆ๋‹ค. ๐Ÿ˜‰

PowerShell์˜ ๊ฐ€๋…์„ฑ์„ ๋†’์ด ํ‰๊ฐ€ํ•˜๋ฏ€๋กœ (๋ณ„์นญ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๋•Œ) powershell ์‹คํ–‰ํ•˜๋ฉด ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

ps ๋Š” Linux์—์„œ๋„ ๊ธฐ์กด ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

๊ธฐํƒ€ ์•„์ด๋””์–ด : pscmd , psc , monad , psh , pshell

์ด ์ด๋ฆ„์€ ์‹ค์ œ๋กœ ๋ฌด์—‡์ด๋“  ์ €์žฅํ•˜๋Š”์ง€ ๋˜๋Š” ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ ๋ถˆํ•„์š”ํ•œ ํ˜ผ๋ž€์„ ์ถ”๊ฐ€ํ•˜๋Š”์ง€ ์—ฌ๋ถ€์— ๊ด€๊ณ„์—†์ด ํ™•์‹คํžˆ ๊ฐ์†Œํ•˜๋Š” ์ˆ˜์ต์ด ์žˆ์Šต๋‹ˆ๋‹ค.

CoreSh , pcs , psc

๋„ˆ๋ฌด ๋‚˜์œ mosh ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. psh ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. [pshell]์€ ๋งŽ์€ ํžˆํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ํฅ๋ฏธ๋กญ๊ฒŒ๋„ Bing๊ณผ Google ๋ชจ๋‘์—์„œ msh ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ฉด PowerShell (Microsoft Shell์ด๋ผ๊ณ  ํ•จ)์— ๋Œ€ํ•œ ๋งŽ์€ ํžˆํŠธ๊ฐ€ ํ‘œ์‹œ๋˜์ง€๋งŒ Unix์—๋Š” msh ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค (์•„๋งˆ ๋งŽ์ด ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ).

๐Ÿ˜„ S #, P #

@ PowerShell / powershell-committee๋Š” ์ด์— ๋Œ€ํ•ด ๋…ผ์˜ํ–ˆ์œผ๋ฉฐ ๋” ์งง์€ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ ์ด๋ฆ„์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์ง€๋งŒ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ๋ˆ„๊ตฌ์—๊ฒŒ๋„ ์Šค์ฟผํŠธ๋ฅผ ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. prsh ๊ดœ์ฐฎ์•„ ๋ณด์ž…๋‹ˆ๋‹ค.

๊ธฐ๋‹ค๋ ค, ๊ธฐ๋‹ค๋ ค! ์•Œ์•˜์Šต๋‹ˆ๋‹ค : ^sh -์•„๋‹ˆ๋ฉด **sh ์ž…๋‹ˆ๊นŒ? (jk).

prsh ์€ (๋Š”) ํ•ฉ๋ฆฌ์ ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด pwrsh ์ด์ง€๋งŒ pwsh ๋ณด๋‹ค ์ž…๋ ฅํ•˜๊ธฐ๊ฐ€ ๋” ์‰ฝ์Šต๋‹ˆ๋‹ค. ๋” ์ด์ƒ- "pwr"์ด "power"์˜ ์•Œ๋ ค์ง„ ์•ฝ์ž์ด๋ฏ€๋กœ ๊ณ ๋ คํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ ๋‹ค๋ฅธ _complementary_ ์˜ต์…˜ : _invariably_ ๊ฐ’์ด ํ˜„์žฌ ์„ธ์…˜์„ ์‹œ์ž‘ํ•œ ๋ฐ”์ด๋„ˆ๋ฆฌ์˜ ๋™์ผํ•œ ๊ฒฝ๋กœ๋ฅผ ๋ฐ˜์˜ํ•˜๋Š” _automatic ๋ณ€์ˆ˜ _๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

bash ์—๋Š” $BASH ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์ ‘๊ทผ ๋ฐฉ์‹์˜ ์žฅ์ ์€ $env:PATH ์˜ / ์กฐ์ž‘์˜ ๋ณ€ํ˜•์— ์˜ํ–ฅ์„๋ฐ›์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์ด๋ฏธ $PSHOME -ํ‹€๋ฆผ์—†์ด $PS ์™€ ๊ฐ™์€ ๊ฒƒ์€ ๋„ˆ๋ฌด ๋ฌด๋ฆฌ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

์ฆ‰, ์ด๊ฒƒ์€ ์ž๋™ ๋ณ€์ˆ˜๋กœ ์ „์—ญ ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค๋ฅผ ์˜ค์—ผ์‹œํ‚ค์ง€ ์•Š๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๋…ผ์˜์™€ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค. # 4216์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

.Net Core, CoreFX, CoreCLR, PowerShell Core- "์ฝ”์–ด"๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ๊ฐ„์ฃผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

pscore ๋‹ค๋ฅธ์œ„์›ํšŒ ๊ตฌ์„ฑ์›์ด ๊ฑฐ๋ถ€ํ–ˆ์ง€๋งŒ sh ๋๋‚˜์ง€ ์•Š์•„๋„ ๊ดœ์ฐฎ์•„ ๋ณด์ž…๋‹ˆ๋‹ค.

pscore ๋˜๋Š” coreps -LGTM.

monad ๋ฐ msh (์œ„์— ์–ธ๊ธ‰)๋ฅผ ๊ธฐ์–ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ง€๊ธˆ๊นŒ์ง€ pwrsh ๋ฅผ ๊ฐ€์žฅ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. pscore ๋„ 6 ์ž์—์„œ ๋‹ค์†Œ ๊ธธ์–ด์ง€๊ณ  ์žˆ์ง€๋งŒ ๋‚˜์˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 4 ๊ฐœ ์ดํ•˜์˜ ๋ฌธ์ž๊ฐ€ ์ด์ƒ์  ์ผ ์ˆ˜ ์žˆ์ง€๋งŒ pwrsh ํ•„์š”ํ•œ 5 ๊ฐœ์˜ ๋ฌธ์ž๋กœ ์‚ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

"ํ•ต์‹ฌ"์ด๋ผ๋Š” ๋‹จ์–ด๋ฅผ ํ†ตํ•ฉํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๋‚˜์˜ ์šฐ๋ ค๋Š” ์œ ๋‹‰์Šค ํ”Œ๋žซํผ์—์„œ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๊ตฌ๋ณ„ํ•ด์•ผ ํ•  ๋‹ค๋ฅธ ์—๋””์…˜์ด ์—†์Šต๋‹ˆ๋‹ค.

@rkeithhill ์–ด๋•Œ์š” pscx , ํ•˜! PowerShell ํ•ต์‹ฌ ๊ฒฝํ—˜. ๊ทธ๋ž˜๋„ pscsh , PowerShell Core Shell์„ ์ƒ๊ฐํ•˜๊ฒŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ™์€ ์ด๋ฆ„์˜ ์ผ๋ถ€๋ฅผ ์ฐข์–ด ๋ฒ„๋ ธ์Šต๋‹ˆ๋‹ค. pwrsh ๋ฐ pscore ์˜ ๊ฐ€๋…์„ฑ์ด ๋งˆ์Œ์— ๋“ค์ง€๋งŒ 5 ์ž ์ œํ•œ์— ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. 5 ๊ฐœ์˜ ๋ฌธ์ž๋Š” ์ฒซ ๋ฒˆ์งธ ๋‹จ์–ด power ๋ฅผ ํฌํ•จํ•˜๋ฉฐ ์ „์ฒด ๋‚ด์šฉ์„ ์ž…๋ ฅํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. monad ์€ ํ›Œ๋ฅญํ•œ ์ด์Šคํ„ฐ ์—๊ทธ์ด๋ฉฐ ์ฝ๊ธฐ ์‰ฝ์ง€๋งŒ PowerShell์˜ ๋ฐฐ๊ฒฝ์„ ๋ชจ๋ฅด๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋Š” ํ˜ผ๋ž€ ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. 4 ์ž prsh ๋„ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋Š” ์ตœ์ข… ์ด๋ฆ„ ๋ชฉ๋ก์„ ๋งŒ๋“ค๊ณ  Edge ํŒ€์ด ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๊ณต์‹ ํˆฌํ‘œ๋ฅผํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ˆ์ •๋œ PS ์ปค๋ฎค๋‹ˆํ‹ฐ ๋˜๋Š” ๊ณต์‹ ์ด๋ฒคํŠธ๊ฐ€์žˆ๋Š” ๊ฒฝ์šฐ ๋” ๋งŽ์€ ์ฒญ์ค‘์—๊ฒŒ ๋‹ค๊ฐ€ ๊ฐ€๊ธฐ ์œ„ํ•ด ํˆฌํ‘œ ๋งํฌ๋ฅผ ์ œ๊ณต ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@ dragonwolf83 :

pscsh ๋Š” ์œ„ํ—˜ ํ•  ์ •๋„๋กœ csh ๊ฐ€๊น์Šต๋‹ˆ๋‹ค-์šฐ๋ฆฌ๋Š” ํ”ผํ•ด์•ผ ํ•  ์—ฐ๊ฒฐ์ž…๋‹ˆ๋‹ค.

๋‹ค์‹œ ๋งํ•˜์ง€๋งŒ "ํ•ต์‹ฌ"์ด๋ผ๋Š” ๋‹จ์–ด๋ฅผ ํฌํ•จํ•ด๋„ ์•„๋ฌด๋Ÿฐ ์ด์ ์ด ์—†์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ์—๋””์…˜์ด ์–ธ์  ๊ฐ€ ํ†ตํ•ฉ ๋  ๊ฐ€๋Šฅ์„ฑ์ด์žˆ๋Š” ๊ฒฝ์šฐ (๊ทธ๋ฆฌ๊ณ  _Windows_์—์„œ๋Š” ์‚ฌ๋žŒ๋“ค์ด 10 ๋…„ ๋™์•ˆ _Windows PowerShell_์— ๋Œ€ํ•œ ์งง์€ ์ด๋ฆ„์—†์ด ํŽธ์•ˆํ•˜๊ฒŒ ์‚ด์•˜๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค) .

monad ์˜ ๋‹ค์‹œ ๋ชจํ˜ธํ•จ์„ ๋™์˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด ๊ฐœ์ธ ํˆฌํ‘œ๋Š” pwsh , prsh ๋˜๋Š” pwrsh ์ž…๋‹ˆ๋‹ค.

์ถ”์‹  : ๊ฒฝ์šฐ _WINDOWS PowerShell_์€ ๋‹จ์ˆœํžˆ ํ•จ๊ป˜ ์ ‘๋‘์‚ฌ, ์งง์€ ์ด๋ฆ„์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค w , ํ•ด๊ฒฐ์ฑ…์ด ๋  ์ˆ˜ ๋‚ด ์ฆ๊ฒจ ์ฐพ๊ธฐ ์ค‘ ๋น„๋ก ๊ทธ์™€ ๊ฐ™์€ ํ‚ค๋ณด๋“œ์—์„œ ์ •๋ง์—๋งŒ (ํ•ฉ๋ฆฌ์ ์œผ๋กœ) ๋กค wprsh , ๊ทธ๋ž˜์„œ์—์„œ ๋‘ ๊ฐ€์ง€ ๋ฒ„์ „์˜ ์งง์€ ์ด๋ฆ„ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ๋‚ด ํˆฌํ‘œ๋Š” prsh / wprsh ์Œ์ž…๋‹ˆ๋‹ค.

"ํ•ต์‹ฌ"์ด๋ผ๋Š” ๋‹จ์–ด๋ฅผ ํ†ตํ•ฉํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๋‚˜์˜ ์šฐ๋ ค๋Š” ์œ ๋‹‰์Šค ํ”Œ๋žซํผ์—์„œ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๊ตฌ๋ณ„ํ•ด์•ผ ํ•  ๋‹ค๋ฅธ ์—๋””์…˜์ด ์—†์Šต๋‹ˆ๋‹ค.

:-) .Net Core์˜ ์ด๋ฆ„์„ ๋ฐ”๊ฟ”์•ผํ•ฉ๋‹ˆ๊นŒ?

@iSazonov : Windows PowerShell์˜ ์ด๋ฆ„์„ "Windows PowerShell .NET Framework [FullCLR]"๋กœ ๋ฐ”๊ฟ”์•ผํ•ฉ๋‹ˆ๊นŒ?

์ €๋Š” psh ํˆฌํ‘œ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ถฉ๋Œ๋กœ ์–ธ๊ธ‰ ํ•œ ํ”„๋กœ์ ํŠธ๋Š” 10 ๋…„ ๋™์•ˆ ์ถœ์‹œ ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์–ด๋–ค ๊ฒฝ์šฐ์—๋„ ํŒจํ‚ค์ง€ ์ €์žฅ์†Œ์— ํฌํ•จ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

@Jaykul :

psh ? ๋ชฐ๋ผ์š”-๋” ๋งŽ์€ "ํ•ต์‹ฌ"์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๋†๋‹ด ์ œ์ณ๋‘๊ณ  : ํ”„๋กœ์ ํŠธ์˜ ์ƒํƒœ์™€ ํŒจํ‚ค์ง€ ์ €์žฅ์†Œ์— ๋Œ€ํ•œ ๋ถ€์žฌ์— ๋Œ€ํ•œ ํ›Œ๋ฅญํ•œ ํฌ์ธํŠธ.

psh ๋„ ๋‚ด ํˆฌํ‘œ๋ฅผ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค (Windows PowerShell์˜ ๊ฒฝ์šฐ wpsh ).

(๊ฐ๊ฐ 'pshaw'์™€ 'whiplash'๋กœ ๋ฐœ์Œ).

psh ๋„ ๋‚ด ํˆฌํ‘œ๋ฅผ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค (Windows PowerShell์˜ ๊ฒฝ์šฐ wpsh ).
(๊ฐ๊ฐ 'pshaw'์™€ 'whiplash'๋กœ ๋ฐœ์Œ).

์ฐฝ์—์„œ posh ๋งŒ ์‚ฌ์šฉํ•˜๋ฉด ์•ˆ ๋˜๋‚˜์š”? ๐Ÿคก

ํ”ผ์‹œ ํ† ์‹œ! ๊ทธ๊ฒƒ์€ ์ „์ฒด mishpocha์— ๋Œ€ํ•ด ๋„ˆ๋ฌด ๋งŽ์€ ํ˜ผ๋ž€์ž…๋‹ˆ๋‹ค. ๐Ÿคก

๋‚˜๋Š” psh์— ํˆฌํ‘œ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ถฉ๋Œ๋กœ ์–ธ๊ธ‰ ํ•œ ํ”„๋กœ์ ํŠธ๋Š” 10 ๋…„ ๋™์•ˆ ์ถœ์‹œ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์–ด๋–ค ๊ฒฝ์šฐ์—๋„ ํŒจํ‚ค์ง€ ์ €์žฅ์†Œ์— ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

์นดํ”ผ ๋ผ์ดํŠธ ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๊นŒ?

์ €์ž‘๊ถŒ ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ์ง„์ •์œผ๋กœ _ ์•Œ๊ณ ์žˆ๋Š” _ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋ฌด๊ฒŒ๋ฅผ ์Š๊ธฐ๋ฅผ ๋ฐ”๋ผ์ง€ ๋งŒ, ๋‚ด _guess_๋Š” ๋‘ ๊ฐ€์ง€ ์ด์œ ๋กœ ์ด๊ฒƒ์ด ๋ฌธ์ œ๊ฐ€๋˜์ง€ ์•Š์„ ๊ฒƒ์ด๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

  • psh ์€ (๋Š”) ๊ณต์‹์ ์ธ ์ œํ’ˆ ์ด๋ฆ„์ด ์•„๋‹ˆ๋ผ ๋‹จ์ˆœํžˆ ๊ธฐ์ˆ ์  ์ธ ๋„์›€์ด๋˜๋Š” ์ด๋‹ˆ์…œ (๋ณด๋‹ค ๋Š์Šจํ•˜๊ฒŒ ๋งํ•˜๋ฉด ๋‘๋ฌธ์ž์–ด) ์ผ๋ฟ์ž…๋‹ˆ๋‹ค (์ผ๋ฐ˜์ ์ธ ์‚ฌ์šฉ์—์„œ๋Š” ๊ฒฐ๊ตญ ์ „์ฒด ์ œํ’ˆ ์ด๋ฆ„์— ๋Œ€ํ•œ ์ผ๋ฐ˜์ ์ธ ์†๊ธฐ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒํ‘œ ์ด๋‹ˆ์…œ / ์•ฝ์–ด).

  • ์ƒํ‘œ ๋ฌธ์ œ๋Š” ์ข…์ข… ๊ธฐ์กด ์ƒํ‘œ์™€ _ ํ˜ผ๋™ _ ํ•  ๊ฐ€๋Šฅ์„ฑ์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ๋ณธ ๊ฒƒ์—์„œ ์ ์–ด๋„ ์†Œํ”„ํŠธ์›จ์–ด ๊ณต๊ฐ„์—์„œ๋Š” ์ถฉ๋Œ์ด์—†๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค (๊ฑฐ์˜ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๊ธฐ์กด psh ์˜ ์ œ์ž‘์ž๋Š” ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ˆ„๊ตฐ๊ฐ€ ์‹คํ—˜์„ ์›ํ•˜๊ฑฐ๋‚˜ ์ž„์‹œ ํ•ด๊ฒฐ์ฑ…์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ :

๋‹ค์Œ์€ ์ง€์›๋˜๋Š” ๋ชจ๋“  ํ”Œ๋žซํผ์—์„œ PowerShell ๋‚ด๋ถ€ ๋ฐ ์™ธ๋ถ€ ๋ชจ๋‘์—์„œ ๋ณ„์นญ์„ ์ •์˜ํ•˜๋Š” ๋ชจ๋“  ๋ณ„์นญ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. PS Core์˜ ๊ฒฝ์šฐ psh , Windows PowerShell์˜ ๊ฒฝ์šฐ wpsh ์ž…๋‹ˆ๋‹ค.

  • PowerShell์„์˜ ๋ณ„์นญ ๋ฐ”๊นฅ ์„ค์ •ํ•˜๋Š” ONCE ๋‹ค์Œ์„ ์‹คํ–‰ (์— cmd.exe ์œˆ๋„์šฐ์— ๋Œ€ํ•œ bash ์œ ๋‹‰์Šค) :
  # Note: 
  #   * On Unix, this will define alias `psh` for *interactive* Bash sessions,
  #     via initialization file ~/.bashrc (Linux) or ~/.bash_profile (macOS).
  #   * On Windows, this defines doskey.exe-based aliases `psh` and `wpsh`
  #     via registry key [HKEY_CURRENT_USER\Software\Microsoft\Command Processor],
  #     value 'AutoRun', and even though *any* cmd.exe instance will run
  #     these alias definitions, they only work in *interactive* ones.
  #     Note that both aliases open a new window.
if ($env:OS -eq 'Windows_NT') {
  $cmd = 'doskey wpsh=start powershell.exe & doskey psh=powershell.exe -nologo -command "psh"'
  $currVal =  try { Get-ItemPropertyValue 'HKCU:\Software\Microsoft\Command Processor' AutoRun } catch {}
  if (-not (Select-String -Quiet -SimpleMatch -Pattern "$cmd" -InputObject $currVal)) {
    if ($currVal) { $cmd += " & $currVal" }
    Set-ItemProperty 'HKCU:\Software\Microsoft\Command Processor' AutoRun $cmd
  }
} else {
  $cmd = 'alias psh=powershell'
  $initFile = ("$HOME/.bashrc", "$HOME/.bash_profile")[(uname) -eq 'Darwin']
  if (-not (Select-String -Quiet -LiteralPath $initFile -Pattern "^\s*$cmd\b")) {
    Add-Content -LiteralPath $initFile -Encoding utf8 "`n$cmd"
  }
}
  • $PROFILE ์— ๋‹ค์Œ์„ ์ž…๋ ฅํ•˜์—ฌ PowerShell ๋‚ด๋ถ€์— ๋™์ผํ•œ ๋ณ„์นญ์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. PS Core์™€ Windows PS ๋ชจ๋‘์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
  # ===
  # Portable alias definitions for PowerShell Core (`psh`) 
  # and, on Windows, for Windows PowerShell (`wpsh`) too.
  #
  # Place them in $PROFILE.
  #
  # * On Unix, invoking `psh` always runs the new instance in the current terminal window.
  # * On Windows, only invoking the same edition runs in the current console window.
  #   Invoking the respective other edition opens a new window; if you also
  #   pass a command, add -NoExit to keep the new window open.
  #
  # ===
  if ($env:OS -eq 'Windows_NT') { # on Windows
    if ($PSVersionTable.PSEdition -eq 'Core') { # running in a PS Core session
      # PS Core alias: Invoke the same binary that started the current session.
      Set-Alias psh "$PSHOME\powershell.exe"
      # Windows PowerShell alias
      function wpsh {
        # Assume a fixed location in SYSTEM32.
        $exe = "$env:SYSTEMROOT\System32\WindowsPowerShell\v1.0\powershell.exe"
        $psModulePathSav = $env:PSModulePath
        try {
          # Note: We must remove all *\PowerShell\* entries from $env:PSModulePath, because they are Core-specific
          #       and interfere with module loading in Windows PowerShell.
          # Note that Start-Process -UseNewEnvironment is NOT an option: see https://github.com/PowerShell/PowerShell/issues/3545
          $env:PSModulePath = (($env:PSModulePath -split ';') -notmatch '[/\\]PowerShell[/\\]') -join ';'
          # Start Windows PowerShell in a new window.
          $htArgs = if ($Args.Count) { @{ Args = $Args } } else { @{} } 
          Start-Process $exe <strong i="18">@htArgs</strong>
        } finally {
          $env:PSModulePath = $psModulePathSav
        }
      }
    } else { # running in a Windows PowerShell session
      # PS Core alias:
      Function psh {
        # Given that the PS Core *.exe is not in $env:PATH as of PowerShell Core v6.0.0-beta.5, determine its location.
        # Since multiple versions may be installed, find the highest version installed.
        # Unfortunately on PSv5.1- [semver] ([System.Management.Automation.SemanticVersion]) is not available, so we fall back to the *.exe files' last-write timestamp.
        # WISHFUL THINKING: Set-Alias psh ((Get-ChildItem -Directory $env:ProgramFiles\PowerShell | Sort-Object -Descending { [semver] $_.Name })[0].FullName + '\powershell.exe')
        $exe = ((Get-ChildItem -File $env:ProgramFiles\PowerShell\*\powershell.exe | Sort-Object -Descending LastWriteTime)[0].FullName)
        # Note: The Core-specific module directories are automatically added to $env:PSModulePath, so no other action is required.
        # Start PS Core in a new window.
        $htArgs = if ($Args.Count) { @{ Args = $Args } } else { @{} } 
        Start-Process $exe <strong i="19">@htArgs</strong>
      }
      # Windows PowerShell alias: invoke the same executable that started the current session.
      Set-Alias wpsh "$PSHOME\powershell.exe"
    }
  } else { # on Unix (Linux, macOS)
    # Simply invoke the same binary that started the current session.
    Set-Alias psh "$PSHOME/powershell"
  }

Paua ์–ด๋–ป์Šต๋‹ˆ๊นŒ? ์ด๊ฒƒ์€ ์•„๋ฆ„๋‹ค์šด ์ „๋ณต ์กฐ๊ฐœ (๋‰ด์งˆ๋žœ๋“œ ์‚ฐ ๋ฐ”๋‹ค ์กฐ๊ฐœ)์— ๋Œ€ํ•œ ์–ธ๊ธ‰์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด psh ๋„ ์ข‹๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
Paua Shell

๋‰ด์งˆ๋žœ๋“œ ํ•ด์•ˆ์—์„œ ์กฐ๊ฐœ๋ฅผ ํŒŒ๋‚˜์š”? (๋†๋‹ด์ž…๋‹ˆ๋‹ค. ์ •๋ง ์•„๋ฆ„๋‹ต์Šต๋‹ˆ๋‹ค.)

๋ฉด์ฑ… ์กฐํ•ญ : ๋‹ค์Œ ๋‚ด์šฉ์€ [์ทจ๋ฏธ] ์–ธ์–ด ์ „๋ฌธ๊ฐ€์—๊ฒŒ๋งŒ ๊ด€์‹ฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์Œ์„ฑ ํ•™์ ์œผ๋กœ paua ๋Š” ์˜์–ด์˜ ๋น„ ๋กœํŠธ ์„ฑ ๋ฐฉ์–ธ (์˜ˆ : ์˜๊ตญ, ๋‰ด์งˆ๋žœ๋“œ, ํ˜ธ์ฃผ)์—์„œ๋งŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  Bostonians.

@ PowerShell / powershell-committee๋Š” beta.8์„ ์œ„ํ•ด ์ด๊ฒƒ์„ ๋‹ซ์•„์•ผํ•ฉ๋‹ˆ๋‹ค.

Posh6๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ

Posh6๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ

ํŒŒ์ผ ํ™•์žฅ์ž์— ๋ฒ„์ „ ๋ฒˆํ˜ธ๋ฅผ ๋„ฃ๋Š” ๊ฒƒ๋ณด๋‹ค ๋นจ๋ฆฌ ๊ตฌ์‹์ด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค ...;)

์˜ˆ,ํ•˜์ง€๋งŒ์ด๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์‰˜ ์Šคํฌ๋ฆฝํŠธ๋Š” ์‹คํ–‰์ค‘์ธ ๋ฒ„์ „์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” posh ๋ฅผ ์ข‹์•„ํ•˜์ง€๋งŒ, ์ฃผ๋œ ๊ด€์‹ฌ์‚ฌ๋Š” Posh ๋ผ๋Š” ๊ธฐ์กด Linux ์šฉ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ ๋˜ ๋‹ค๋ฅธ curl ์‚ฌ๊ณ ๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ์œผ๋กœ ์ข‹์€ ์˜ต์…˜์€ pwsh ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” pwsh ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. 10 ๋…„ ์ „์— ์žˆ์œผ๋ฉด ์ข‹์•˜์„ ํ…๋ฐ. msh ๊ทธ๋ฆฌ์›Œํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” psh ํˆฌํ‘œํ•ฉ๋‹ˆ๋‹ค.
gnp / psh ๋Š” ๊ฑฐ์˜ 5 ๋…„ ๋™์•ˆ ์•ฝ์†๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํฌ๊ธฐํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ๋งํ•˜๊ธฐ ์‹ซ์ง€๋งŒ ์ด๊ฒƒ์€ ๊ฐ•ํ•œ ํ•ฉ์˜๋ฅผ ์–ป๊ธฐ๊ฐ€ ๋„ˆ๋ฌด ์–ด๋ ค์šธ ์ˆ˜๋„์žˆ๋Š” ๊ฒƒ๋“ค ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. : \

์ด ์‹œ์ ์—์„œ ๋ชจ๋“  ๊ฒƒ์„ ๋‹ซ๊ณ  ์–ด๋–ค ์ข…๋ฅ˜์˜ ์ถฉ๋Œ๋„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด (ํ•ฉ๋ฒ•์  ์ธ ๊ฒƒ๋ณด๋‹ค ๋” "์„ ์˜"), ์ €๋Š” pwsh ์— ์˜ฌ์ธํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฌผ์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. pwsh ํ•˜์ง€ ์•Š์„ ๊ฐ•๋ ฅํ•œ ์ด์œ ๊ฐ€์žˆ๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

pwsh ์ด ์‹คํ–‰ ํŒŒ์ผ์˜ ์ด๋ฆ„์ด๊ณ  powershell ๊ฐ€ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ / ๋ฐ”๋กœ ๊ฐ€๊ธฐ์ด๋ฉด ๋ˆ„๊ตฌ๋“ ์ง€ ์šฐ๋ คํ• ๊นŒ์š”?

์—ฌ๊ธฐ์—์„œ ์Šน์ธํ•˜๊ธฐ ์ „์— "ํ˜„์žฌ"๋ฒ„์ „์ด ๋ฌด์—‡์ด๋ฉฐ ์–ด๋–ป๊ฒŒ ์ฐธ์กฐํ•˜๊ณ  ๋Œ€์ƒ ๋ฒ„์ „์„ ์ฐธ์กฐ ํ•  ๊ฒƒ์ธ๊ฐ€?

@iSazonov๊ฐ€ ๊ท€ํ•˜์˜ ์งˆ๋ฌธ์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. powershell -v N ์™€ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒํ•˜๋ฉด pwsh ๋Œ€์‹  powershell (ํ•˜์ง€๋งŒ powershell ์ฒ ์ž๋Š” ์—ฌ์ „ํžˆ ์ง€์›๋ฉ๋‹ˆ๋‹ค).

๋‚ด ๊ด€์‹ฌ์‚ฌ๋Š” powershell-> powershell-6.0.0-beta.7๊ณผ ๊ฐ™์€ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ์— ๋Œ€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์–ธ์–ด์— ๋Œ€ํ•ด ๋งํ•˜๋ฉด ๋Œ€ํ™”์‹ ์„ธ์…˜์—์„œ ๋ณ„์นญ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ํŽธ์•ˆํ•œ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ณ„์นญ์€ ์Šคํฌ๋ฆฝํŠธ์—์„œ ํฐ ๊ณจ์นซ๊ฑฐ๋ฆฌ์ž…๋‹ˆ๋‹ค. powershell ์งง์€ ์ด๋ฆ„์— ๋Œ€ํ•ด์„œ๋„ ๋˜‘๊ฐ™์ด ๋ณด์ž…๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ์†๋„ ์œ ํ˜•์—๋Š” ์ข‹์ง€๋งŒ ๋””๋ ‰ํ„ฐ๋ฆฌ ํŠธ๋ฆฌ (symlinks)์—๋Š” ์‹ค์ œ๋กœ ๋ฌธ์ œ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ ๋‹ค๋ฅธ ์ƒ๊ฐ. ์†๋„ ์œ ํ˜•์— ๋Œ€ํ•ด ์ƒ๊ฐํ•ด ๋ณผ๊นŒ์š”? ์ œ์•ˆ ๋œ ๋ชจ๋“  ์‚ฌ๋ก€๊ฐ€ ์ด๋Ÿฌํ•œ ๊ด€์ ์—์„œ ์ข‹์€ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.
๋งˆ์ง€๋ง‰ ์ƒ๊ฐ์€ ๋ฐœ์Œ์ž…๋‹ˆ๋‹ค. ํฅ๋ฏธ๋กญ๊ฒŒ๋„ ๋Ÿฌ์‹œ์•„์–ด์—์„œ๋Š” PowerShell ํƒ„์ƒ ์ดํ›„ "ะฟะพัˆ"( "posh")์™€ hypocorism "ะฟะพัˆะธะบ"( "poshik")์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋Ÿฌ์‹œ์•„์ธ์ด๋ผ๋ฉด ๋ˆ„๊ตฌ๋‚˜ "posh"๋˜๋Š” "psh"์— ํˆฌํ‘œ ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋ช…ํ™•ํ•˜๊ฒŒ ๋งํ•˜๋ฉด pwsh ๋Š” ๋ณ„์นญ (PowerShell ์šฉ์–ด)์ด ์•„๋‹ˆ๋ฏ€๋กœ cmd.exe ๋˜๋Š” ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์กด์žฌํ•˜๋Š” ๋ฐฐ์น˜ ํŒŒ์ผ์—์„œ ํ˜ธ์ถœ ํ•  ์ˆ˜์žˆ๋Š” ๊ฒƒ์ด์–ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๊ฐœ์˜ ์‹คํ–‰ ํŒŒ์ผ์—†์ด ์งง์€ ์ด๋ฆ„๊ณผ powershell ๋ฅผ ๋ชจ๋‘ ์ง€์›ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ์‹ค์ œ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ช…ํ™•ํ•˜์ง€ ์•Š์ง€๋งŒ poweshell.exe๋Š” ๋น„๊ต์  ์ž‘์Šต๋‹ˆ๋‹ค.

posh ๋ฐ psh ๋Œ€ pwsh ๊ฒฝ์šฐ posh ๋ฐ psh ์˜ ์ฃผ์š” ๊ด€์‹ฌ์‚ฌ๋Š” ์ด๋ฏธ ์กด์žฌํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค (์•„๋ฌด๋ฆฌ ๋ˆˆ์— ๋„๋Š” ์ง€์— ๊ด€๊ณ„์—†์ด ์•„๋ฅด). curl ๋ณ„์นญ์ด ๊ธฐ์กด์˜ ๊ธฐ๋ณธ ๋„๊ตฌ์™€ ์ถฉ๋Œํ•˜์—ฌ ์ดˆ๊ธฐ์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ (์•„๋งˆ ์—ฌ๊ธฐ์„œ ์ง€๋‚˜์น˜๊ฒŒ์ฃผ์˜๋ฅผ ๊ธฐ์šธ ์˜€์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค) ์šฐ๋ฆฌ๋Š” ์งง์€ ์†์œผ๋กœ ๋น„์Šทํ•œ ์ƒํ™ฉ์„ ํ”ผํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค. pwsh ์ชฝ์œผ๋กœ ๊ธฐ์šธ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ pwsh ์ž์ฃผ ์ž…๋ ฅํ•˜๋ฉด ์ถฉ๋ถ„ํ•œ ์‚ฌ๋žŒ๋“ค์ด ์ต์ˆ™ํ•ด ์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค. :)

๋‹ค๋ฅธ ์ชฝ. PowerShell์—์„œ ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๊นŒ? ์‚ฌ์šฉ์ž ๋ณ„์นญ ๋ฐ IntelliSense๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž…๋ ฅ์„ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.
์—ฌ๊ธฐ์„œ ๋…ผ์˜ ์ค‘ ํ•˜๋‚˜์—์„œ ๋ณ„์นญ์— ๋Œ€ํ•ด ๋…ผ์˜ ํ•  ๋•Œ ํ˜„์žฌ ๋ชจ๋“  ๋ณ„์นญ์ด ์ฝ๊ธฐ ์ „์šฉ์ด ์•„๋‹ˆ์–ด์•ผํ•œ๋‹ค๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๋ณ„์นญ์„ ์ œ๊ฑฐ / ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋ณ„์นญ์ด ๋ฐฐํƒ€์ ์œผ๋กœ ํ‘œ์ค€์ด๋˜์–ด์„œ๋Š” ์•ˆ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ cmdlet ์ด๋ฆ„ ๋งŒ ํ‘œ์ค€์ด์–ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ด€์ ์—์„œ "powershell"์— ๋Œ€ํ•œ "ํ‘œ์ค€"๋ณ„์นญ์„ ์ œ๊ณตํ•ด์„œ๋Š” ์•ˆ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์ปค๋ฎค๋‹ˆํ‹ฐ ๋˜๋Š” ๋ฐฐํฌ์ž๋Š” ์ž์‹ ์ด ์ข‹์•„ํ•˜๊ณ  ์ •์‹ ์— ๋งž๋Š” ์ด๋ฆ„์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•˜๋ฉฐ IntelliSense๋„ ์ œ๊ณต ํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

@ SteveL-MSFT-๋‚˜๋Š” 'pwsh'๊ฐ€ ์•„๋งˆ๋„ ์‚ฌ๋žŒ๋“ค๊ณผ ์ž˜ ์–ด์šธ๋ฆด ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ฆ‰, ์—ฌ๋Ÿฌ๋ถ„์€ 'psh'๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋กœ ์ปฌ ์‚ฌ๊ฑด์„ ์–ธ๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹น์‹ ์ด ๋„ˆ๋ฌด ๋ฉ€๋ฆฌ ํ‰ํ–‰์„ ์„ ๊ทธ๋ ค์„œ ๊ตฌ์„์œผ๋กœ ์ž์‹  (์šฐ๋ฆฌ)์„ ๊ถŒํˆฌํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค!

'curl'์€ ๋ฆฌ๋ˆ…์Šค ์„ธ๊ณ„์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๋„๊ตฌ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. '์‚ด์•„์žˆ๋Š”'/ '์•กํ‹ฐ๋ธŒ ํ•œ' ์†Œํ”„ํŠธ์›จ์–ด์— ๋Œ€ํ•ด '์ปฌ'์„ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š๋„๋ก ์ง€๋‚˜์น˜๊ฒŒ ์กฐ์‹ฌํ•˜๋Š” ๊ฒƒ์ด ํ˜„๋ช…ํ•œ ๋ฐ, ์™œ์ด ์˜ˆ์˜๊ฐ€ ํฌ๊ธฐํ•˜๋Š” ๊ฒƒ์œผ๋กœ ํ™•์žฅ๋˜์–ด์•ผ ํ•˜๋Š”๊ฐ€?

์ปฌ ์‚ฌ๊ฑด์ด ์šฐ๋ฆฌ์—๊ฒŒ ๊ตํ›ˆ์„ ๊ฐ€๋ฅด์ณ์ฃผ๊ฒŒํ•˜์„ธ์š”. ์ž˜๋ชป๋œ ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค.

@AdilHindistan ์˜ ์กฐ์–ธ์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค (์“ฐ๋ ˆ๋“œ๊ฐ€ ๊ธธ์–ด์ง€๊ณ  ์ถ”์ ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต์Šต๋‹ˆ๋‹ค).

๋‚˜๋Š” psh์— ํˆฌํ‘œ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ถฉ๋Œ๋กœ ์–ธ๊ธ‰ ํ•œ ํ”„๋กœ์ ํŠธ๋Š” 10 ๋…„ ๋™์•ˆ ์ถœ์‹œ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์–ด๋–ค ๊ฒฝ์šฐ์—๋„ ํŒจํ‚ค์ง€ ์ €์žฅ์†Œ์— ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

์ฆ‰, psh ๊ฐ€ (์ฃผ์š”) ํŒจํ‚ค์ง€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์ผ๋ถ€๊ฐ€ ์•„๋‹Œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์˜€์Šต๋‹ˆ๋‹ค ( apt (Ubuntu, Debian) ๋ฐ yum (Fedora, RedHat))-์ฆ‰, ํ•ญ์ƒ _ ํ‹ˆ์ƒˆ ์ œํ’ˆ์ด์—ˆ์Šต๋‹ˆ๋‹ค.-_ ๊ทธ๋ฆฌ๊ณ  _ ๋ชจ๋“  ์˜๋„์™€ ๋ชฉ์ ์„ ์œ„ํ•ด 10 ๋…„ ์ด์ƒ์˜ ํ™œ๋™์ด ์—†์œผ๋ฉด ๋ฒ„๋ ค์ง€๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜์–ด ์™„๋ฒฝํ•œ ํ›„๋ณด๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

(๋ฐ˜๋Œ€๋กœ posh ๋Š” ์œ ์ง€ ๊ด€๋ฆฌ ์ƒํƒœ์— ๊ด€๊ณ„์—†์ด apt ๋ฅผ ํ†ตํ•ด ์—ฌ์ „ํžˆ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋Š” ํŒจํ‚ค์ง€๋ผ๋Š” ์‚ฌ์‹ค์€ ์ œ ์ƒ๊ฐ์— ์ž๊ฒฉ์ด ๋ฐ•ํƒˆ๋ฉ๋‹ˆ๋‹ค.)

psh ์ด ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์˜ต์…˜์ด๋ฉฐ ๊ณ ๋ ค๋˜์–ด์•ผํ•œ๋‹ค๋Š” ์ ์— ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ ์‹คํ–‰ ํŒŒ์ผ์˜ ์ด๋ฆ„์ด powershell[.exe] ์œ ์ง€๋œ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์—ฌ ์งง์€ ์ด๋ฆ„์„ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ / ์Šคํ…์œผ๋กœ _implement_ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์งง์€ ์ด๋ฆ„์ด ์˜ˆ๋ฅผ ๋“ค์–ด psh ๋ผ๊ณ  ๊ฐ€์ • ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค (ํ† ๋ก  ๋œ ์ด๋ฆ„ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋ฌด์ž‘์œ„๋กœ ์„ ํƒํ•˜๊ธฐ ์œ„ํ•ด).

Unix ํ”Œ๋žซํผ

์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์€ _additionally_ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

# Linux
/usr/bin$ sudo ln -s powershell psh

# macOS
/usr/local/bin$ sudo ln -s powershell psh

์ฆ‰, ๋‹จ์ˆœํžˆ ๊ธฐ์กด powershell ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” psh ๋ผ๋Š” ์ถ”๊ฐ€ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

macOS์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ ์ฒด์ธ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

/usr/local/bin/psh@ -> /usr/local/bin/powershell@ -> /usr/local/microsoft/powershell/6.0.0-beta.7/powershell

PS ์ฝ”์–ด ์ž์ฒด๋ฅผ ํฌํ•จํ•˜์—ฌ ๋ชจ๋“  ํ˜ธ์ถœ ์‰˜์€, ๋”ฐ๋ผ์„œ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค psh ์— ์งง์€ ๋Œ€์•ˆ์œผ๋กœ powershell .

์œˆ๋„์šฐ

Windows์—์„œ๋Š” ์ƒํ™ฉ์ด ๋” ๋ณต์žกํ•ฉ๋‹ˆ๋‹ค.

  • ์ตœ์†Œํ•œ beta.7๋ถ€ํ„ฐ PS _Core_์˜ _outside_์—์„œ PATH์—์žˆ๋Š” ๊ฒƒ์€ _Windows_ PowerShell๋ฟ์ž…๋‹ˆ๋‹ค.
  • : ๋Œ€์ƒ ํ˜ธ์ถœ์„์œ„ํ•œ ํŒŒ์›Œ ์‰˜ ์ฝ”์–ด ๋Œ€ Windows PowerShell์„์œ„ํ•œ ๋ณ„๊ฐœ์˜ shorthands์ด ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค psh PS ์ฝ”์–ด ๋ฐ wpsh ๊ฐ€ ํ”„๋กœ๊ทธ๋žจ๋„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—์ด ์ด๋ฆ„์ด ๋„ˆ๋ฌด ์ž˜ํ•ด์•ผํ•œ๋‹ค (์œˆ๋„์šฐ PS์— ๋Œ€ํ•œ apt ๋ฐ yum ์ €์žฅ์†Œ).

Windows PS

_Windows_ PS๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด $env:SystemRoot\System32\PowerShell\v1.0 (64 ๋น„ํŠธ) ๋ฐ $env:SystemRoot\SysWOW64\PowerShell\v1.0 (32 ๋น„ํŠธ)์— ๊ฐ๊ฐ ํ•˜๋‚˜์”ฉ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์ •์˜ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Set-Location $PSHOME
cmd /c mklink wpsh.exe powershell.exe

$PSHOME ๊ฐ€ $PATH ์— ์žˆ๊ธฐ ๋•Œ๋ฌธ์— PS Core ๋ฐ Windows PS ์ž์ฒด๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  ์‰˜์€ Window PS๋ฅผ wpsh ๋กœ ํ˜ธ์ถœ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

PS ์ฝ”์–ด

์†๊ธฐ ํŒŒ์ผ ์ž์ฒด๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ PATH์—์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ์— ๋ฐฐ์น˜ ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ PS Core์˜ $PSHOME ์ž์ฒด๊ฐ€ PATH์— ์žˆ์ง€ ์•Š์•„๋„ ํ˜ธ์ถœ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

64 ๋น„ํŠธ ๋Œ€ 32 ๋น„ํŠธ ๊ณ ๋ ค ์‚ฌํ•ญ์€ ์ ์šฉ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ (PS Core๋Š” 64 ๋น„ํŠธ ๋งŒ ํ•ด๋‹น) $env:SystemRoot (์ผ๋ฐ˜์ ์œผ๋กœ C:\Windows )๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ถˆํ–‰ํžˆ๋„ _symbolic links_์˜ ์‚ฌ์šฉ์€ ์ ์–ด๋„ ํ˜„์žฌ๋Š” ์˜ต์…˜์ด _ ์•„๋‹™๋‹ˆ๋‹ค _. PowerShell Core๋Š” ๋‹ค๋ฅธ ์ด๋ฆ„์„ ๊ฐ€์ง„ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ํ†ตํ•ด ํ˜ธ์ถœ ๋  ๋•Œ ์‹คํ–‰์„ ๊ฑฐ๋ถ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

_elevated_ PS ์„ธ์…˜์—์„œ :

Set-Location $env:SystemRoot   # typically, C:\Windows
cmd /c mklink psh.exe "C:\Program Files\PowerShell\6.0.0-beta.7\powershell.exe"

psh.exe ํ˜ธ์ถœ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

The managed DLL bound to this executable: 'powershell.dll', did not match own name 'psh.dll'.
A fatal error was encountered. This executable was not bound to load a managed DLL.

์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•„๋Š” ์‚ฌ๋žŒ์ด ์žˆ์œผ๋ฉด ์•Œ๋ ค์ฃผ์‹ญ์‹œ์˜ค.

(ํ˜ธ๊ธฐ์‹ฌ, ์‚ฌ์šฉ์ž๊ฐ€ ์ •์˜ํ•˜๋Š” ๊ฒฝ์šฐ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ _without extension_ - psh ๋Œ€์‹  psh.exe -. ํ˜ธ์ถœ์ด ์›์น™์ ์œผ๋กœ ์„ฑ๊ณตํ•˜์ง€๋งŒ ๋งค๊ฐœ ๋ณ€์ˆ˜๊ฐ€ ํ†ต๊ณผ๋˜์ง€ ์•Š์Œ)

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์€ ์Šคํ… ๋ฐฐ์น˜ ํŒŒ์ผ ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค (๋‹ค์‹œ _elevated_ PowerShell ์„ธ์…˜์—์„œ ์‹คํ–‰).

Set-Location $env:SystemRoot   # typically, C:\Windows
'@"%ProgramW6432%\PowerShell\6.0.0-beta.7\powershell.exe" %*' | Set-Content -Encoding ASCII psh.cmd

Windows PowerShell ๋ฐ PS Core ์ž์ฒด๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  ํ˜ธ์ถœ ์…ธ์€ PS Core๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ์•ฝ์–ด๋กœ psh ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@ mklement0 Linux / macOS์—์„œ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  Windows ์šฉ ๋ฐฐ์น˜ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ์ ์—์„œ ๋˜‘๊ฐ™์€ ์ƒ๊ฐ์„ํ•˜๊ณ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค (๊ทธ๋ฆฌ๊ณ  Windows PowerShell์—์„œ๋Š” powershell ๋กœ ์œ ์ง€๋˜๋ฏ€๋กœ Windows PowerShell์—์„œ๋Š” ์•„๋ฌด๊ฒƒ๋„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค).

๊ฐ€์žฅ ๋ช…๋ฐฑํ•œ ๊ฒƒ์€ powershell ์ด ๊ธฐ๋ณธ์ด๊ณ  psh ๊ฐ€ ๋งํฌ๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.ํ•˜์ง€๋งŒ ์ €๋Š” ์•„๋งˆ ์šฐ๋ฆฌ๊ฐ€ ๊ทธ๊ฒƒ์„ ๋’ค์ง‘์–ด์„œ psh ๊ฐ€ exe์™€ powershell ๋Š” ๋งํฌ์ž…๋‹ˆ๋‹ค. ๊ทธ ์ด์œ ๋Š” Windows๊ฐ€ ์•„๋‹Œ ์‚ฌ์šฉ์ž๋ฅผ ๋Œ€์ƒ์œผ๋กœํ•˜๊ณ  Windows PowerShell๊ณผ ์ฐจ๋ณ„ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ๋žŒ๋“ค์ด psh ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ PowerShell Core๋ฅผ ์ฐธ์กฐํ•˜๊ณ  powershell ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์„ ํ˜ธ๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. app-compat (์ผ๋ถ€ ์‚ฌ๋žŒ๋“ค์€ ์ „ํ™˜ ํ•  ๋•Œ ๊ทผ์œก ๊ธฐ์–ต). ๊ทธ๋Ÿฌ๋‚˜ ๋ชจ๋“  ์‚ฌ๋žŒ์ด์ด ์•„์ด๋””์–ด์— ๋Œ€ํ•ด ํŒ”๋ฆฌ๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

psh ๋งค์šฐ ์ธ๊ธฐ๊ฐ€ ๋งŽ๋‹ค๋ฉด powershell ์™€ psh ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ณ„์นญ์„ ์ถ”๊ฐ€ ํ•˜๋ ค๋ฉด https://stackoverflow.com/questions/2016722/one-dll-multiple-projects์— ๋„์›€์ด ๋  ์ˆ˜

psh๊ฐ€ exe๊ฐ€๋˜๊ณ  PowerShell์ด โ€‹โ€‹๋งํฌ๋กœ ๊ฐ•๋“ฑ๋œ๋‹ค๋Š” ์ƒ๊ฐ์€ ๋งˆ์Œ์— ๋“ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ฒญ์ค‘ ๊ทœ๋ชจ๋ฅผ ์•Œ ์ˆ˜์—†๊ณ  (์ตœ์†Œํ•œ ์ฒ˜์Œ๋ถ€ํ„ฐ) ์ž ์žฌ์ ์œผ๋กœ ์ž‘์„ ์ˆ˜์žˆ๋Š” ๋น„ Windows์—์„œ ์ž ์žฌ์ ์œผ๋กœ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก 10 ๋…„ ๊ฐ„์˜ ์ฒญ์ค‘ ์ถฉ์„ฑ๋„๋ฅผ ๋ฒ„๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

PowerShell v6์„ ๋งŽ์ด ๋ณผ์ˆ˜๋ก Windows๊ฐ€ ์•„๋‹Œ ์‚ฌ์šฉ์ž๊ฐ€ PowerShell์„ ์ฑ„ํƒํ•˜๋„๋ก ์„ค๋“ํ•˜๋ ค๋Š” ์‹œ๋„์—์„œ ๊ธฐ์กด Windows ์‚ฌ์šฉ์ž๊ฐ€ ๋ฌด์‹œ๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์€ ์–ด๋””์—์„œ ๋๋‚˜๋‚˜์š”?

@RichardSiddaway PowerShell ํŒ€์ด Windows ์‚ฌ์šฉ์ž๋ฅผ ์ „ํ˜€ ๋ฌด์‹œํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ์ฃผ๋กœ Windows Phone์„ ์‚ฌ์šฉํ•˜๋Š” Windows ์‚ฌ์šฉ์ž๋ผ๋Š” ์ธ์ƒ์„๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ์„ ๋ฆฌ๋ˆ…์Šค ๊ฐœ๋…์—์„œ๊ฐ€ ์•„๋‹ˆ๋ผ cmd์—์„œ powershell๋กœ ์˜ฎ๊ธฐ๋Š” ๋‚ด ์ž์‹ ์˜ ๋„์ „์—์„œ ์ด๊ฒƒ์„ ์š”์ฒญํ•œ ์‚ฌ๋žŒ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์‹ค Windows PowerShell์€ ์„ฑ์ˆ™ํ•œ ์ œํ’ˆ์ด์ง€๋งŒ ๊ต์ฐจ ํ”Œ๋žซํผ์„ ์—ผ๋‘์—๋‘๊ณ  ๊ตฌ์ถ•๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ ค๋ฉด ์ดˆ๊ธฐ ํˆฌ์ž๋Š” ๋‘ ์„ธ๊ณ„ ๋ชจ๋‘์— ์ด์ต์ด ๋  ํฌ๋กœ์Šค ํ”Œ๋žซํผ์— ๋” ๋†’์•„์•ผํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ๋ช‡ ๋ฒˆ์˜ ๋ฆด๋ฆฌ์Šค์—์„œ ์ƒํ™ฉ์ด ๊ท ์ผํ•ด์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ณ„์นญ ๋ฐ ๋งค๊ฐœ ๋ณ€์ˆ˜ ๋ณ„์นญ ์™ธ์— Windows ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ถ€์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๊ฒƒ์€ ๋งŽ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์šฐ๋ ค๋˜๋Š” ํŠน์ • ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ๋ฌธ์ œ์—์„œ ์ œ๊ธฐํ•˜์‹ญ์‹œ์˜ค. ํ† ๋ก ์€ ํ”Œ๋žซํผ์— ๋„์›€์ด๋˜๋ฉฐ PowerShell์— ๋Œ€ํ•œ ํŠน๋ณ„ํ•œ ์‚ฌํ•ญ์ด ์ „ํ™˜ ๊ณผ์ •์—์„œ ์†์‹ค๋˜์ง€ ์•Š๋„๋กํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

@ SteveL-MSFT psh ๋˜๋Š” pwsh ๊ฐ€ .exe๊ฐ€๋˜๋Š” ์ด์œ ๋ฅผ ์ข€ ๋” ์„ค๋ช…ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๊ทธ๊ฒƒ์œผ๋กœ๋ถ€ํ„ฐ ์–ป๋Š” ์ด์ต์ด ์žˆ๋‹ค๋ฉด ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ๋” ์„ ํ˜ธ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฐฐ์น˜ ํŒŒ์ผ์— ์•„์•ผ. ์–ด์จŒ๋“  Windows์—์„œ symlink๊ฐ€ ์ž‘๋™ํ•˜๋„๋กํ•˜๋ ค๋ฉด? ์ฐจ๋ผ๋ฆฌ cmd๋ฅผ ํ†ตํ•ด ๋‹ค๋ฅธ ๋ ˆ์ด์–ด๋ณด๋‹ค ์žˆ์Šต๋‹ˆ๋‹ค.

@ dragonwolf83 ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์‚ฌ๋žŒ๋“ค์€ 10 ์ž๋ณด๋‹ค 3 ์ž ๋˜๋Š” 4 ์ž ์ž…๋ ฅ์„ ์„ ํ˜ธํ•˜๋ฏ€๋กœ ํ•ญ์ƒ powershell ์ž…๋ ฅ์„ ์ง€์›ํ•  ๊ฒƒ์ด์ง€๋งŒ ์žฅ๊ธฐ์ ์ธ ๊ด€์ ์—์„œ ๋ณด๋ฉด ๋” ์งง์€ ๋ฒ„์ „์— ์ตœ์ ํ™”ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

Windows PowerShell์— ๋Œ€ํ•œ ์˜๊ฒฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

@ dragonwolf83 :

๋ฐฐ์น˜ ํŒŒ์ผ์— ์•„์•ผ. Windows์—์„œ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์ž‘๋™์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๋“ค๋ ค์š”. ์•„์•„, ๋„์›€์„ ์ฒญํ•˜ ๋Š” ๋‚˜์˜

powershell.exe๋Š” 78k์ž…๋‹ˆ๋‹ค. psh.exe๋กœ 78k๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ๊ทธ๋ ‡๊ฒŒ ๋‚˜์ ๊นŒ์š”?

2 ๊ฐœ์˜ ์ค‘๋ณต ์‹คํ–‰ ํŒŒ์ผ์„ ๊ฐ–๋Š” ๊ฒƒ์€ ์‰ฌ์šด ํ•ด๊ฒฐ์ฑ… ์ผ ์ˆ˜ ์žˆ์ง€๋งŒ ์‚ฌ์šฉ์ž๊ฐ€ 2 ์‚ฌ์ด์— ์ฐจ์ด๊ฐ€ ์žˆ๋Š”์ง€ ๊ณ ๋ฏผํ•˜๊ธฐ ์‹œ์ž‘ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ์ƒํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ˜ผ๋ž€์„ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. PowerShell์„ ํ˜ธ์ถœ / ์—ด๊ธฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ ์ฃผ๋ฉด ์ฐจ์ด์ ์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋–ค ์˜ˆ์ œ๋ฅผ ์„ ํƒํ•ด์•ผํ•˜๋Š”์ง€ ์ฆ‰์‹œ ๊ถ๊ธˆํ•ด ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

IMO ์ด๊ฒƒ์€ ๋ฐ”๋ณด์ž…๋‹ˆ๋‹ค. cmd.exe๋Š” Windows 10 1703์—์„œ ๋Œ€๋ถ€๋ถ„ ์ˆจ๊ฒจ์ ธ ์žˆ์œผ๋ฏ€๋กœ ๋ ˆ๊ฑฐ์‹œ ์…ธ์—์„œ powershell.exe๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ๊ฑฐ์˜ ์—†์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์— ๋Œ€ํ•œ ์—ด๋ ฌํ•œ ํŒฌ์ด ์•„๋‹™๋‹ˆ๋‹ค. powershell ๋ฅผ ์–ผ๋งˆ๋‚˜ ์ž์ฃผ ์ž…๋ ฅํ•˜์—ฌ ๋ฌธ์ œ๊ฐ€๋ฉ๋‹ˆ๊นŒ? (๋˜ํ•œ ์ „์ฒด ์ž์ „๊ฑฐ ํ†ตํ–‰ ๋ฌธ์ œ;)) Windows 10 ๋ฐ Server 2016์—์„œ "์‹œ์ž‘ ๋ฉ”๋‰ด๋ฅผ ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์œผ๋กœ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ Win + X๋ฅผ ๋ˆ„๋ฅผ ๋•Œ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ๋ฅผ Windows PowerShell๋กœ ๋Œ€์ฒด"๋ฅผ ์„ค์ •ํ•˜๋ฉด Win + x, i ๋˜๋Š” Linux์˜ ์งง์€ ๊ธธ์ด์ž…๋‹ˆ๋‹ค. , ์›ํ•˜๋Š” ์ด๋ฆ„์œผ๋กœ ๊ธฐ์กด ์…ธ์— ๋ณ„์นญ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์ฆ‰, ๋‹ค์Œ์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

  • ps1 -Windows์˜ ํŒŒ์ผ ํ™•์žฅ์ž ๋’ค์— ์งง๊ณ  ์ž…๋ ฅํ•˜๊ธฐ ์‰ฌ์šฐ ๋ฉฐ ๊ธฐ์–ต์— ๋‚จ๋Š”
  • psps -์งง๊ณ  ํƒ€์ดํ•‘์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ '์ „ํ˜•์ ์ธ M $ bloat'์†์–ด์— ๊ฐœ๋ฐฉ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ips -Invoke-PowerShell์˜ ๊ฒฝ์šฐ์ฒ˜๋Ÿผ RedHat ๋˜๋Š” Ubuntu ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ํŒจํ‚ค์ง€๋กœ ํ‘œ์‹œ๋˜์ง€ ์•Š๊ณ  yum provides "*/ips" ๋Š” ๋น ๋ฅธ ๊ฒ€์‚ฌ์—์„œ ์ถฉ๋Œ ํ•  ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์—†์Œ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ๋ฌผ์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค : ๋ˆ„๊ตฌ๋“ ์ง€ pwsh๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๊ฐ•๋ ฅํ•œ ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์ถ”์•…ํ•˜๊ณ  ๋ฐœ์Œ ํ•  ์ˆ˜ ์—†์œผ๋ฉฐ 'powershell'์ž์ฒด๋ณด๋‹ค ๋” ๋งŽ์€ ์Œ์ ˆ์ด ํ•„์š”ํ•˜๋ฉฐ ์ž…๋ ฅํ•˜๊ธฐ๊ฐ€ ํŠนํžˆ ์‰ฝ์ง€ ์•Š์œผ๋ฉฐ ์ธํ„ฐ๋„ท์—์„œ ๋งํ•˜๋Š” pwnd / pwnt์—์„œ ํŒŒ์ƒ ๋œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

Windows์—์„œ PowerShell์„ ๊ธฐ๋ณธ ์…ธ๋กœ ๊ณง ์‚ฌ์šฉํ•˜๊ฒŒ๋˜๋ฉด ํŒŒ์ผ ์ด๋ฆ„ (๊ธธ์ด)์ด ์ค‘์š”ํ•˜์ง€ ์•Š๊ฒŒ๋ฉ๋‹ˆ๋‹ค.

PowerShell Core๋Š” ์ด์‹ ๊ฐ€๋Šฅํ•œ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค. Unix๋„ ๊ณ ๋ คํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

@ PowerShell์„ / PowerShell์„-์œ„์›ํšŒ๋Š”์ด ๋ฌธ์ œ๋ฅผ ๋…ผ์˜ ์–ด๋””์— ์šฐ๋ฆฌ๊ฐ€ ๋„์ฐฉํ•˜๋Š” PSCore6 ๋ฐ”์ด๋„ˆ๋ฆฌ ๋‹จ์ง€๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค pwsh ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ๋ฐ”๋กœ ๊ฐ€๊ธฐ์—†์ด์—๊ฒŒ / ๋ณ„์นญ powershell . ์ด์ ์€ Windows PowerShell์„ ์‚ฌ์šฉํ•˜๋“  PowerShell Core๋ฅผ ์‚ฌ์šฉํ•˜๋“  Windows์—์„œ ๋ชจํ˜ธํ•จ์—†์ด์ด๋ฅผ ๋ช…์‹œ ์ ์œผ๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. Windows๊ฐ€ ์•„๋‹Œ ๊ฒฝ์šฐ ์ž…๋ ฅํ•˜๋Š” ๊ฒƒ์ด ๋” ์งง๊ณ  ๋‹ค๋ฅธ ์…ธ ์ด๋ฆ„๊ณผ ๋” ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. ๊ณ ๊ฐ ํ”ผ๋“œ๋ฐฑ์— ๋”ฐ๋ผ ํ–ฅํ›„ ์–ธ์ œ๋“ ์ง€ powershell ๋งํฌ / ๋ฐ”๋กœ ๊ฐ€๊ธฐ / ๋ณ„์นญ์„ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด ํˆฌํ‘œ๋Š” psh.exe์ž…๋‹ˆ๋‹ค.

@jandrusk PR ์ด ์–ด์ œ ์ด๋ฏธ ๋ณ‘ํ•ฉ๋˜์—ˆ์œผ๋ฏ€๋กœ pwsh.exe๊ฐ€๋ฉ๋‹ˆ๋‹ค. Jeffrey๋Š” ์ด๋ฏธ ์—ฌ๊ธฐ ์— ๋Œ€ํ•ด ํŠธ์œ—

์ƒˆ๋กœ์šด PassWord / ์ฃผ๋‹น / PoliceWoman SHell ๋งŒ์„ธ!

๋‚ด ํˆฌํ‘œ๋Š” ๊ทธ๊ฒƒ์„ ๋‚ด๋ฒ„๋ ค ๋‘๋Š” ๊ฒƒ์ด์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” pwsh๋ฅผ ์–ด๋–ป๊ฒŒ ๋ฐœ์Œํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

pwsh
p.wush
p.woosh
puh.wush

๋ฐ”๋ผ๊ฑด๋Œ€ ๊ทธ๋ณด๋‹ค ๋” ๋‚˜์€ ๊ฒƒ

๋‚ด๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  @jonathanmedd pwish ๊ฐ™์€ wish A๋ฅผ p .

_pwsh_๊ฐ€ ์žฌ๊ท€ ์  ์•ฝ์–ด (_GNU_์™€ ์œ ์‚ฌ)๋ผ๋Š” ์ ์„ ๊ฐ์•ˆํ•  ๋•Œ-์ œ๋ฐœ, ์™œ pwSH์ž…๋‹ˆ๊นŒ? - "์ œ๋ฐœ"์ด๋ผ๊ณ  ๋งํ•˜๋Š” ์ž…์ˆ ์„ ๊ฐ€์ง„ ๊ท€์—ฌ์šด ํ† ๋ผ์ฒ˜๋Ÿผ "pweesh"๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

์ œ์ณ๋‘๊ณ  ๋†๋‹ด :

  • ๊ฐœ์ธ์ ์œผ๋กœ pwsh ์— ์ •์ฐฉํ•˜๋Š” ๊ฒƒ์ด ๋ถˆํ–‰ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ, ๊ณง ์ต์ˆ™ํ•ด ์งˆ ๊ฒƒ์ด๋ฉฐ ๋‹ค์‹œ๋Š” ์ƒ๊ฐํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

  • ๋ฐœ์Œ์— ๊ด€ํ•ด์„œ : ์ €๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ์ด๋ฆ„์ด ์ถฉ๋ถ„ํžˆ ์งง๊ณ  PowerShell์˜ ์„ธ๊ณ„์— ์‚ฌ๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ๋งคํ•‘์ด ๋ถ„๋ช…ํ•˜๋‹ค๋Š” ์ ์„ ๊ฐ์•ˆํ•  ๋•Œ ํ•˜๋‚˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (์œ ๋‹‰์Šค ์„ธ๊ณ„์˜ ์˜ˆ : zsh ๋Š” ํ•œ ์Œ์ ˆ์ด ์•„๋‹ˆ๋ผ zee shell ๋˜๋Š” zed shell ๋กœ ๋ฐœ์Œ๋ฉ๋‹ˆ๋‹ค.)

P-Dub Shell ?

P Double U Shell ๋˜๋Š” P Double U S H ๋Š” ๋งํ•˜๊ธฐ๊ฐ€ ๊ณ ํ†ต ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. PowerShell ๋ณด๋‹ค ๋” ๋งŽ์€ ์Œ์ ˆ์ด ์žˆ์ง€๋งŒ PowerShell ๋ฅผ pwsh ์™€ ๊ตฌ๋ถ„ํ•˜๊ณ  ์‹ถ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. bash ๊ฐ€ Bourne-Again Shell ์™€ ๊ตฌ๋ณ„๋˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์•„๋งˆ๋„ PowerShell๊ณผ pwsh๋ฅผ ๊ตฌ๋ณ„ํ•˜๊ณ  ์‹ถ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ณต์‹์ ์ธ ์ „์ฒด ์ด๋ฆ„ ์˜ ๊ด€์ ์—์„œ ๋ณด๋ฉด _PowerShell Core_ ๋Œ€ _Windows PowerShell _-_
์ปจํ…์ŠคํŠธ์—์„œ ๋ช…ํ™•ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ ์ ˆํ•œ ํ•œ์ •์ž๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ช…ํ™• ํ•ด์ง‘๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์•„๋งˆ๋„ ๊ทธ๋ ‡๊ฒŒ ์ž์ฃผ ํ•„์š”ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค (์˜ˆ : ์ˆœ์ˆ˜ Unix ์ปจํ…์ŠคํŠธ์—์„œ).

์žฅ๊ธฐ์ ์œผ๋กœ๋Š” PowerShell Core๊ฐ€ "๋ชจ๋“ "ํ”Œ๋žซํผ์—์„œ ์‹คํ–‰๋˜๋Š” ์—๋””์…˜์ด๋ผ๋Š” ์ ์„ ๊ฐ์•ˆํ•  ๋•Œ _PowerShell_์ด ํ•œ์ •์ž-_Windows_-์™€ ํ•จ๊ป˜ _PowerShell Core_ ( "๊ธฐ๋ณธ"PowerShell)์— ๋Œ€ํ•œ ์ผ๋ฐ˜์ ์ธ ๋น„๊ณต์‹ ์ถ•์•ฝ ํ˜•์ด ๋˜๋”๋ผ๋„ ๋†€๋ผ์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Windows ๋ฒ„์ „์„ ์ฐธ์กฐํ•˜๋Š” ๋ฐ๋งŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์—ฌ๋‹ด์œผ๋กœ:

bash๊ฐ€ Bourne-Again Shell๊ณผ ๊ตฌ๋ณ„๋˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

bash _is_ _Bourne-Again SHell_-์ด์ „ ๋ชจ๋ธ ์ธ _Bourne SHell_ ( sh ,
POSIX๊ฐ€ ์–ธ์–ด๋ฅผ ํ‘œ์ค€ํ™”ํ•˜๊ธฐ ์ „์—).

@ mklement0 ์ €๋Š” pwsh ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ PowerShell ์–ธ์–ด / ์‰˜๊ณผ ๊ตฌ๋ณ„ํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. PowerShell์˜ ๋‹ค๋ฅธ ๊ตฌํ˜„ / ํ”Œ๋žซํผ์„ ๊ตฌ๋ณ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. bash ์ด ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ Bourn-Again SHell ์™€ ๊ตฌ๋ณ„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ๋“ค์€ ์„œ๋กœ ๋ฐ”๊ฟ”์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ 2๋ฅผ ๊ตฌ๋ณ„ํ•ด์•ผ ํ•  ๋•Œ pwsh ๋ฐœ์Œํ•˜๋Š” ๋ช…ํ™•ํ•œ ๋ฐฉ๋ฒ•์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

ํ‘ธ์‹œ : ๋ฏธ์†Œ :

๊ทธ๋ž˜์„œ ์•„๋งˆ๋„ :

p shell ๋˜๋Š” p w shell

@markekraus :

์•„, ์„ค๋ช… ํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฐ”์ด๋„ˆ๋ฆฌ์˜ _exact_ ์ด๋ฆ„์„ ์ „๋‹ฌํ•˜๋ ค๋ฉด _spelling out_์ด๋ผ๋Š” ์งง์€ ๋ฐœ์Œ์ด ์—†์œผ๋ฉด ์ด๋ฆ„์ด ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค ( posh ์™€ ๊ฐ™์€ ๊ฒฝ์šฐ์—๋งŒ ์ž‘๋™ํ–ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค).

๋”ฐ๋ผ์„œ _PowerShell ๋ฐ”์ด๋„ˆ๋ฆฌ / ์‹คํ–‰ ํŒŒ์ผ _์„ ์ฐธ์กฐํ•˜๋Š” ๊ฒƒ์€ ์ด๋ฏธ ์•Œ๊ณ ์žˆ๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ž‘๋™ํ•ด์•ผํ•˜๋ฉฐ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋Š” ์–ด์จŒ๋“  ์ฒ ์ž๋ฅผ ์จ์•ผํ•ฉ๋‹ˆ๋‹ค.

๋ฐ”์ด๋„ˆ๋ฆฌ์˜ ์ •ํ™•ํ•œ ์ด๋ฆ„์„ ์ „๋‹ฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์ด๋ฆ„์˜ ์ฒ ์ž๊ฐ€ ์งง์€ ๋ฐœ์Œ์ด ๋„์›€์ด๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์— ๋™์˜ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์— ๋™์˜ํ•ด์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค ๐Ÿ˜ƒ.

์˜ˆ๋ฅผ ๋“ค์–ด "bash"๋ฐ "posh"์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ž‘๋™ํ•˜๋Š” _desire_๋ฅผ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์œ„์—์„œ ์ฆ๋ช… ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ "pwsh"์™€๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ ๋ถ™์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

"pwsh"์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ธ€์Ž„, ๊ทธ๋Ÿฐ ํƒœ๋„๋กœ๋Š” ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค! ๐Ÿ˜‰ ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ pwish ๋ผ๊ณ  ๋ถ€๋ฅด๊ณ  ์•„๋งˆ๋„ ๊ณ„์† ๊ทธ๋ ‡๊ฒŒ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ๋‹ค๋ฅธ ๊ฒƒ์„ ์ƒ๊ฐํ•ด ๋‚ด๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋Œ€ํ™”๋ฅผ ๋งŒ๋“ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. push ์€ ์ผ๋ถ€ ์–ธ์–ด์˜ w ๋ฐœ์Œ์„ ๊ณ ๋ คํ•  ๋•Œ ์ข‹์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค. pwsh ์™„์ „ํžˆ ํšŒ๋ณต ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค, IMO. ์•„๋งˆ๋„ ๋ชจ๋‘๊ฐ€ p w s h ์— ์ •์ฐฉ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ "์šฐ๋ฆฌ๋Š” ์—ฌ๊ธฐ์„œ ๋๋‚ฌ๋‹ค"๋ผ๊ณ  ๋งํ•˜๊ณ  ๊ฒฐ์ •๋œ ๋ฌธ์ œ๋ฅผ ๊ณ ๋ คํ•˜๊ธฐ์—๋Š” ๋„ˆ๋ฌด ์ด๋ฅด๋‹ค, IMO.

:)

๋„ค๊ฐ€ ์˜ณ์•„.

์ด๋ฏธ ์•Œ๊ณ ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค (์ด๋ฏธ pwsh ํ•ด๋‹น ์งง์€ ์ด๋ฆ„์„ ๋งคํ•‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๊ณ ์žˆ๋Š” ์‚ฌ๋žŒ)์„ ์œ„ํ•ด _ ๊ด€์Šต์— ๋”ฐ๋ผ _ ์„ค์ •๋œ ์งง์€ ์ด๋ฆ„๋ณด๋‹ค๋Š” ์•„์ง PowerShell์— ์ต์ˆ™ํ•˜์ง€ ์•Š์€ ์‚ฌ๋žŒ์—๊ฒŒ _ ์ •ํ™•ํ•œ ์ฒ ์ž _๋ฅผ ์ „๋‹ฌํ•˜๋Š” ์ธก๋ฉด์— ๋„ˆ๋ฌด ๋งŽ์€ ์ดˆ์ ์„ ๋งž์ถ”๊ณ  ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

MSPosh๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ? PowerShell.exe๋ณด๋‹ค ์งง๊ณ  ํ‘œ์ค€์„ ๋”ฐ๋ฅด๋ฉฐ The PowerShell Hero ?

@ 1RedOne PowerShell ์˜์›… / ์•„๋ฐ”ํƒ€๋Š” ํ•ญ์ƒ ๋‚ด โค๏ธ์—์„œ PoSH-Chan์ž…๋‹ˆ๋‹ค.

PWSH ํŒ€์ด ์ด๋ฆ„์„ ๋ฐ”๊พธ๊ธฐ ์œ„ํ•ด ์„œ๋‘๋ฅด๊ณ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. :-)

pscmd.exe์— ํˆฌํ‘œํ•ฉ๋‹ˆ๋‹ค.

์ฐฝ์— cmd๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์‹ค์ œ๋กœ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค! ์‹ค์ œ๋กœ cmd๋ฅผ ๋Œ€์ฒดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๊ทผ์œก ๊ธฐ์–ต ๋ฌธ์ œ๋ผ๋ฉด ๊ทธ ๋ฌธ์ œ๋ฅผ ๊ณ ์ณ ๋ณด์ž ..

๋ฉ‹์ง„ ์ƒˆ ์ด๋ฆ„์„ ์ฐพ๋Š” ๊ฒƒ์ด ์žฌ๋ฏธ๋ฅผ์œ„ํ•œ ๊ฒƒ์ด๋ผ๋ฉด pscore.exe ์—ฌ์•ผํ•ฉ๋‹ˆ๋‹ค.

๋‚ด 2 ์„ผํŠธ.

pwsh , wwrld์˜ fwremwst Wbject-Wriented ์…ธ. ์ด ํŒจํ„ด์„ ๊ณ„์†ํ•˜๋Š” ์ƒˆ๋กœ์šด cmdlet์„ tw ๊ฐœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Get-Cwntent servers.txt | FwrEach-Wbject { 
    Invwke-Cwmmand -CwmputerName $_ -Scriptblwck { .. }
}

;)

-

Ref ๋ฐœ์Œ, " powsh "๋Š” ๋ถ€๋“œ๋Ÿฌ์šด "s"์™€ ํ•จ๊ป˜ "pouch"๋˜๋Š” "couch"์ฒ˜๋Ÿผ

The managed DLL bound to this executable: 'pwsh.dll', did not match own name 'powershell.dll'.
A fatal error was encountered. This executable was not bound to load a managed DLL.

์ด ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๊ฐ€์ด ๋ฌธ์ œ์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๊นŒ?

์‹ค์ œ ์ด๋ฆ„ ๋ฌธ์ œ์— ๊ด€ํ•ด์„œ๋Š” Bash๊ฐ€ Bourne Again SHell์ด๊ธฐ ๋•Œ๋ฌธ์— pwsh์— ํˆฌํ‘œํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” PWSH์— ํˆฌํ‘œํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ํ‘ธ์‹œ๋ผ๊ณ  ๋ฐœ์Œ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๋‚˜๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ posh๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋งŽ์ด ๋ณด์•˜ ๊ธฐ ๋•Œ๋ฌธ์— MS๊ฐ€ ๊ทธ๊ฒƒ์„ posh๋ผ๊ณ  ๋ถ€๋ฅด์ง€ ์•Š์œผ๋ ค ๊ณ  ํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ ๊ทธ๊ฒƒ์ด ๋‚˜์˜ ๋‘ ๋ฒˆ์งธ ์„ ํƒ์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” pwr ํˆฌํ‘œํ•ฉ๋‹ˆ๋‹ค!

@DaleMitchell ์–ด๋–ป๊ฒŒ ๊ทธ ์˜ค๋ฅ˜๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๊นŒ? ์ง์ ‘ ๋นŒ๋“œ ํ•œ ๊ฒฝ์šฐ build.psm1์„ ๋‹ค์‹œ๋กœ๋“œ ํ–ˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ posh๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋งŽ์ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด https://github.com/dahlbyk/posh-git .

pwsh ์€ posh ๋กœ ๋ฐœ์Œ๋ฉ๋‹ˆ๋‹ค. @SaschaNaz POSH๋Š” ๋ถˆํ–‰ํžˆ๋„ ์ด๋ฏธ ์‰˜๋กœ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

๋ฐœ์Œ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ @ PowerShell / powershell-committee ํˆฌํ‘œ๋ฅผ ๋†“์ณค์Šต๋‹ˆ๊นŒ? :)

๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ๊ทธ๊ฒƒ์„ Microsoft Next Generation Command Line Interface Shell Experience 2017 ๋กœ ๋ฐœ์Œ ํ•  ์ˆ˜์žˆ์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ๊ทธ๋ƒฅ powershell ๋ผ๊ณ  ๋ฐœ์Œ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

Microsoft Next Generation Command Line Interface Shell Experience 2017 ์„œ๋น„์Šค ํŒฉ 2๊ฐ€ ์ถœ์‹œ ๋  ๋•Œ๊นŒ์ง€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ถˆํ–‰ํžˆ๋„ POSH๋Š” ์ด๋ฏธ ์‰˜๋กœ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ, ์‚ฌ์šฉ์ž๊ฐ€ ๊ณ ๊ธ‰ ์Šค๋Ÿฌ์›€์„ ์›ํ•˜๊ณ  sudo apt install posh ์‹œ๋„ํ•œ ๋‹ค์Œ ์™„์ „ํžˆ ๋‹ค๋ฅธ ์…ธ์„ ์–ป์„ ๋•Œ ๋งค์šฐ ํ˜ผ๋ž€ ์Šค๋Ÿฌ์šธ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

BTW, poh-sh ๋˜๋Š” pah-sh ? ๊ฐ€์žฅ ํ™•์‹คํ•˜๊ฒŒ ํ›„์ž๋Š”?

ํŒจํ‚ค์ง€ ์ด๋ฆ„์€ ์—ฌ์ „ํžˆ โ€‹โ€‹powershell์ด๋ฉฐ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์—†์Šต๋‹ˆ๋‹ค.

sudo apt install powershell

๋น ๋ฅธ (์˜๊ฒฌ์ด์žˆ๋Š”) ์ตœ์‹  ํ† ๋ก  ๊ฒŒ์‹œ๋ฌผ :

  • ๋ฐ”์ด๋„ˆ๋ฆฌ์˜ _ ํŒŒ์ผ๋ช… _ : ๊ฒฐ์ •์ด ๋‚ด๋ ค ์ ธ์„œ ๊ณต๊ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค : pwsh ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค.

  • _ ๋ฐœ์Œ _์˜ ๊ฒฝ์šฐ :

    • ๋ฐ”์ด๋„ˆ๋ฆฌ์˜ ์ •ํ™•ํ•œ ์ฒ ์ž๋ฅผ _uninitiated_์— ์ „๋‹ฌํ•  ์ˆ˜์žˆ๋Š” ์‚ฌ๋žŒ์€ ์—†์Šต๋‹ˆ๋‹ค. ์ฒ ์ž๋ฅผ ์จ์•ผํ•ฉ๋‹ˆ๋‹ค.

    • _initiated_์—๊ฒŒ "PowerShell"์€ ํ‹€๋ฆผ์—†์ด ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์ž…๋‹ˆ๋‹ค. _product_ ๋˜๋Š” ๋ฐ”์ด๋„ˆ๋ฆฌ _์˜ _file ์ด๋ฆ„ ( @markekraus ์˜ ๊ด€์‹ฌ์‚ฌ)์„ ์ฐธ์กฐํ•˜๋Š”์ง€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ปจํ…์ŠคํŠธ์—์„œ ๋ช…ํ™•ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ํ›„์ž์˜ ๊ฒฝ์šฐ ์ž…๋ฌธ์ž๋Š” ์ž๋™์œผ๋กœ ๋จธ๋ฆฌ ์†์— pwsh ๋กœ ๋ฒˆ์—ญํ•ฉ๋‹ˆ๋‹ค.
      ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋ช…ํ™•์„ฑ์„ ์œ„ํ•ด "Core"๋ฐ "Windows"๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    • ๋งํ•  ํ•„์š”๋„์—†์ด, ๋ช…ํ™•ํ•œ ๋น„๊ณต์‹์  ์ธ ํ•œ ์Œ์ ˆ ๋ณ„๋ช…์— ๋Œ€ํ•œ ์—ด์ •์  ์ธ ํƒ๊ตฌ๋Š” ๊ณ„์† ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค ...
      ์–ด๋–ค ๊ฒฝ์šฐ์—๋„ pwsh ์— ๋Œ€ํ•œ ์ •์‹ ์  ๋งคํ•‘ ์ž‘์—…์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— "Posh"์™€ ๊ฐ™์ด ๋น„๊ณต์‹์ ์œผ๋กœ ํ™•๋ฆฝ ๋œ ์‚ฌ๋žŒ๋“ค์€ ๊ณ„์† ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์˜ˆ์ „์—๋Š” ํ”Œ๋žซํผ ๊ฐ„ ์Šคํฌ๋ฆฝํŠธ ์ง€์›์„ ์œ„ํ•ด MKS Toolkit์„ ์‚ฌ์šฉํ–ˆ์„ ๋•Œ ksh.exe ํ–ˆ์ง€๋งŒ ํ•ญ์ƒ KornShell ๋ผ๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ pwsh ์ด์ง€๋งŒ PowerShell์ด๋ผ๊ณ  ๋ถ€๋ฅผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฐ”์ด๋„ˆ๋ฆฌ ์ด๋ฆ„์ด pwrsh ์ด์—ˆ์ง€๋งŒ ๊ทธ ๋ฐฐ๊ฐ€ ํ•ญํ•ดํ–ˆ๋‹ค๋ฉด์ด ๋ชจ๋“  "๋ฐ”์ด๋„ˆ๋ฆฌ ์ด๋ฆ„์„ ์–ด๋–ป๊ฒŒ ๋ฐœ์Œํ•ฉ๋‹ˆ๊นŒ"๋ฌธ์ œ๋ฅผ ํ”ผํ•  ์ˆ˜ ์žˆ์—ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

"์˜›๋‚ "(15 ๋…„ ์ „์ด ์ค‘์š”ํ•ฉ๋‹ˆ๊นŒ?)์œผ๋กœ ๋Œ์•„๊ฐ€์„œ ์šฐ๋ฆฌ ํŒ€์€ ๋ฐ”์ด๋„ˆ๋ฆฌ "kish"๋ผ๊ณ  ๋ถˆ๋ €๊ณ  "KornShell"์€ ์‰˜์— ๋Œ€ํ•œ ์ผ๋ฐ˜์ ์ธ ๋…ผ์˜๋ฅผ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜ˆ:

"ooser bin kish๋ฅผ ์ž…๋ ฅ ํ•œ ๋‹ค์Œ Enter ํ‚ค๋ฅผ ๋ˆ„๋ฅด์‹ญ์‹œ์˜ค. ์ด์ œ KornShell์— ์žˆ์Šต๋‹ˆ๋‹ค."

15 ๋…„ ์ „์ด ์ค‘์š”ํ•ฉ๋‹ˆ๊นŒ?

๋‚ด๊ฐ€ ์ถ”์ธกํ•˜๋Š” ์‚ฌ๋žŒ๊ณผ ๋‹ค์†Œ ์ƒ๋Œ€์ ์ž…๋‹ˆ๋‹ค. KornShell์—์„œ์˜ ๊ฒฝํ—˜์€ 24 ๋…„ ์ „์— ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 15 ๋…„ ์ „ ์ œ ๋”ธ์€ ์–ด๋ ธ์„ ๋•Œ ๊ทธ๋‹ค์ง€ ์˜ค๋ž˜๋˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. Yikes-์‹œ๊ฐ„์ด ๋น ๋ฆ…๋‹ˆ๋‹ค.

์šฐ๋ฆฌ ํŒ€์€ ๋ฐ”์ด๋„ˆ๋ฆฌ "ํ‚ค์‹œ"๋ผ๊ณ  ๋ถˆ๋ €์Šต๋‹ˆ๋‹ค.

๊ทธ๋ ‡๊ฒŒ ๋ฐœ์Œ ํ•œ ์ ์ด ์žˆ๋‹ค๊ณ  ๋งํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. :-)

๊ทธ๋ ‡๊ฒŒ ๋ฐœ์Œ ํ•œ ์ ์ด ์žˆ๋‹ค๊ณ  ๋งํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. :-)

๋„ค. ๊ทธ ํŒ€ ๋ฐ–์—์„œ๋Š” ํ•ญ์ƒ "ksh"๋˜๋Š” "KornShell"์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ์ผ์ข…์˜ ์š”์ ์ž…๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์ด "pwsh"( "PowerShell"์—†์Œ) ๋ฌธ์ž๋ฅผ ์–ด๋–ป๊ฒŒ ๋ฐœ์Œํ• ์ง€ ๋…ผ์˜ํ•˜๊ณ  ํ•ฉ์˜๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์™„์ „ํžˆ ์ง„์ง€ํ•œ ํ† ๋ก ์ด ์•„๋‹ˆ๋ฉฐ ๋ฐœ์Œ ํ•  ์ˆ˜์—†๋Š” ๋‹จ์–ด์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ณต์‹ ๋ฐœ์Œ์ด๋˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค (ํŒ€์— ๋Œ€ํ•œ ๋ฌด๋ก€ ํ•จ์€ ์—†์Šต๋‹ˆ๋‹ค- push ). ํ•˜์ง€๋งŒ ์•„๋งˆ๋„ ์ธ๊ธฐ์žˆ๋Š” ๊ฒฝ์Ÿ์ž๊ฐ€ ์ด๊ธฐ๊ณ  ํ”„๋ ˆ์  ํ…Œ์ด์…˜์—์„œ ๋“ฃ๊ธฐ ์‹œ์ž‘ํ•  ๊ฒƒ์ด๋ผ๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

Microsoft์—์„œ ์ผํ•˜๊ธฐ ์ „์— ์ €๋Š” Unix ์‚ฌ๋žŒ์ด์—ˆ์œผ๋ฉฐ ํ•ญ์ƒ ksh Korn Shell ๋ฐ csh C Shell์„ ํ˜ธ์ถœํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๋“ค์„ ๋‹จ์–ด๋กœ ๋ฐœ์Œํ•˜๋ ค๊ณ ํ–ˆ๋˜ ๊ทธ ๋‹น์‹œ์— ์•„๋ฌด๋„ ๊ธฐ์–ตํ•˜์ง€ ์•Š๋Š”๋‹ค : P

๋ˆ„๊ตฐ๊ฐ€ ์ด์™€ ๊ฐ™์€ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ๋ฐœ์ƒํ•œ ์ด์œ ๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์„ค๋ช… ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ๋ฃจํ”„๋ฅผ ๋ฒ—์–ด ๋‚ฌ๊ณ  (๋ถ„๋ช…ํžˆ!) @powerschill ๊ณผ ์ฑ„ํŒ…์„ํ•˜๊ณ 

์ง€๊ธˆ ๋ฐ”๋กœ ๊ธฐ์—ฌ ๊ณผ์ •์— ๋Œ€ํ•ด ๋‹ค์‹œ ์ฝ์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” RFC๊ฐ€ ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ ์–ด๋–ป๊ฒŒ ์ ์šฉ๋˜์ง€ ์•Š๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์œผ๋กœ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ •์ฑ… (https://github.com/PowerShell/PowerShell/blob/master/docs/dev-process/breaking-change-contract.md)์„ ์‚ดํŽด ๋ด…๋‹ˆ๋‹ค. ์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์–ด๋–ค ๋ฒ„ํ‚ท์— ํฌํ•จ๋˜์—ˆ๋Š”์ง€ ๋“ฑ์— ๋Œ€ํ•ด ์–ธ๊ธ‰ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋ช…ํ™•ํ•˜๊ฒŒ ํ•ด๊ฒฐ ๋œ ๊ฒƒ์„ ์ž๊ทนํ•˜์ง€ ์•Š๊ณ , ์ŠคํŽ™๊ณผ ์ด์Šˆ๋ฅผ ์ฝ์ง€ ์•Š๋Š” ๊ด€์‹ฌ์žˆ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ํšจ๊ณผ์ ์œผ๋กœ ์†Œํ†ต ํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ฐ์‚ฌ!

๋‚ด 2c. ์ด๊ฒƒ์€ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ๊ธฐ์กด ํ”„๋กœ๋•์…˜ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ๋„ˆ๋ฌด ๋งŽ์€ ๊ธฐ์กด ๋ฐฐ์น˜ ํŒŒ์ผ์ด ์ด๋ฏธ powershell.exe๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ PowerShell ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋™์ผํ•œ ์‹คํ–‰ ํŒŒ์ผ์„ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ์ถ”๊ฐ€ ์งง์€ ๋ช…๋ น์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์— ๋ฐ˜๋Œ€ํ•˜์ง€๋Š” ์•Š์ง€๋งŒ 'powershell'์„ ์ œ๊ฑฐํ•˜๋ฉด ํฐ ํ˜ผ๋ž€์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜์‹ญ์‹œ์˜ค (๋ณ„์นญ ๋˜๋Š” ๊ธฐํƒ€).

@RudolfHenning ์ด์ „ ๋ฒ„์ „์˜ Windows PowerShell๊ณผ ๋‹ฌ๋ฆฌ PowerShell Core๋Š” ๋‹ค๋ฅธ ๋ฒ„์ „์˜ ์ž์ฒด ๋ฐ ์ด์ „ ๋ฒ„์ „์˜ Windows PowerShell๊ณผ ๋‚˜๋ž€ํžˆ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์˜๋„ ํ•œ EXE์˜ ์ „์ฒด ๊ฒฝ๋กœ๋ฅผ ํ˜ธ์ถœ ํ•  ํ•„์š”์—†์ด ๋˜๋Š” powershell.exe ์—์„œ ์ž˜๋ชป๋œ ํ˜ธ์ถœ์„ ์ดˆ๋ž˜ํ•˜๋Š” ๊ฒฝ๋กœ ์ˆœ์„œ์˜ ์œ„ํ—˜์—†์ด ๋ช…๋ น ์ค„๊ณผ ๋ฐฐ์น˜ ์Šคํฌ๋ฆฝํŠธ์—์„œ Windows PowerShell ๋ฐ PowerShell ์ฝ”์–ด๋ฅผ ๋ชจ๋‘ ํ˜ธ์ถœ ํ•  ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„์ „.

PowerShell Core 6.0์ด ์ถœ์‹œ ๋œ ํ›„์—๋„ ๋งŽ์€ ๊ณต์‹ ๋ฐ ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ชจ๋“ˆ๊ณผ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ Core์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜์—†๋Š” ์ „์ฒด CLR ๊ฐœ์ฒด์— ์•ก์„ธ์Šคํ•ด์•ผํ•˜๋ฏ€๋กœ ๋งŽ์€ Windows ์ค‘์‹ฌ ์ž‘์—…์— Windows PowerShell (5.1 ์ดํ•˜)์„ ๊ณ„์† ์‚ฌ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ ์ด์ „ ๋ฒ„์ „์—์„œ 6.0์œผ๋กœ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ด์‹ํ•˜๋Š” ์‚ฌ๋žŒ์€ 5.1๊ณผ 6.0 ์‚ฌ์ด์— ์ƒ๋‹นํžˆ ๋งŽ์€ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์กฐ์ •์ด ํ•„์š”ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์–ด์จŒ๋“  ์ฝ”๋“œ๋ฅผ ํ„ฐ์น˜ํ•ด์•ผํ•˜๋ฏ€๋กœ ๋ฐฐ์น˜๋ฅผ pwsh.exe ์—์„œ powershell.exe pwsh.exe ๋กœ ์ „ํ™˜ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. PowerShell Core๋ฅผ ํฌํŒ…ํ•˜์ง€ ์•Š์œผ๋ฉด ์ค‘๋‹จ๋˜์ง€ ์•Š์œผ๋ฉฐ ์Šคํฌ๋ฆฝํŠธ๋Š” Windows PowerShell์„ ์‚ฌ์šฉํ•˜์—ฌ powershell.exe ๊ณ„์† ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

์„ค๋ช… ํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
Windows์™€ ์ผ๋ถ€ Linux OS๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์Šคํฌ๋ฆฝํŠธ์˜ ํ˜ธํ™˜์„ฑ์ด ๋•Œ๋•Œ๋กœ ๋ฌธ์ œ๊ฐ€๋ฉ๋‹ˆ๋‹ค. ์˜ˆ, Linux์˜ PowerShell ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ๋ฒ ํƒ€ ๋ฒ„์ „์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ์ œ ๋ฆฌ๋ˆ…์Šค ๋จธ์‹ ์„์œ„ํ•œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์ƒ๋‹นํ•œ ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์„ ํˆฌ์žํ–ˆ์Šต๋‹ˆ๋‹ค.
์–ด์จŒ๋“  ์ข‹์€ ์ผ์„ ๊ณ„์†ํ•˜์‹ญ์‹œ์˜ค!

TeamCity์˜ Powershell ์‹คํ–‰๊ธฐ๋Š” ์‹คํ–‰ ํŒŒ์ผ์ด powershell ๋ผ๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. Linux์—๋Š” ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š” Powershell 5๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— Linux ํŒจํ‚ค์ง€๋Š” ๊ณ„์†ํ•ด์„œ powershell ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์ƒ์„ฑํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋ถˆํ•„์š”ํ•œ ํŒŒ์†์ด์—ˆ์Šต๋‹ˆ๋‹ค.

๋ญ์•ผ, 4 ์›”์— ๋„์ฐฉ ํ–ˆ์–ด? ๋‹ค์Œ์— PowerShell ์ปค๋งจ๋“œ ๋ ›์—์„œ ๋ชจ์Œ์„ ์ œ๊ฑฐํ• ๊นŒ์š”? ๋†๋‹ด ์ด๊ฒ ๋„ค์š”.

"powershell -command xxxx"๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์ „ ์Šคํฌ๋ฆฝํŠธ (๋„์ปค)๋Š” ์ƒˆ ๋ฒ ํƒ€ -9 ๋ฆด๋ฆฌ์Šค์—์„œ ๋” ์ด์ƒ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค ....

ํญํ’์šฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ 

"๊ฐ€์žฅ ์ค‘์š”ํ•œ"์œ„์น˜ ๋˜๋Š” ์ง„์ž… ์ ์— ๋Œ€ํ•œ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ๋งŽ์€ ์ด์œ ๊ฐ€ ์žˆ์ง€๋งŒ, ๋ช…๋ น ์ด๋ฆ„์„ 6 ๋ฐ”์ดํŠธ๋กœ ์ค„์—ฌ์„œ ๊ฐ€๋…์„ฑ์„ ๋–จ์–ด ๋œจ๋ฆฌ๋Š” ๊ฒƒ์€ ๊ทธ์ค‘ ํ•˜๋‚˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค ....
์ฝ๊ธฐ๊ฐ€ ์“ฐ๊ธฐ๋ณด๋‹ค ๋” ์‰ฌ์šธ ์ˆ˜ ์žˆ๊ณ  / ๋ฐ˜๋“œ์‹œ ๋” ์‰ฌ์›Œ์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ณผ๊ฑฐ์— ์–ผ๋งˆ๋‚˜ ์ž์ฃผ ์ฝ”๋“œ ๋‚ด์—์„œ ๋” ๋‚˜์€ / ๊ธด ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ๋Š”์ง€ ....

๋‚ด 2 ์„ผํŠธ๋ฅผ ๊ตฌํ•ด์ค˜
๋ฌธ์•ˆ ์ธ์‚ฌ
๋ฒ ๋ฅด๋„ˆ

๋‚˜๋Š” ๋ถ„๋…ธ์™€ ์‹คํŒจ๋ฅผ ์ดํ•ดํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ๋žŒ๋“ค์€ ์ƒˆ๋กœ์šด ์ด๋ฆ„์ด ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๊ณ  ์žˆ๋‹ค๊ณ  ๋ถˆํ‰ํ•˜์ง€๋งŒ PowerShell Core๋Š” ์•„์ง ๋ฒ ํƒ€ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. IMO, ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ํ”„๋กœ๋•์…˜ ์ฝ”๋“œ์—์„œ ๋ฒ ํƒ€ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์žฌ์•™์„ ๋ถˆ๋Ÿฌ ์ผ์œผํ‚ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค (์—ฌ๊ธฐ์„œ๋Š” ์ •์ค‘ ํ•œ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค). ์•ŒํŒŒ ๋ฐ ๋ฒ ํƒ€ ๋ฆด๋ฆฌ์Šค์˜ ํŠน์„ฑ์€ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์œผ๋กœ ์ฑ„์›Œ์ง€๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฒ ํƒ€๊ฐ€ ์•„๋‹ˆ๋ผ๋Š” ํ™˜์ƒ์€ ์—†์Šต๋‹ˆ๋‹ค. ๋ฒ ํƒ€๋Š” ๋ฒ„์ „ ์ด๋ฆ„ 6.0.0-beta.9 ๋กœ ๊ตฌ์›Œ์ง‘๋‹ˆ๋‹ค.

์ด ์ด๋ฆ„ ๋ณ€๊ฒฝ์€ Windows PowerShell์— ์˜ํ–ฅ์„์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ Windows์—์„œ ์ˆ˜ํ–‰์ค‘์ธ ์ž‘์—…์ด ์ค‘๋‹จ๋˜์ง€ ์•Š์•„์•ผํ•ฉ๋‹ˆ๋‹ค. Linux์—์„œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ ๋ฒ ํƒ€ ๋ฒ„์ „์„ ๋ฒ ํƒ€ ๋ฒ„์ „์ด๋ผ๊ณ  ๋น„๋‚œํ•˜๋Š” ๋Œ€์‹  ๋ฒ ํƒ€ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค๊นŒ์ง€ ์†Œ์œ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๋ฒ ํƒ€ ๋ฆด๋ฆฌ์Šค ๊ฐ„์˜ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ฒ˜๋ฆฌ ํ•  ์ˆ˜์—†๋Š” ๊ฒฝ์šฐ ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์Šค๊ฐ€ RTM์ด ๋  ๋•Œ๊นŒ์ง€ ๋‹ค๋ฅธ ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ์ด๋ฆ„์„ ์ข‹์•„ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ญ์ƒ ์›ํ•˜๋Š” ๊ฒƒ์„ ์–ป์„ ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์ €๋Š” ๊ฐœ์ธ์ ์œผ๋กœ PowerShell.exe๊ฐ€ ๊ธธ๊ณ  ์ž…๋ ฅํ•˜๊ธฐ ์–ด์ƒ‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹ซ์–ดํ–ˆ์Šต๋‹ˆ๋‹ค. pwsh ์€ ์ ์–ด๋„ ๋‚ด๊ฐ€ ์—‰๋ง์œผ๋กœ ๋งŒ๋“œ๋Š” ๋ฌธ์ž๊ฐ€ ์ ์Šต๋‹ˆ๋‹ค. ํ† ๋ก  ์Šค๋ ˆ๋“œ๋ฅผ ์‚ดํŽด๋ณด๋ฉด ์—ฌ๋Ÿฌ ์˜ต์…˜์ด pwsh ๋ณด๋‹ค ํ›จ์”ฌ ๋‚˜์˜๊ฒŒ (IMO) ๋…ผ์˜ ๋œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ๋žŒ๋“ค์€ ์ด๊ฒƒ์„ ์ƒˆ๋กœ์šด ๋ฐ”์ด๋„ˆ๋ฆฌ ์ด๋ฆ„์— ๋Œ€ํ•œ ์ฃผ์š” ๋™๊ธฐ ์ค‘ ํ•˜๋‚˜๊ฐ€ Windows์™€ ๊ด€๋ จ๋œ ๋ฉ‹์ง„ Linux ์•„์ด๋“ค๊ณผ ์„ž์ด๋ ค๋Š” ์–ด์ƒ‰ํ•œ ์‹œ๋„๋กœ ์˜คํ•ดํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ, Linux-y ์ด๋ฆ„์ด ์„ ํƒ๋˜์—ˆ์ง€๋งŒ ๋ฌด์—‡์„ ์ถ”์ธกํ•ฉ๋‹ˆ๊นŒ? PowerShell์€ ์ด์ œ * nix ์‹œ๋ฏผ์ด๊ธฐ๋„ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์ด ๊ทธ ์‚ฌ์‹ค์— ์ต์ˆ™ํ•ด ์งˆ ๋•Œ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. Core์˜ ๋ชฉํ‘œ ์ค‘ ํ•˜๋‚˜๋Š” ํ”Œ๋žซํผ ๊ฐ„ ์ด์‹์„ฑ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— Windows ์ด์ƒ์„ ์—ผ๋‘์—๋‘๊ณ  ๊ฒฐ์ •์„ ๋‚ด๋ฆด ์ˆ˜ ์žˆ์œผ๋ฉฐ ์•ž์œผ๋กœ ๋‚ด๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๊ทธ๊ฒƒ์€ ๋‚˜์˜ 2 ์„ผํŠธ ๊ฐ€์น˜์ž…๋‹ˆ๋‹ค.

Core์˜ ๋ชฉํ‘œ ์ค‘ ํ•˜๋‚˜๋Š” ํฌ๋กœ์Šค ํ”Œ๋žซํผ ์ด์‹์„ฑ์ž…๋‹ˆ๋‹ค.

ํฌ๋กœ์Šค ํ”Œ๋žซํผ ์ด์‹์„ฑ์˜ ํ•œ ๋ถ€๋ถ„์€ ๋™์ผํ•œ ๋ช…๋ น์ด ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ ๋‘ ํ”Œ๋žซํผ ๋ชจ๋‘์—์„œ ์ž‘๋™ํ•ด์•ผํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๋ณ€๊ฒฝ ์ „์—๋Š” ์–ด๋–ค OS๋ฅผ ์‚ฌ์šฉํ•˜๋“  powershell ์‹คํ–‰ํ•˜์—ฌ ์˜ฌ๋ฐ”๋ฅธ ๊ฒƒ์„ ์–ป์„ ์ˆ˜์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ๋” ์ด์ƒ ๊ทธ๋ ‡๊ฒŒ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉํ•˜๊ธฐ ์‰ฌ์šด ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ์ˆ˜๋งŽ์€ ์ž‘์€ ๊ฒƒ๋“ค์„ ์ ์ ˆํ•˜๊ฒŒ ๋Œ๋ณด๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด์ƒํ•˜๊ณ  ์ง๊ด€์ ์ด์ง€ ์•Š์€ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๊ทธ ๋ฐ˜๋Œ€์ž…๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” OS์— ์ƒ๊ด€์—†์ด powershell ์‹คํ–‰ํ•˜๊ณ  ์˜ฌ๋ฐ”๋ฅธ ๊ฒƒ์„ ์–ป์„ ์ˆ˜์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ๋” ์ด์ƒ ๊ทธ๋ ‡๊ฒŒ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์ •ํ™•ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Windows์—์„œ powershell ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  Windows PowerShell์„ ๊ฐ€์ ธ์˜จ ๋‹ค์Œ Linux์—์„œ powersehll ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  PowerShell Core๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ Windows ๋˜๋Š” Linux์—์„œ pwsh ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  PowerShell Core๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์šฐ๋ฆฌ๋Š” ๋‹น์‹ ์ด ์›ํ•˜๋Š” ์ƒํƒœ์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ผ๊ด€์„ฑ์ด์—†๋Š” ์ƒํƒœ์˜€์Šต๋‹ˆ๋‹ค.

์ด์ƒํ•˜๊ณ  ์ง๊ด€์ ์ด์ง€ ์•Š์€ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๊ทธ ๋ฐ˜๋Œ€์ž…๋‹ˆ๋‹ค.

๋ณดํŽธ์ ์œผ๋กœ ์ข‹์•„ํ•˜์ง€๋Š” ์•Š์ง€๋งŒ ... ์–ด๋–ค ๋Œ€์•ˆ์„ ์ œ์•ˆ ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ๋“ค์ด ์ด๋ฆ„์— ๋Œ€ํ•ด ๋ถˆํ‰ํ•˜์ง€๋งŒ์ด ์ด๋ฆ„ ๋ณ€๊ฒฝ์ด ํ•ด๊ฒฐํ•˜๋Š” ๊ทผ๋ณธ์ ์ธ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋Œ€์•ˆ์€ ์—†์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋งํ–ˆ๋“ฏ์ด "ํ•ญ์ƒ ์›ํ•˜๋Š” ๊ฒƒ์„ ์–ป์„ ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค"

์–ด๋–ค ์ด๋ฆ„์„ ์„ ํƒํ•ด๋„ ์‚ฌ๋žŒ๋“ค์€ ๋ถˆํ–‰ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฟก ๋นต๋€จ

  • ์ด๊ฒƒ์ด ๋ฒ ํƒ€ ๋ฒ„์ „์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค!
  • Windows์—์„œ * nix๋กœ ๋‚ด (PS) ์ง€์‹์„ ์ด์ „ํ•˜๋Š” ๋ฐ ๋„์›€์ด๋˜๋ฏ€๋กœ * nix์—์„œ ๋” ๋‚˜์€ PS๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ํ”ผ๋“œ๋ฐฑ์€ ์œ ์šฉ์„ฑ์— ๊ด€ํ•œ ๊ฒƒ์ด์—ˆ๊ณ  ์ด๋ฆ„์„ ๋‹ค์‹œ ๋ฐ”๊พธ๊ณ  ๋์—†๋Š” ํ† ๋ก ์„ ๊ฐ•์š”ํ•˜๋Š” ์—„์ฒญ๋‚œ ์šฐ๋ ค์˜€์Šต๋‹ˆ๋‹ค.

Windows์—์„œ powershell์„ ์‹คํ–‰ํ•˜๊ณ  Windows PowerShell์„ ๊ฐ€์ ธ์˜จ ๋‹ค์Œ Linux์—์„œ powersehll์„ ์‹คํ–‰ํ•˜๊ณ  PowerShell Core๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ Windows ๋˜๋Š” Linux์—์„œ pwsh๋ฅผ ์‹คํ–‰ํ•˜๊ณ  PowerShell Core๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์šฐ๋ฆฌ๋Š” ๋‹น์‹ ์ด ์›ํ•˜๋Š” ์ƒํƒœ์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ผ๊ด€์„ฑ์ด์—†๋Š” ์ƒํƒœ์˜€์Šต๋‹ˆ๋‹ค.

Windows์™€ Core๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ์ด๋ฆ„์„ ๋ฐ”๊พธ๊ณ  "์งง์€ ์ด๋ฆ„ ๋งŒ๋“ค๊ธฐ"๋ฅผํ•˜๋Š” ๋” ์ข‹์€ ์ด์œ ์ž…๋‹ˆ๋‹ค!

์ด์— ๋Œ€ํ•ด๋ณด๋‹ค ๋ช…ํ™•ํ•œ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ์ˆ˜ํ–‰ ํ•  ๊ฒƒ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค (์ด์Šˆ ์ œ๋ชฉ, ๋ฆด๋ฆฌ์Šค ๋…ธํŠธ ๋“ฑ).
๋‚˜๋Š”์ด ํ˜ธ์˜ ์ฒ˜์Œ 2-3 ํŽ˜์ด์ง€๋ฅผ ์ฝ์—ˆ๊ณ  ํ† ๋ก ์€ ๊ธธ์ด์— ๊ด€ํ•œ ๊ฒƒ์ด์—ˆ๋‹ค ....

๊ธฐํƒ€ ํ”ผ๋“œ๋ฐฑ :
์ง€๋‚œ์ฃผ์— ์ €๋Š” Docker์™€ * nix์—์„œ PS-Core๋กœ ๋งŽ์€ ์ฝ”๋”ฉ์„ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์ข‹์•„ํ•˜์ง€๋งŒ ์•ฝ๊ฐ„์˜ ์—ฐ๋งˆ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
์•„์ด๋””์–ด / ์ œ์•ˆ :
์ด๋ฆ„์ด Powershell์—์„œ pwsh๋กœ ๋ณ€๊ฒฝ๋œ ๊ฒฝ์šฐ ๋ฒ„์ „์„ 6.0์—์„œ 1.0์œผ๋กœ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ ( ".Net 5.0"์—์„œ "dotnet core 1.0"์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•œ ๋…ผ์˜)
๊ธฐ๋ณธ์ ์œผ๋กœ CORE๋Š” ํŠนํžˆ * nix์—์„œ ๋ฒ„์ „ 1.0, ๋ฒ„์ „ 6๊ณผ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค !!

๋ฌธ์•ˆ ์ธ์‚ฌ
๋ฒ ๋ฅด๋„ˆ

@WernerMairl 6.0.0 # 5165 ๋Œ€์‹  1.0์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๊ณต๊ฐœ ํ† ๋ก ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ์Šค๋ ˆ๋“œ๋กœ ์ด๋™ํ•˜์—ฌ ์ฝ๊ณ  ์˜๊ฒฌ์„ ๋งํ•˜์‹ญ์‹œ์˜ค.

๋˜ํ•œ, ๋‹น์‹ ์ด ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๊ณ  ๋‹น์‹ ์ด ๋‹ค๋“ฌ์„ ํ•„์š”๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ๋“ค์— ๋ถ€๋”ช ํ˜”๊ธฐ ๋•Œ๋ฌธ์—, ๊ทธ๋“ค์ด ๋‹น์‹ ์ด ๊ฒช์€ ๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์—ด๋ฆฐ ๋ฌธ์ œ๋ฅผ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ๋ฏธํ•ด๊ฒฐ ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๊ฒฝ์šฐ ํˆฌํ‘œํ•˜๊ฑฐ๋‚˜ ์˜๊ฒฌ์„ ๋งํ•˜๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ ์—ด์–ด ์ˆ˜์ •ํ•˜์‹ญ์‹œ์˜ค. ์šฐ๋ฆฌ ์ปค๋ฎค๋‹ˆํ‹ฐ ํšŒ์› ์ค‘ ๋ช‡๋ช‡์€ ์šฐ์„  ์ˆœ์œ„๊ฐ€ ๋‚ฎ์€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์ ๊ทน์ ์œผ๋กœ ์ฐธ์—ฌํ•˜๊ณ  ์žˆ์œผ๋ฉฐ Microsoft ํŒ€์€ ๋” ๋†’์€ ์šฐ์„  ์ˆœ์œ„์™€ ๋” ์–ด๋ ค์šด ๋ฌธ์ œ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋†€๋ผ์šด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ง์ ‘ ๊ธฐ์—ฌ์ž๊ฐ€ ๋˜๊ธฐ์—๋Š” ๋„ˆ๋ฌด ๋Šฆ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค!

์ด์Šˆ ์„ค๋ช… ๋ฐ ๋ณ€๊ฒฝ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์— ๋Œ€ํ•ด์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ๊ฐœ์„ ์˜ ์—ฌ์ง€๊ฐ€ ์žˆ์—ˆ๊ณ  ์™œ ํ•„์š”ํ•œ์ง€์— ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์—ญํ• ์€ ๋‹ค์†Œ ํ˜ผ๋ž€ ์Šค๋Ÿฌ์šธ ์ˆ˜ ์žˆ์ง€๋งŒ ์ €๋Š” PowerShell ํŒ€์˜ ์ผ์›์ด ์•„๋‹ˆ๋ฉฐ (๋ณธ์งˆ์ ์œผ๋กœ) ํฌ๋Ÿผ ์ค‘์žฌ ๊ถŒํ•œ์„ ๊ฐ€์ง„ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ธฐ์—ฌ์ž ์ผ๋ฟ์ž…๋‹ˆ๋‹ค. PowerShell ํŒ€์„ ๋Œ€๋ณ€ ํ•  ์ˆ˜๋Š” ์—†์ง€๋งŒ ๊ทธ๋“ค์ด์ด ์‚ฌ์‹ค์„ ์Šค์Šค๋กœ ์ดํ•ดํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋“ค์˜ ๋ฐฉ์–ด์—์„œ ์ด๊ฒƒ์€ ์˜์‚ฌ ์†Œํ†ตํ•˜๊ธฐ๊ฐ€ ๋‹ค์†Œ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๋ถˆ๋งŒ์€ Windows PowerShell๊ณผ PowerShell Core์˜ ์œ ์‚ฌ์ ๊ณผ ์ฐจ์ด์ ์— ๋Œ€ํ•œ ์ดํ•ด ๋ถ€์กฑ์—์„œ ๋น„๋กฏ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํšจ๊ณผ์ ์œผ๋กœ ์ „๋‹ฌํ•˜๋ ค๋ฉด 7 ์›” 14 ์ผ ๋ธ”๋กœ๊ทธ ๊ธฐ์‚ฌ์— ์„ค๋ช… ๋œ ๋‚ด์šฉ ์„ ๋‹ค์‹œ ํ•ด์‹œํ•ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์‚ฌ๋žŒ๋“ค์€ ์œ ์‚ฌ์ ๊ณผ ์ฐจ์ด์ ์„ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐ ์—ฌ์ „ํžˆ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์•„์ง ์ฝ์ง€ ๋ชปํ–ˆ๋˜ ์ด๋ฆ„ ๋ณ€๊ฒฝ์ด ์™œ ์ด๋ฃจ์–ด ์กŒ๋Š”์ง€์— ๋Œ€ํ•œ ๊ธด ์„ค๋ช…์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ํšƒ๋ถˆ๊ณผ ๊ฐˆํ€ด๊ฐ€ ๋ฌด์Šจ ์ผ์ด ์žˆ์–ด๋„ ์™”์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ •ํ™•ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Windows์—์„œ powershell์„ ์‹คํ–‰ํ•˜๊ณ  Windows PowerShell์„ ๊ฐ€์ ธ์˜จ ๋‹ค์Œ Linux์—์„œ powersehll์„ ์‹คํ–‰ํ•˜๊ณ  PowerShell Core๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ Windows ๋˜๋Š” Linux์—์„œ pwsh๋ฅผ ์‹คํ–‰ํ•˜๊ณ  PowerShell Core๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์šฐ๋ฆฌ๋Š” ๋‹น์‹ ์ด ์›ํ•˜๋Š” ์ƒํƒœ์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ผ๊ด€์„ฑ์ด์—†๋Š” ์ƒํƒœ์˜€์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‹น์‹ ์ด ์˜๋ฏธํ•˜๋Š” ๋ฐ”๋ฅผ ์ดํ•ดํ•˜์ง€๋งŒ ์ด๊ฒƒ์ด ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ๊ณ  ๋ฐ˜๋ฐ•ํ•ฉ๋‹ˆ๋‹ค. ๋‚ด ์ง„์ˆ ์—๋Š” ์ˆจ๊ฒจ์ง„ ๊ฐ€์ •์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณตํ†ต ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋Š” ํ•œ PowerShell๊ณผ PowerShell Core๋Š” ์™„์ „ํžˆ ๋™์ผ ํ•  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ง€๊ธˆ๊นŒ์ง€ ๋ชจ๋“  ์‚ฌ์šฉ ์‚ฌ๋ก€์—์„œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

@sandersaares ๋‚˜๋Š” ๋‹น์‹ ์˜ ๊ฒฝํ—˜์ด ํ–‰์šด์ด๋ผ๊ณ  ๋ฏฟ์Šต๋‹ˆ๋‹ค. ํ™•์‹คํžˆ ๋‚ด ๊ฒฝํ—˜๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋‚˜๋Š” ๊ทธ ๊ฐ€์ •์ด ์œ„ํ—˜ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์™„์ „ํžˆ ๋‹ค๋ฅธ ๊ธฐ๋ณธ ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์„œํ™” ๋œ ์ˆ˜๋งŽ์€ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ํฌํ•จ ๋œ ์ฃผ์š” ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์ด์ „ ๋ฒ„์ „๊ณผ ๊ฑฐ์˜ 100 % ์ด์ „ ๋ฒ„์ „๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์ œ๊ณตํ•˜๋Š” PowerShell์˜ ์ด์ „ ์ฃผ ๋ฒ„์ „๊ณผ๋Š” ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

์ผ๋ถ€ ์‚ฌ๋žŒ๋“ค์€ ์‹คํ–‰ ํŒŒ์ผ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ์ฃผ๋กœ ํƒ€์ดํ•‘์„ ์ ˆ์•ฝํ•˜๊ธฐ์œ„ํ•œ ๊ฒƒ์ด๋ผ๊ณ  ์ž˜๋ชป๋œ ๊ฐ€์ •์„ํ•˜๋Š” ๊ฒƒ์„ ๋ด…๋‹ˆ๋‹ค. PR์— ์‚ฌ์šฉ ๋œ์ด ์›ํ˜ธ๊ฐ€ ๋” ์งง์€ ์ด๋ฆ„์„ ๋ฌป๋Š” ์ œ๋ชฉ์œผ๋กœ ์‹œ์ž‘ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ๋žŒ๋“ค์ด ์–ด๋–ป๊ฒŒ ์ด๋Ÿฐ ์ธ์ƒ์„ ๋ฐ›์•˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  ์‚ฌ๋žŒ์ด์œ„์›ํšŒ๊ฐ€ ๊ฒฐ์ •์— ๋Œ€ํ•ด ๋‚ด๋ฆฌ๋Š” ๋ชจ๋“  ์˜๊ฒฌ์„ ์ฝ์ง€ ์•Š๊ธฐ๋ฅผ ๊ธฐ ๋Œ€ํ•ด์„œ๋Š” ์•ˆ๋˜๋ฏ€๋กœ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ๊ฐœ์„  ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ ๊ฒฐ์ •์˜ ์š”์•ฝ ์„ ์‰ฝ๊ฒŒ ์žƒ์–ด ๋ฒ„๋ฆฌ๋Š” ์ด์™€ ๊ฐ™์ด ๋…ผ๋ž€์ด ๋งŽ์€ ๋ถ€๋ถ„์—์„œ.

ํŠนํžˆ Windows PowerShell๊ณผ ๊ด€๋ จํ•˜์—ฌ PowerShell Core 6์ด ๋ฌด์—‡์ธ์ง€์— ๋Œ€ํ•œ ๊ทผ๋ณธ์ ์ธ ์˜คํ•ด๊ฐ€์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. Windows PowerShell 5.1์€ ์—ฌ์ „ํžˆ โ€‹โ€‹Windows์—์„œ ์ œ๊ณต๋˜๋Š” PowerShell ๋ฒ„์ „์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ ํŒ€์€ ๋˜ํ•œ ํ•„์š”์— ๋”ฐ๋ผ ๊ณ„์† ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ณ ๊ฐ์ด ์ตœ์†Œํ•œ ํ–ฅํ›„ 10 ๋…„์ด ๋  ์ˆ˜์žˆ๋Š” ํ•œ Windows PowerShell์— ๊ณ„์† ์˜์กด ํ•  ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค. WMF5.1์˜ ๋‹ค์šด๋กœ๋“œ๊ฐ€ ๋งˆ์นจ๋‚ด WMF4.0์˜ ๋‹ค์šด๋กœ๋“œ๋ฅผ ๋Šฅ๊ฐ€ํ•œ ๊ฒƒ์€ ์ตœ๊ทผ์˜ ์ผ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

PowerShell Core 6์€ ํฌ๋กœ์Šค ํ”Œ๋žซํผ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์˜คํ”ˆ ์†Œ์Šค์ด๊ธฐ๋„ ํ•œ PowerShell์˜ ์ฐจ์„ธ๋Œ€ ์ง„ํ™”์ž…๋‹ˆ๋‹ค. @markekraus๊ฐ€ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด Windows PowerShell์—์„œ๋Š” ๊ณ ๋ คํ•˜์ง€ ์•Š์•˜๋˜ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ˆ˜์šฉํ•˜๋Š” ๋ฐ ๋” ๋งŽ์€ ์œ ์—ฐ์„ฑ์„ ์ œ๊ณตํ•˜๋Š” ์ฃผ์š” ๋ฒ„์ „ ๋ณ€๊ฒฝ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ PowerShell Core 6์€ Windows PowerShell๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ PSCore6 ๋ฒ„์ „๊ณผ๋„ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋„๋ก ๋ช…์‹œ ์ ์œผ๋กœ ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. powershell ๋ฅผ ์ž…๋ ฅ ํ•  ๋•Œ Windows์—์„œ ์–ป๋Š” ๋‚ด์šฉ์ด ๋ชจํ˜ธํ•˜์ง€ ์•Š์•„์•ผํ•ฉ๋‹ˆ๋‹ค. 6.0 ๋Œ€ 1.0 ํ† ๋ก ์€ ์šฐ๋ฆฌ๊ฐ€ ๊ณต๊ฐœ๋˜๊ธฐ ํ›จ์”ฌ ์ „์— ์ด๋ฏธ ์ผ์–ด ๋‚ฌ๊ณ  ๋‹ค์‹œ ์—ด๋ฆด ๊ฒƒ ๊ฐ™์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@ SteveL-MSFT์˜ ์ด๋ฆ„ ๋ณ€๊ฒฝ์— ๋Œ€ํ•œ ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ์ด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Windows์˜ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋ช…ํ™•ํ•œ ์˜ˆ๋ฅผ ํ†ตํ•ด ์ด๋ฆ„์ด ๋ณ€๊ฒฝ๋œ ์ด์œ ์— ๋Œ€ํ•œ ์ฃผ์š” ๋“œ๋ผ์ด๋ฒ„๋ฅผ ๋‹ค๋ฃฐ โ€‹โ€‹์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. posh์™€ psh๊ฐ€ ์™œ ์ž˜๋ฆฌ์ง€ ์•Š์•˜๋Š”์ง€ ์„ค๋ช…ํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์••์ถ•์„ ํ’€๊ณ  ์„ค์น˜ํ•˜๋Š” ๋™์•ˆ pwsh์˜ ๋ณ„์นญ์œผ๋กœ "powershell"์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ์ถ”์  ํ•  ๋•Œ๊นŒ์ง€ ๋ฉฐ์น  ๋™์•ˆ ์ž‘์—… ์ค‘์ด๋˜ ๋นŒ๋“œ๊ฐ€ ๊นจ์กŒ์Šต๋‹ˆ๋‹ค.

ํŽธ์ง‘ : ๋ฆฌ๋ˆ…์Šค์—์„œ

@markekraus ์—๋Š” ๋ฌด์—‡๊ณผ ์ด์œ ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๋ฉ‹์ง„ ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

https://get-powershellblog.blogspot.sg/2017/10/why-pwsh-was-chosen-for-powershell-core.html

์˜ค๋Š˜ ๋‚˜๋Š” ๊ทธ ์‚ฌ๋žŒ ์ด์ด ์Šค๋ ˆ๋“œ์— ๋Œ€ํ•ด ์•Œ๊ณ  ์žˆ๋Š”์ง€ ์˜์‹ฌ ์Šค๋Ÿฝ์ง€๋งŒ ์—ฌ๊ธฐ ์—์„œ pwsh ์˜ ์ฒซ ๋ฒˆ์งธ ์‚ฌ์šฉ๋ฒ•์„ ๋ณด์•˜์Šต๋‹ˆ๋‹ค.

pwsh ๋ฐœ์Œ์— ๋Œ€ํ•œ ๊ณต์‹์ ์ธ ํŒ๊ฒฐ์„๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? PNG ์‚ฌ์–‘ ์—๋Š” ์„น์…˜ 1์— ๋ฐœ์Œ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. PowerShell ์šฉ ๋ฐœ์Œ๋„ ์ œ๊ณต ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ SCSI "scuzzy"/ "sexy"์ƒํ™ฉ์„ ์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‚˜์—๊ฒŒ "๋˜ฅ"์ฒ˜๋Ÿผ ๋ณด์ธ๋‹ค.

@apjanke ์ผ๋ฐ˜์ ์œผ๋กœ ํ†ต์šฉ๋˜๋Š” pwsh ๋ฐœ์Œ์€ posh

๋‚˜๋ฅผ ์œ„ํ•ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ณต์‹ ํ™•์ธ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

๋‹ค๋ฅธ ๋ฐœ์Œ : [1]


[1] [ํŒจ๋Ÿฌ๋””.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰