Файл .npmrc содержит несколько таких записей:

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

Также могут быть совершенно разные записи в .npmrc .

Как я могу проанализировать <sometoken> используя сценарий bash для конкретного реестра, указав его URL-адрес, например registry.npmjs.org в качестве параметра для сценария bash?

1 ответ1

1

Вы можете сделать это следующим образом:

#!/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"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .