Node.js의 함수를 Bash에서 파이프처럼 사용할 수있는 명령

Node.js의 함수를 Bash에서 사용하려고 생각하는 것이 있습니까?
나는 지금까지 없었다.

@ 타쿠야 _1 st 씨의 node의 함수를 bash 쉘에서 사용할 수 있도록 한다. 이라는 기사가 재미 있었기 때문에 커맨드를 만들어 보았습니다.



다음 명령으로 설치할 수 있습니다.
$ npm i -g @amanoese/nodep

사용법



예를 들어, 다음과 같이 QueryString을 낭비 Encode,Decode 한 후 JSON으로 변환할 수 있습니다.
$ echo -n 'a=b' | nodep encodeURIComponent @ decodeURIComponent @ "require('querystring').parse" @ JSON.stringify
{"a":"b"}

Node 함수끼리의 접속은 bash 의 "|"가 아니라 "@"가 됩니다.

또한 원래 기사에서는 Node.js의 함수를 실제로 명령으로 사용할 수 있도록 만들었습니다.
커맨드가 늘어나 번거롭게 될 것 같고 또한 등록으로 이름의 충돌이라든지 하려고 느꼈기 때문에, 1개의 커멘드내에서 처리가 완결되도록(듯이) 할 수 있도록(듯이) 하고 있습니다.

조금 실용적인 사용법?



아래와 같이 사용하면 jq에서는 처리할 수 없다? JSON 같은 JavaScript 객체를 처리할 때 유용할 수 있습니다.
$ echo -n '{a:1}' | sed 's/^/x=/' | nodep eval @ JSON.stringify | jq .
{
  "a": 1
}

감상



Node.js의 함수가 잡히면 기쁩니다.

여담



파이프라인 연산자의 구현이 온다면 아래와 같은 커멘드로 해 JavaScript JavaScript 하는 것이 재미있을지도 모릅니다.
$ echo -n 'a=b' | nodep '$stdin |> encodeURIComponent |> decodeURIComponent |> require("querystring").parse |> JSON.stringify'

나중에 npm으로 설치할 수 있지만이 명령은 ShellScript로 만들어졌습니다.

좋은 웹페이지 즐겨찾기