codestates / codestates/Memory-It

[Dev Log] 명령어 치환(Command Substitution)

Open
#35 0 comments 0 reactions 1 assignee Claimed by @cjhmoves33 View on GitHub
Dev Log dev-ops
Dominant language
JavaScript
Stars
1
Forks
2
PR merge metrics
No merged PRs in 30d

Description

CLI command 중 명령어 치환(Command Substitution)이라고 불리는 입력이있다.
쉘 스크립트에서는 명령어열 실행 결과(표준 출력)을 문자열로 치환할 수 있다.
```
// 사용
$(명령어열) 또는 `명령어열`
```

EC2 인스턴스를 ubuntu환경으로 사용하고 있기 때문에 sudo명령어를 앞에 붙일 때가 많다.
이때 sudo node app.js와 같이 입력하게되면 노드버전이 8버전으로 실행된다.
```
$ node --version
17.3.0

// sudo node app.js를 해야하는데 8버전으로 실행되버린다.
$ sudo node --version
v8.10.0

```

이때 which node 명령을 입력하면 node 프롬프트가 존재하는 위치를 볼 수 있는데
```
$ which node
/home/ubuntu/.nvm/versions/node/v17.3.0/bin/node

// 아래와 같이 17버전 node프롬프트를 특정해서 실행시킬 수 도 있겠지만
$ sudo /home/ubuntu/.nvm/versions/node/v17.3.0/bin/node app.js

// 명령어 치환을 활용하여 간단하게 사용하가능하다.
$ sudo $(which node) app.js

```

현재 package.json에 script로 입력해서 간단하게 사용하는 중
```
// package.json
"scripts": {
"start": "sudo $(which node) app.js"
}
```

## 레퍼런스 링크
[레퍼런스 Blog](https://jupiny.com/2017/07/10/shell-script-basic-2/)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.