ස්ථාපිත npm පැකේජයක අනුවාදය සොයා ගන්න


2224

ස්ථාපිත node.js / npm පැකේජයක අනුවාදය සොයා ගන්නේ කෙසේද ?

මෙය npm හි අනුවාදයම මුද්‍රණය කරයි:

npm -v <package-name>

මෙය ගුප්ත දෝෂයක් මුද්‍රණය කරයි:

npm version <package-name>

මෙය ලේඛනයේ පැකේජ අනුවාදය මුද්‍රණය කරයි (එනම් පවතින නවතම අනුවාදය):

npm view <package-name> version

ස්ථාපිත අනුවාදය ලබා ගන්නේ කෙසේද ?


5
මගේ ස්ථාපනය මත, "npm -v <package-name>" විසින් npm හි අනුවාදයම වාර්තා කරයි. ලේඛනයේ ඇති පැකේජයක නවතම අනුවාදය ලැයිස්තුගත කිරීම සඳහා, "npm view <package-name> version" මඟින් කාර්යය ඉටු කරන බව මට පෙනී ගියේය.
ඩේවිඩ් ඒ. ග්‍රේ

15
npm showස්ථාපනය කර නොමැති npm හි නවතම දේ පෙන්වයි
Tsagana Nokhaeva

Answers:


2602

npm listදේශීය පැකේජ npm list -gසඳහා හෝ ගෝලීයව ස්ථාපනය කරන ලද පැකේජ සඳහා.

නිශ්චිත පැකේජයක අනුවාදය එහි නම තර්කයක් ලෙස සම්මත කිරීමෙන් ඔබට සොයාගත හැකිය. උදාහරණයක් ලෙස, npm list gruntමෙහි ප්‍රති result ලය වනු ඇත:

projectName@projectVersion /path/to/project/folder
└── grunt@0.4.1

විකල්පයක් ලෙස, npm listඔබේ සියලු පැකේජවල අනුවාදයන් බැලීමට ඔබට තර්කයක් ලෙස පැකේජ නාමයක් නොතබා ධාවනය කළ හැකිය :

├─┬ cli-color@0.1.6 
 └── es5-ext@0.7.1 
├── coffee-script@1.3.3 
├── less@1.3.0 
├─┬ sentry@0.1.2 
 ├── file@0.2.1 
 └── underscore@1.3.3 
└── uglify-js@1.2.6 

--depth=0ස්ථාපිත පැකේජවල පරායත්තතාවයන් නොමැතිව ලැයිස්තුගත කිරීම සඳහා ඔබට තර්කයක් එක් කළ හැකිය .


127
මැක් සහ ලිනක්ස් වල අපේක්ෂිත මොඩියුල අනුවාදය පෙරීමට "| grep module_name" එකතු කිරීම සතුටක්. විශේෂයෙන් -g සමඟ ගෝලීයව ධාවනය වන විට. උදාහරණයක් ලෙස: ස්ථාපිත සී express ්‍රගාමී අනුවාදය ලබා ගැනීම සඳහා "npm list -g | grep express".
guya

104
ඔබට විශේෂිත මොඩියුලයක් අවශ්‍ය නම්, ඔබට එය npm list less-middlewareඋදාහරණයක් ලෙස ක්‍රියාත්මක කළ හැකිය .
juanpaco

13
* නික්ස් පදනම් කරගත් පද්ධති සඳහා එක් @ ගේයාගේ ඉඟිය, වින්ඩෝස් හි ඔබට සමාන ප්‍රති results ල සඳහා පවර්ෂෙල් භාවිතා කළ හැකිය: | select-string module_nameමොඩියුලය පෙරීමට. නැතහොත්, ඔබ භාවිතා කරන්නේ Git Bash (හෝ Bash, ඒ සඳහා පමණි), ඔබට භාවිතා කළ හැකිය grep.
නොයෙල්

15
ඔබට මතක නැති නම් list, npm lsවැඩ කරයි. ඇත්ත වශයෙන්ම, බොහෝ npm විධානයන්ට අන්වර්ථයන් ඇති අතර, එපමනක් නොව, ඔබ විධානයක උපස්ථරයක් ටයිප් කරන්නේ නම්, මෙම උපස්ථරය සැක සහිත නම්, එය ද ක්‍රියා කරයි; උදාහරණයක් npm ls, npm list, npm lisසියලු ම වේ. ඔබට තවත් වාචික ප්‍රතිදානයක් අවශ්‍ය නම්, උත්සාහ කරන්න npm ll(නමුත් බොහෝ විට ඔබට --depth=0එයට එකතු කිරීමට අවශ්‍ය වනු ඇත).
jakub.g

4
පිටපතක් සමඟ විග්‍රහ කිරීම සඳහා ප්‍රතිදානය හොඳම නොවේ. වැනි දෙයක් නොකර පැකේජ අනුවාදය පමණක් වන ප්‍රතිදානයක් ලබා ගැනීමට ඇත්තටම ක්‍රමයක් නැද්දnpm list -g | awk -F@ '/<package>/ { print $2}'
Thayne

877

දේශීයව සහ ඒවායේ පරායත්තතාවයකින් තොරව ස්ථාපනය කර ඇති පැකේජ මොනවාදැයි සොයා ගැනීමට තවත් ඉක්මන් ක්‍රමයක් වන්නේ:

npm list --depth=0

එය ඔබට වැනි දෙයක් ලබා දෙයි

├── bower@0.8.6
├── grunt@0.4.1
├── grunt-bower-requirejs@0.4.3
├── grunt-contrib-clean@0.4.1
├── grunt-contrib-coffee@0.7.0
├── grunt-contrib-copy@0.4.1
├── grunt-contrib-imagemin@0.1.4
├── grunt-contrib-jshint@0.1.1
├── grunt-contrib-livereload@0.1.2
├── grunt-contrib-requirejs@0.4.1
├── grunt-regarde@0.1.1
└── grunt-svgmin@0.1.0

නිසැකවම, ගෝලීය වශයෙන් ද එය කළ හැකිය npm list -g --depth=0.

ඔබ පැකේජ විශාල ප්‍රමාණයක් ස්ථාපනය කර ඇත්නම් මෙම ක්‍රමය වඩාත් පැහැදිලි වේ.

යාවත්කාලීන කළ යුතු පැකේජ මොනවාදැයි සොයා ගැනීමට, ඔබට භාවිතා කළ හැකිය npm outdated -g --depth=0.


14
එය මට --depth
ygaradon නොමැතිව

7
ඔවුන් එය npm 1.4.6 හි සවි කර ඇති බව පෙනේ. Github.com/npm/npm/issues/4733
Howie

7
සමඟ විශිෂ්ට ලෙස ක්‍රියා කරයි| grep <package_name>
මාකෝ ප්‍රින්ස්

4
gygaradon නිවැරදියි, නමුත් --depth=0එය වේගවත් කරයි, එයට පුනරාවර්තන පරායත්තයන් පැටවිය යුතු නැති නිසා
මාකෝ ප්‍රින්ස්

npm list -g --depth=0ගෝලීයව ස්ථාපනය කර ඇති ලැයිස්තු මොඩියුල සඳහා
එඩ්ජ් දේව්

223

npm view <package> version - පැකේජයේ ඇති නවතම අනුවාදය ලබා දෙයි.

npm list --depth=0 - සියලු ස්ථාපිත මොඩියුලවල අනුවාදයන් පරායත්තතාවයකින් තොරව ලබා දෙයි.

npm list - සියලුම මොඩියුලවල සහ පරායත්තයන්ගේ අනුවාදයන් ලබා දෙයි.

අවසාන වශයෙන් නෝඩ් අනුවාදය ලබා ගැනීම සඳහා: node -v


16
npm view <package> අනුවාදය, දේශීය ගොනු පද්ධතිය නොව npm දුරස්ථ ලේඛකාධිකාරයට යයි ...
ඇලෙක්සැන්ඩර් මිල්ස්

Lex ඇලෙක්සැන්ඩර්මිල්ස් ඇත්ත, නමුත් එය මෙහි තිබීම ඒ සඳහා තවත් සෙවීමක් වළක්වයි. Btw, npm v, npm infoහා npm showසියලු හෙවත් ඇත npm view.
සීපීඑච්පයිතන්

88
npm info YOUR_PACKAGE version

උදා

npm info grunt version
0.4.5

106
මෙය ස්ථාපිත පැකේජ අනුවාදය නොපෙන්වයි, එය දැනට පවතින නවතම අනුවාදය පෙන්වයි.
ටැනර් සෙමරාඩ්

1
@ ටැනර්-සෙමරාඩ් සමඟ එකඟ වන්න. එය පැහැදිලි කිරීම සඳහා මම ඩොක්ස් ඔෆ් එන්පීඑම් වෙත පරීක්ෂා කළෙමි. එන්පීඑම්npm info සඳහා වන අන්වර්ථය වන npm viewඅතර එම ස්ථාවරය ඔබට පෙනෙනු ඇත: මෙම විධානය පැකේජයක් පිළිබඳ දත්ත පෙන්වන අතර එය අවුට්ෆඩ් වින්‍යාසය මඟින් යොමු කරන ලද ප්‍රවාහයට මුද්‍රණය කරයි. [...] නිශ්චිතව දක්වා නොමැති නම් පෙරනිමි අනුවාදය "නවතම" වේ. මම ඡන්දය ප්‍රකාශ කරන්නේ එලෙසිනි.
dannydedog

නවතම ස්ථාපනය කර ඇති නමුත් ලබා ගත හැකි නවතම අනුවාදය පෙන්වයි. පහත් කොට ඇත.
lofihelsinki

2
npm info YOUR_PACKAGE versionවැඩ කළ එකම එක :)
GOXR3PLUS

'npm info YOUR_PACKAGE version' වැඩ කළ එකම එක
ජොනාස්

64

මම දැන් පාවිච්චි කළා

npm list | grep <package name>

ඒක නියමයි

කවුළු ධාවනය වන විට:

npm list | find <package name>

පවර්ෂෙල් ධාවනයේදී:

npm list | sls <package name>

3
findඅනුවාදය මට වැඩ කරන්නේ නැත - උපුටා ගත් නූල් සමඟ වුවද, පවර්ෂෙල් හොඳින් ක්‍රියා කරයි
fiat

5
වින්ඩෝස් භාවිතා කරන්නන් සඳහා: ද්විත්ව උපුටා දැක්වීම්npm list -g --depth=0 |find "<package name>" සටහන් කරන්න
robe007

58

පැකේජයේ මුල සිට කරන්න:

node -p "require('./package.json').version"

සංස්කරණය කරන්න : (එබැවින් ඔබ cdදැනටමත් එහි නොමැති නම් මොඩියුලයේ නිවාස නාමාවලියට ඇතුළත් විය යුතුය. ඔබ මොඩියුලය ස්ථාපනය කර ඇත්නම් npm installඑය යටතට ගැනේ node_modules/<module_name>)

සංස්කරණය 2 : @ ජෙෆ්-ඩිකීගේ පිළිතුරට අනුව යාවත්කාලීන කරන ලදි


හොඳයි! අනෙක් පිළිතුරු යෝජනා කරන පරිදි "npm ලැයිස්තුව" ධාවනය කිරීමට වඩා තරමක් වේගවත් (~ 20s වෙනුවට s 1s) - අවම වශයෙන් ඔබ මෙම කේත ස්නිපටය සූදානම් කර ඇති විට! (මෙය සිදු කිරීම සඳහා සැබවින්ම npm ප්ලගිනයක් තිබිය යුතුය ...)
Venryx

2
හෝnode -p "require('./package.json').version"
ජෙෆ් ඩිකී

3
Like


22

ඉහත පිළිතුරු සමහරක් ඒකාබද්ධ කිරීමෙන් සුපිරි සරල හා සුපිරි ඉක්මන් විමසුමක් ඇති කරයි.
ව්‍යාපෘති මූලයෙන් ධාවනය කරන්න. cdකිසිදු ෆෝල්ඩරයකට යාමට අවශ්‍ය නැත , පේළි 1 ක් පමණි:

node -p "require('SOMEPACKAGE/package.json').version"


22

ඔබට මෙම විධානය සමඟ අනුවාදය පරීක්ෂා කළ හැකිය:

npm info <package name> version


29
නැවතත්, එය පෙන්වන්නේ දැනට ස්ථාපනය කර ඇති පැකේජයේ අනුවාදය නොව පැකේජ ලේඛනයේ ඇති නවතම අනුවාදයයි.
ඩේවිඩ් ෆෙරෙන්සි රොගොසන්

@ ඩේවිඩ් ෆෙරෙන්සි එහි ප්‍රදර්ශනය සමඟ එකඟ වන්නේ npm තොරතුරු httpaction
Nitin

17

ඔබ jq ස්ථාපනය කිරීමට එකඟ නම් , ඔබට JSON ප්‍රතිදානය භාවිතා කළ හැකිය npm list.

npm -j ls <package-name> | jq -r .version

හෝ, ඔබට වාචික වීමට අවශ්‍ය නම්

npm --json list <package-name> | jq --raw-output '.version'

උදාහරණයක් වශයෙන්:

$ npm -j ls ghost | jq -r .version
0.4.2

එසේම, JSON ආකෘතිය ගෝලීය පැකේජ සඳහා තරමක් වෙනස් වේ, එබැවින් ඔබට විමසුම වෙනස් කිරීමට අවශ්‍ය වේ.

උදාහරණයක් වශයෙන්:

$ npm -j -g ls | jq -r .dependencies.ghost.version
0.4.2

14

ඔබ ප්‍රමාණවත් තරම් නිර්භීත නම් (සහ nodeස්ථාපනය කර ඇත), ඔබට සැමවිටම මෙවැනි දෙයක් කළ හැකිය:

echo "console.log(require('./package.json').version);" | node

මෙය වත්මන් පැකේජයේ අනුවාදය මුද්‍රණය කරනු ඇත. මේ වගේ උමතු වීමට ඔබට එය වෙනස් කළ හැකිය:

echo "eval('var result='+require('child_process').execSync('npm version',{encoding:'utf8'})); console.log(result.WHATEVER_PACKAGE_NAME);" | node

එමඟින් WHATEVER_PACKAGE_NAMEඇසුරුම්වල අනුවාදය මුද්‍රණය වේ npm version.


node -e "console.log(require('./package.json').version);"
පැපිරෝ

12

ස්ථාපනය කර ඇති සියලුම පැකේජ දේශීයව හෝ ගෝලීයව බැලීමට මෙම විධානයන් භාවිතා කරන්න:

  1. npm listදේශීය පැකේජ npm list -gසඳහා හෝ ගෝලීයව ස්ථාපනය කරන ලද පැකේජ සඳහා.
  2. npm list --depth=0
  3. npm list | sls <package name>
  4. node -v


10

මම හරියටම මෙවලමක් සාදා ඇත - qnm

qnm - විමසීමට සරල CLI උපයෝගීතාව node_modules .

මෙය භාවිතයෙන් ස්ථාපනය කරන්න:

npm i --global qnm

සහ ධාවනය:

qnm [module]

උදාහරණයක් වශයෙන්:

> qnm lodash

lodash
├── 4.17.5
├─┬ cli-table2
 └── 3.10.1
└─┬ karma
  └── 3.10.1

අපි ඇති මාධ්යයක් lodashවන මූල ස්ථාපනය node_modulesතුළ සහ අනෙකුත් පිටපත් දෙකක් node_modulesවන cli-table2හාkarma .

එය සැබවින්ම වේගවත් වන අතර ටැබ් සම්පුර්ණ කිරීම සහ ගැලපීම් සෙවීම වැනි හොඳ විශේෂාංග ඇත.


9

අනුවාද අංක භාවිතය සමඟ දේශීය පැකේජ ලැයිස්තුගත කිරීම සඳහා:

npm ls --depth=0

අනුවාද අංක භාවිතය සමඟ ගෝලීය පැකේජ ලැයිස්තුගත කිරීම සඳහා:

npm ls -g --depth=0


8

ඔබට npm view [මොඩියුලය] අනුවාදය , npm තොරතුරු [මොඩියුලය] අනුවාදය භාවිතා කළ හැකියස්ථාපිත npm මොඩියුලයක අනුවාදය පරීක්ෂා කිරීම සඳහා , npm show [module] version හෝ npm v [module] version භාවිතා කළ හැකිය.

මගේ මැසිවිලි මොඩියුලයේ අනුවාදය 0.4.5 යැයි සිතමු:

npm view grunt version => 0.4.5
npm info grunt version => 0.4.5
npm show grunt version => 0.4.5
npm v grunt version    => 0.4.5

15
ඒවා සියල්ලම පෙන්වන්නේ දැනට ස්ථාපනය කර ඇති අනුවාදය නොව අළුත්ම පවතින අනුවාදයයි
sth

8

npm list --depth 0 අනුවාදය සහිත සියලුම පුස්තකාල පෙන්වන විධානය වන නමුත් ඔබට භාවිතා කළ හැකිය npm-check

npm-check යනු අනුවාද පද්ධති සිදුවීම සම්බන්ධව සියල්ල කළමනාකරණය කිරීමට හොඳ පුස්තකාලයක් වන අතර එය පුස්තකාල සංස්කරණ, නව අනුවාද යාවත්කාලීන කිරීම් සහ භාවිතයට නොගත් අනුවාදය සහ තවත් බොහෝ දේ පෙන්වනු ඇත.

එය ස්ථාපනය කිරීමට ක්‍රියාත්මක වන්න

npm install -g npm-check

සරලව දුවන්න

npm-check

පැකේජ අනුවාදය, නව අනුවාද යාවත්කාලීන කිරීම සහ භාවිතයට නොගත් අනුවාදය පිළිබඳ සෑම දෙයක්ම පෙන්වන තිර රුව පරීක්ෂා කරන්න.

රූප විස්තරය මෙහි ඇතුළත් කරන්න

එය ගෝලීය වශයෙන් ද ක්‍රියාත්මක වේ. එය උත්සාහ කර බලන්න. මෙය යමෙකුට උපකාර කරනු ඇතැයි සිතමි.


7

මෙහි එහා මෙහා ගෙන යා හැකි යුනික්ස් (භාවිතා වේ grepහා sedගෝලීයව ස්ථාපනය npm පැකේජය අනුවාදය අනුලකුණු වැල (ඉවත් කිරීම නැවත බව) එක්-ලයිනර් gසිට -pgවෙනුවට විමසුම දේශීය පැකේජ සඳහා):

$ npm ll -pg --depth=0 grunt | grep -o "@.*:" | sed 's/.$//; s/^.//'
0.4.5
  • මෙම npm llවැනි ෆෝමැට් වන parseable string ප්රතිදානයනට:/usr/lib/node_modules/npm:npm@2.14.8: ;
  • මෙම grepවිධානය අතර වටිනාකම කුංකුම @හා :, සහභාගීත්ව;
  • මෙම sedවිධානය අවට චරිත ඉවත් කරයි.

6

මම මෙය මගේ .bashrc වෙත එකතු කළෙමි

function npmv {
    case $# in # number of arguments passed
    0) v="$(npm -v)" ; #store output from npm -v in variable
        echo "NPM version is: $v"; #can't use single quotes 
                                   #${v} would also work
    ;;   
    1) s="$(npm list --depth=0 $1 | grep $1 | cut -d @ -f 2)";
       echo "$s";
    ;;
    2) case "$2" in # second argument
        g) #global|#Syntax to compare bash string to literal
             s="$(npm list --depth=0 -g $1 | grep $1 | cut -d @ -f 2)";
        echo "$s";
        ;;
        l) #latest
             npm view $1 version; #npm info $1 version does same thing
       ;;
       *) echo 'Invalid arguments';
       ;;
       esac;
    ;;
    *) echo 'Invalid arguments';
    ;;
    esac;
}
export -f npmv

දැන් මට කළ යුතුව ඇත්තේ ටයිප් කිරීම පමණි:

  • npm අනුවාදය සඳහා npmv උදා:NPM version is: 4.2.0
  • දේශීය අනුවාදය සඳහා npmv <package-name> උදා:0.8.08
  • ගෝලීය අනුවාදය සඳහා npmv <package-name> g උදා:0.8.09
  • නවතම අනුවාදය සඳහා npmv <package-name> l උදා:0.8.10

සටහන -d මත කපන විධානය යන්නෙන් පරිසීමාව, ඉන්පසු @, පසුව f යන්නෙන් අදහස් කරන්නේ ක්ෂේත්‍ර 2 යනු දෙවන ක්ෂේත්‍රය යන්නෙන් @ සංකේතයේ එක් පැත්තක් ඇති බැවිනි.


5

ඔබට මෙය උත්සාහ කළ හැකිය: npm show {package} versionනවතම පැකේජ අනුවාදය පෙන්වයි. ඔබේ පැකේජය යල් පැන ගිය එකක් නම්, npm outdatedඑය අනුවාද තොරතුරු සමඟ පෙන්වනු ඇත.


3
OP විමසුවේ දැනට ස්ථාපනය කර ඇති පැකේජයේ අනුවාදය ගැන මිස පැකේජ ලේඛනයේ ඇති නවතම අනුවාදය ගැන නොවේ.
ඩේවිඩ් ෆෙරෙන්සි රොගොසන්

5

මෙය සරල ප්‍රශ්නයක් වන අතර, මා ඉහත දකින දෙයට වඩා සරල පිළිතුරක් තිබිය යුතුය.

ස්ථාපිත npm පැකේජ ඒවායේ අනුවාදය සමඟ බැලීමට, විධානය npm ls --depth=0, පෙරනිමියෙන්, දේශීයව ස්ථාපනය කර ඇති දේ පෙන්වයි. ගෝලීයව ස්ථාපනය කර ඇති පැකේජ බැලීමට, -globalතර්කය එක් කරන්න : npm ls --depth=0 -global.

--depth=0 ස්ථාපිත පැකේජයන්ගේ පරායත්තතාවයකින් තොරව ලැයිස්තුවක් ලබා දෙයි, එය ඔබට බොහෝ විට කිරීමට අවශ්‍ය වන්නේ එයයි.

lsවිධානය නම වන අතර, list අන්වර්ථ වේ සඳහා ls.


3

වෙත පිවිසෙන්න package.json

ඔබට මේ සමඟ package.jsonහෝ bower.jsonපැකේජයට ප්‍රවේශ විය හැකිය :

notepad ./node_modules/:packageName/package.json

මෙය විවෘත කරනු ඇත package.jsonතුල notepadඇති වූ අතර මේ version numberපිළිබඳ :packageNameඔබ ඇතුළත් command.

උදාහරණයක් වශයෙන් :

notepad ./node_modules/vue-template-compiler/package.json

වාසනාව.


7
මෙය කිරීමට වඩා පහසු ක්‍රම තිබේ පමණක් නොව, ඔබේ පැකේජයේ ඔබ සඳහන් කර ඇති අනුවාදය සෙම්වර් පරාසයේ අංකන නිසා ස්ථාපිත අනුවාදය නොවිය හැකිය. , පරායත්ත අනුවාදය ^ 1.3.0 ලෙස නිශ්චිතව දක්වා ඇති වේ හැකිය, නමුත් එම 1.99.99 කිරීමට 1.3.0 අනුවාදය සිට කිසිවක් අදහස් හැක
Isochronous

3

අපට ඕනෑම පොරොන්දුවක් (ඔබේ මොඩියුලයේ නම) -v භාවිතා කළ හැකිය


1
මෙය පෙන්වන්නේ නවතම නාමාවලිය මිස දේශීය නාමාවලියෙහි අනුවාදය නොවේ.
ක්‍රිස්ටියන්බන්ඩි

ristchristianbundy ඔබට npm ලැයිස්තුව භාවිතා කළ හැකිය --depth = 0 | grep uuid
නිටින්.

මට භාවිතා කිරීමට සිදු විය npm list --depth=0 | grep uuid | awk '{ print $2; }' | cut -d '@' -f 2, නමුත් ඔව්, මෙය ඉහළ මට්ටමේ යැපීමක් පවතින තාක් කල් ක්‍රියාත්මක වේ. මුල් ප්‍රශ්නය මත පදනම්ව එය එසේ යැයි මම නොසිතමි.
christianbundy


1

එහි ඉතා සරලයි .. පේළියට පහළින් ටයිප් කරන්න

npm view < package-name > version

** උදාහරණයක් **

npm view redux version

මා සතුව 7.2.0 අනුවාදය ඇත

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.