특정 레지스트리에 대한 NPM_TOKEN 형식 .npmrc 구문 분석 항목이 있습니다 : //registry.npmjs.org/:_authToken=<sometoken> //my.privateregistry.com/:_authToken=<sometoken> 또한에 완전히

.npmrc파일은 다음과 같은 몇 가지 항목이 있습니다 :

//registry.npmjs.org/:_authToken=<sometoken>
//my.privateregistry.com/:_authToken=<sometoken>

또한에 완전히 다른 항목이있을 수 있습니다 .npmrc.

<sometoken>bash 스크립트 registry.npmjs.org의 매개 변수 와 같은 URL을 지정하여 특정 레지스트리에 bash 스크립트를 사용하여 구문 분석하는 방법은 무엇입니까?



답변

이런 식으로 할 수 있습니다 :

#!/bin/bash

URLTOSEARCH="$1"
FILENAME="npmrc"

# you have to give an url
# so the search can begin
if [ -z "$URLTOSEARCH" ]; then
        echo "Please enter an url to search."
        exit 1
fi

# first, get the link
# out of the file
while read -r line
do
        # get the url
        EXTRACTEDURL=$(echo "$line" | grep -o '//.*/:' | sed 's/\/:/\//g')

        # get the token
        EXTRACTEDTOKEN=$(echo "$line" | grep -o '_authToken=.*' | sed 's/_authToken=//g')

        if [ "//$URLTOSEARCH/" == "$EXTRACTEDURL" ]; then
                echo "Token found: $EXTRACTEDTOKEN"
        fi
done < "$FILENAME"


답변