Download source from npm without installing it

后端 未结 6 1518
既然无缘
既然无缘 2020-12-13 01:34

How can I download the source code of a package from npm without actually installing it (i.e. without using npm install thepackage)?

6条回答
  •  抹茶落季
    2020-12-13 01:57

    Based on Gustavo Rodrigues's answer, fixes "package" directory in .tgz, adds latest minor version discovery.

    #!/bin/bash
    
    if [[ $# -eq 0 ]] ; then
        echo "Usage: $0 jquery bootstrap@3 tinymce@4.5"
        exit 64 ## EX_USAGE
    fi
    
    set -e ## So nothing gets deleted if download fails
    
    for pkg_name in "$@"
    do
    
        ## Get latest version, also works with plain name
        url=$( npm v $pkg_name dist.tarball | tail -n 1 | cut -d \' -f 2 )
        tmp_dir=$( mktemp -d -p . "${pkg_name}__XXXXXXXXX" )
    
        ## Unpacks to directory named after package@version
        curl $url | tar -xzf - --strip 1 --directory $tmp_dir
        rm -rf $pkg_name
        mv $tmp_dir $pkg_name
    done
    

提交回复
热议问题