powershell

모두가 다 아는 내용에 대해서는 리뷰하기를 원하지는 않는데, 제대로 작동하는지 정말 너무나 궁금해 졌습니다. 그래서 리뷰를 해 봤습니다.

2016/08/20 Editor’s choice

PowerShell/PowerShell
_PowerShell for every system!_github.com


윈도우 파워셸(Windows PowerShell)은 마이크로소프트가 개발한 확장 가능한 명령 줄 인터페이스(CLI) 스크립트 언어를 특징으로 하는 명령어 인터프리터이다.

출처 : 한국어 위키

뭔가 내용이 부실해 보입니다.

리눅스나 유닉스 계열의 서버 관리자가 윈도우즈를 만졌을 때 셸 스크립트가 턱없이 부족하다고 느껴지는 명령어 자동화의 영역을 커버해 주는 것이 윈도우 파워셸이었습니다.

그런데, 이번에 마이크로 소프트에서는 이 파워셸을 리눅스와 MacOS에서 돌아갈 수 있도록 포팅을했네요.

이게 가능하게 된 배경은 아무래도

aspnet/Home
_The Home repository is the starting point for people to learn about ASP.NET Core._github.com

dotnet core 자체를 오픈 소스화 하고 모든 플랫폼 위에서 돌아가도록 한 그간의 노력들 덕분이겠지요?


설치

PowerShell/PowerShell
_PowerShell for every system!_github.com

릴리즈 버전에서 자기가 사용하는 OS에 맞게 설치 하면 됩니다.

저는 Mac pkg를 다운 받았습니다. brew 같은 툴로 설치하지는 않는 군요.

다운받아서 pkg 를 실행시키면 인스톨러가 step by step으로 따라갈 수 있도록 해 줍니다.

실행

실행하면 바로 사용할 수 있는 거는 아니군요.

powershell도 shell인지라 Mac의 기본 shell로 사용할 수는 없고 일단은

$/usr/local/microsoft/powershell/<버전\>/powershell

을 실행시키면

shell 이 나오고 dir을 실행 시킬 수 있습니다.

\>Get-ChildItem|Export-Csv mm.csv  
\>Invoke-Item mm.csv

같은 명령어를 통해 dir한 결과를 mm.csv파일에 저장하고 엑셀로 그걸 열어보는 약간의 고난이도(?) 기술을 실행해 보겠습니다.

이번에는 ps파일로 저장을 할 것이기 때문에 VS Code에 플러그인으로 설치해서

실행을 하면 다음과 같이 실행이 됩니다.

파워셸을 좋아하는 사람들이라면 두 손들고 반길만 하겠네요.

By Keen Dev on August 20, 2016.

Exported from Medium on May 31, 2017.

with

재미있는 툴이네요.

prefix를 붙여준다는 내용 설명인데, 예를 들어 이런 일을 합니다.

git의 경우 git command 를 계속

$git add.

$git commit -m "update for some reason"

$git push origin master

앞에 붙여주게 되는데 이런 일들을 줄일 수 있습니다.

2016/08/18 Editor’s choice

mchav/with
_with - Command prefixing for continuous workflow using a single tool._github.com

설치

curl -s [https://raw.githubusercontent.com/mchav/with/master/install][anchor2] | bash

실행

클릭하면 볼 수 있습니다.

위의 이미지를 클릭하면 asciinema를 통해 어떻게 동작하는지를 볼 수 있습니다.

포스트 처음 git 명령어의 git을 생략하고 실행할 수 있습니다. git같은 명령어를 쓰는 곳에서는 매우 좋은 툴입니다.

$with git  
git\>add .

git\>commit -m "update for some reason"

git\>push origin master

By Keen Dev on August 18, 2016.

Exported from Medium on May 31, 2017.