Hoe vind ik de versie van een geïnstalleerd node.js/npm pakket?
Hiermee wordt de versie van npm zelf afgedrukt:
npm -v <package-name>
Dit drukt een cryptische fout af:
npm version <package-name>
Dit drukt de pakketversie in het registeraf (d.w.z. de nieuwste beschikbare versie):
npm view <package-name> version
Hoe krijg ik de geïnstalleerde versie?
Antwoord 1, autoriteit 100%
npm list
voor lokale pakketten of npm list -g
voor wereldwijd geïnstalleerde pakketten.
Je kunt de versie van een specifiek pakket vinden door de naam als argument door te geven. Bijvoorbeeld, npm list grunt
zal resulteren in:
projectName@projectVersion /path/to/project/folder
└── [email protected]
U kunt ook gewoon npm list
uitvoeren zonder een pakketnaam als argument door te geven om de versies van al uw pakketten te zien:
├─┬ [email protected]
│ └── [email protected]
├── [email protected]
├── [email protected]
├─┬ [email protected]
│ ├── [email protected]
│ └── [email protected]
└── [email protected]
Je kunt ook het argument --depth=0
toevoegen om geïnstalleerde pakketten weer te geven zonder hun afhankelijkheden.
Antwoord 2, autoriteit 32%
Een andere snelle manier om erachter te komen welke pakketten lokaalen zonder hun afhankelijkhedenzijn geïnstalleerd, is door:
npm list --depth=0
Wat je zoiets geeft als
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
└── [email protected]
Natuurlijk kan hetzelfde globaal worden gedaan met npm list -g --depth=0
.
Deze methode is duidelijker als je veel pakketten hebt geïnstalleerd.
Om erachter te komen welke pakketten moeten worden bijgewerkt, kunt u npm outdated -g --depth=0
gebruiken.
Antwoord 3, autoriteit 9%
npm view <package> version
– retourneert de laatst beschikbare versie op het pakket.
npm list --depth=0
– retourneert versies van alle geïnstalleerde modules zonder afhankelijkheden.
npm list
– geeft versies van alle modules en afhankelijkheden terug.
En als laatste om de node-versie te krijgen: node -v
Antwoord 4, autoriteit 3%
npm info YOUR_PACKAGE version
bijv.
npm info grunt version
0.4.5
Antwoord 5, autoriteit 2%
Vanaf de hoofdmap van het pakket:
node -p "require('./package.json').version"
EDIT: (je moet dus cd
in de homedirectory van de module plaatsen als je daar nog niet bent. Als je de module hebt geïnstalleerd met npm install
, dan staat het onder node_modules/<module_name>
)
EDIT 2: bijgewerkt volgens antwoord van @jeff-dickey
Antwoord 6, autoriteit 2%
Ik heb net
. gebruikt
npm list | grep <package name>
en het werkte prima
Op Windows draaien:
npm list | find <package name>
In PowerShell uitvoeren:
npm list | sls <package name>
Antwoord 7
Voor lokale pakketten
npm list --depth=0
Voor wereldwijde pakketten
npm list -g --depth=0
Antwoord 8
Door een aantal van de bovenstaande antwoorden te combineren, krijg je een supereenvoudige en supersnelle zoekopdracht.
Uitvoeren vanaf projectroot. Het is niet nodig om cd
in een map te plaatsen, slechts 1 regel:
node -p "require('SOMEPACKAGE/package.json').version"
Antwoord 9
Je kunt de versie ook controleren met dit commando:
npm info <package name> version
Antwoord 10
Als u akkoord gaat met de installatie van jq, kunt u de JSON-uitvoer van npm list
gebruiken.
npm -j ls <package-name> | jq -r .version
of, als je uitgebreid wilt zijn
npm --json list <package-name> | jq --raw-output '.version'
Bijvoorbeeld:
$ npm -j ls ghost | jq -r .version
0.4.2
Bovendien is de JSON-indeling iets anders voor globale pakketten, dus u moet de query wijzigen.
Bijvoorbeeld:
$ npm -j -g ls | jq -r .dependencies.ghost.version
0.4.2
Antwoord 11
Het is heel eenvoudig.. Typ gewoon onder de regel
npm view <package-name> version
** Voorbeeld **
npm view redux version
Ik heb versie 7.2.0 van redux
Antwoord 12
Als je dapper genoeg bent (en node
hebt geïnstalleerd), kun je altijd iets doen als:
echo "console.log(require('./package.json').version);" | node
Hiermee wordt de versie van het huidige pakket afgedrukt.
Je kunt het ook aanpassen om gek te worden, zoals dit:
echo "eval('var result='+require('child_process').execSync('npm version',{encoding:'utf8'})); console.log(result.WHATEVER_PACKAGE_NAME);" | node
Dat zal de versie van het WHATEVER_PACKAGE_NAME
-pakket afdrukken, dat wordt gezien door npm version
.
Antwoord 13
Gebruik deze commando’s om alle geïnstalleerde pakketten lokaal of globaal te zien:
npm list
voor lokale pakketten ofnpm list -g
voor wereldwijd geïnstalleerde pakketten.npm list --depth=0
npm list | sls <package name>
node -v
Antwoord 14
Probeer met:
npm list --depth 1 --global packagename
Antwoord 15
Ik heb een tool gebouwd die precies dat doet – qnm
qnm – Een eenvoudig CLI-hulpprogramma voor het opvragen van de node_modules
-directory.
Installeer het met:
npm i --global qnm
en uitvoeren:
qnm [module]
bijvoorbeeld:
> qnm lodash
lodash
├── 4.17.5
├─┬ cli-table2
│ └── 3.10.1
└─┬ karma
└── 3.10.1
Wat betekent dat we lodash
hebben geïnstalleerd in de hoofdmap van de node_modules
en twee andere exemplaren in de node_modules
van cli-table2
en karma
.
Het is erg snel en heeft een aantal leuke functies, zoals het invullen van tabbladen en zoeken naar overeenkomsten.
Antwoord 16
npm list --depth 0
is het commando dat alle bibliotheken met versie laat zien, maar je kunt npm-check
gebruiken
npm-check is een goede bibliotheek om al die dingen met betrekking tot de versiesysteemgebeurtenis te beheren, het zal bibliothekenversies, nieuwe versie-updates en ongebruikte versie en nog veel meer tonen.
om het te installeren, voer het gewoon uit
npm install -g npm-check
en gewoon uitvoeren
npm-check
controleer de schermafbeelding die alles toont over de pakketversie, de nieuwe versie-update en de ongebruikte versie.
Het werkt ook wereldwijd. probeer het eens.
Ik hoop dat dit iemand helpt.
Antwoord 17
Om lokale pakketten met het versienummer weer te geven, gebruik:
npm ls --depth=0
Als u globale pakketten met het versienummer wilt weergeven, gebruikt u:
npm ls -g --depth=0
Antwoord 18
Hier is een draagbare Unix (met behulp van grep
en sed
) one-liner die de versietekenreeks van een globaal geïnstalleerd npm-pakket retourneert (verwijder de g
van -pg
om in plaats daarvan lokale pakketten op te vragen):
$ npm ll -pg --depth=0 grunt | grep -o "@.*:" | sed 's/.$//; s/^.//'
0.4.5
- de
npm ll
voert een parseerbare tekenreeks uit met de indeling:/usr/lib/node_modules/npm:[email protected]:
; - de opdracht
grep
extraheert de waarde tussen@
en:
, inclusief; - de opdracht
sed
verwijdert de omringende tekens.
Antwoord 19
U kunt npm view [module] version, npm info [module] version, npm show [module] versionof npm v [module]-versieom de versie op een geïnstalleerde npm-module te controleren.
Laten we aannemen dat mijn versie van de gruntmodule de 0.4.5 is:
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
Antwoord 20
Ik heb dit toegevoegd aan mijn .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
Nu hoef ik alleen nog maar te typen:
- npmvvoor de versie van npm, bijvoorbeeld:
NPM version is: 4.2.0
- npmv <pakketnaam>voor de lokale versie, bijvoorbeeld:
0.8.08
- npmv <pakketnaam> gvoor algemene versie, bijvoorbeeld:
0.8.09
- npmv <pakketnaam> lvoor de nieuwste versie, bijvoorbeeld:
0.8.10
Opmerking -d op het knipcommando betekent begrenzen door, gevolgd door @, dan betekent f veld, de 2 betekent tweede veld, aangezien er één aan weerszijden van het @-symbool zal zijn.
Antwoord 21
Dit is een eenvoudige vraag en zou een eenvoudiger antwoord moeten hebben dan wat ik hierboven zie.
Om de geïnstalleerde npm-pakketten met hun versie te zien, is het commando npm ls --depth=0
, dat standaard laat zien wat er lokaal is geïnstalleerd. Om de globaal geïnstalleerde pakketten te zien, voegt u het argument -global
toe: npm ls --depth=0 -global
.
--depth=0
retourneert een lijst met geïnstalleerde pakketten zonder hun afhankelijkheden, wat u meestal wilt doen.
ls
is de naam van de opdracht, en list
is een aliasvoor ls
.
Antwoord 22
npm list pakketnaamgeeft de momenteel geïnstalleerde versie
Antwoord 23
Ik heb een aantal zeer creatieve antwoorden gezien, maar je kunt dit gewoon doen (voor globale pakketten voeg je de –global switch toe):
npm ls package
Voorbeeld:
npm ls babel-cli
`-- [email protected]
De npm-documentatie zegt dat npm -ls
Dit commando zal alle versies van pakketten die
zijn geïnstalleerd, evenals hun afhankelijkheden, in een boomstructuur.
Antwoord 24
Je kunt dit proberen:
npm show {package} version
toont de laatste pakketversie.
En als uw pakket verouderd is, toont npm outdated
het met versie-informatie.
Antwoord 25
Toegang tot package.json
Je hebt toegang tot package.json
of bower.json
van het pakket met:
notepad ./node_modules/:packageName/package.json
Hiermee wordt het package.json
geopend in notepad
met het version number
van de :packageName
die u opgenomen in het command
.
Bijvoorbeeld:
notepad ./node_modules/vue-template-compiler/package.json
Veel succes.
Antwoord 26
Als je wilt controleren of een bepaalde module wereldwijd is geïnstalleerd, gebruik dan op *nix-systemen:
npm list -g --depth=0 | grep <module_name>
Antwoord 27
We kunnen npm view any-promise(uw modulenaam) -v
gebruiken
Antwoord 28
Er is een eenvoudige manier om dit te doen.
ga eerst naar de gewenste locatie (waar het pakket.json zich bevindt).
en eenvoudig open package.json-bestand als teksteditor.
op deze manier kunt u alle moduleversies op één plek vinden.
package.json ziet er zo uit
pakket.json
{
“name”: “raj”,
“versie”: “1.0.0”,
“description”: “”,
“main”: “index.js”,
“scripts”: {
“test”: “echo “Fout: geen test opgegeven” && exit 1″
},
“auteur”: “”,
“licentie”: “ISC”,
“afhankelijkheden”: {
“bcrypt”: “^5.0.1”,
“connect-flash”: “^0.1.1”,
“dotenv”: “^10.0.0”,
“ejs”: “^3.1.6”,
“express”: “^4.17.1”,
“express-session”: “^1.17.2”,
“mysql2”: “^2.2.5”,
“paspoort”: “^0.4.1”,
“passport-local”: “^1.0.0”,
“sequelize”: “^6.6.2”,
“socket.io”: “^4.1.2”
}
}
zodat u elke geïnstalleerde afhankelijkheid (modules) op uw pc kunt lezen
bijv. “socket.io”: “^4.1.2” dus “socket.io” met versie “4.1.2”
Antwoord 29
U kunt package.json zien om de versie van geïnstalleerde pakketten te zien
Om de lijst op de opdrachtregel te krijgen
npm ls
Het geeft je alle geïnstalleerde pakketten in een project met hun respectievelijke versies.
Voor een bepaalde pakketversie
npm ls <package-name>
voor bijv.
npm ls next
Het geeft de versie terug
-- [email protected]
Antwoord 30
Je kunt package.json
ook bekijken om handmatig in een teksteditor te zien welke pakketten afhankelijkheden zijn. Gebruik dit als npm list
niet werkt als handmatig alternatief.