최신 NodeJS 버전을 설치하기 위한 작은 스크립트를 작성하려고 합니다. 이것이 내가 시작한 방법입니다.
NODE="$(curl -sL https://nodejs.org/dist/latest | grep 'armv6l.tar.gz' | cut -d'"' -f2)" &&
wget https://nodejs.org/dist/latest/$NODE &&
tar -xzf $NODE
다음 단계에서는 node-v8.12.0-linux-armv6l/bin/node -v
이것이 내가 원하는 값을 반환하는지 와 같은 작업을 수행해야 합니다.
$ cd node-v8.12.0-linux-armv6l/
$ sudo cp -R * /usr/local/
$NODE
내 문제는 파일 확장자를 포함하여 전체 파일 이름이 있다는 것입니다 . 그러나 을 교체해야 하는 명령의 경우 node-v8.12.0-linux-armv6l
반환된 버전 값을 확인하는 방법도 모르겠습니다.
답변1
다음 코드를 시도해 보세요.
#!/bin/bash
SOF_PATH=/opt
NODE="$(curl -sL https://nodejs.org/dist/latest | grep 'armv6l.tar.gz' | cut -d'"' -f2)"
if [ ! -z "$NODE" ]; then
cd $SOF_PATH
/usr/bin/wget "https://nodejs.org/dist/latest/$NODE" >/dev/null 2>&1
/bin/tar -xzf $NODE
NODE_APP=${NODE%.tar.gz}
cd $NODE_APP/bin
NODE_VERSION=`node -v`
echo "$NODE_VERSION"
cd ..
sudo cp -R * /usr/local/
fi