Je viens de regarder une vidéo de Kent C. Dodds où il explique son .bash_profile .
Il utilise le les alias suivants pour yarn et npm:
## npm aliases alias ni="npm install"; alias nrs="npm run start -s --"; alias nrb="npm run build -s --"; alias nrd="npm run dev -s --"; alias nrt="npm run test -s --"; alias nrtw="npm run test:watch -s --"; alias nrv="npm run validate -s --"; alias rmn="rm -rf node_modules"; alias flush-npm="rm -rf node_modules && npm i && say NPM is done"; alias nicache="npm install --prefer-offline"; alias nioff="npm install --offline"; ## yarn aliases alias yar="yarn run"; alias yas="yarn run start -s --"; alias yab="yarn run build -s --"; alias yat="yarn run test -s --"; alias yav="yarn run validate -s --"; alias yoff="yarn add --offline"; alias ypm="echo \"Installing deps without lockfile and ignoring engines\" && yarn install --no-lockfile --ignore-engines"
Je me demandais ce que signifiait le -s - drapeau faire? Kent ne l'explique pas dans la vidéo et je n'ai trouvé aucune info sur le drapeau ( s).
3 Réponses :
Cela signifie la fin des options de commande. Par conséquent, vous ne pouvez pas utiliser les options de commande (telles que -s ) après un double tiret. Cependant, vous pouvez, par exemple, lister les fichiers à traiter par commande.
L'option -s elle-même est courte équivalente à --loglevel = silent qui désactive la sortie de journalisation.
-s équivaut à --silent .
- est une convention Unix courante signifiant la fin des options. Après cela, même si un argument ressemble à une option, il sera considéré comme un argument positionnel.
L'option -s fait que yarn ne produit rien sur la sortie standard, c'est-à-dire. le fait taire.
Le - provient de conventions de l'utilitaire posix et est très courant parmi les outils Linux en ligne de commande:
alias yas="yarn run start -s --"; yas -package
Donc:
alias yas="yarn run start -s"; yas -package
Tous ok, il affichera -n . Mais:
> printf -- -n -n
Pour permettre de passer -n , ie. option commençant par un - comme premier argument de printf, on peut utiliser --:
> printf -n bash: printf: -n: invalid option printf: usage: printf [-v var] format [arguments]
Donc:
> printf "%s" -n -n
lancera une option inconnue par fil, car il essaiera d'analyser -p comme une option. Faire:
Guideline 10: The first -- argument that is not an option-argument should be accepted as a delimiter indicating the end of options. Any following arguments should be treated as operands, even if they begin with the '-' character.
lancera un paquet inconnu par yarn car il n'y a pas de paquet nommé -package . En utilisant - , l'auteur empêche effectivement l'utilisateur (lui-même) de transmettre des options supplémentaires à yarn, car tous les arguments suivants seront interprétés comme des noms de packages uniquement.
Et le capital S? Y a-t-il une différence?
@ZakherMasri Et la capitale S? Différence entre quoi et quoi?
Le S majuscule au petit s (-s vs -S). Est-il même sensible à la casse?
Ça fait deux drapeaux. Par convention,
-sest le raccourci pour--silent.-est juste la fin des arguments àexécuteret le début des arguments à tout ce que vous exécutez. Voir docs.npmjs.com/cli/run-script.html (pas les documents d'installation, pour lesquels cela n'est pas utilisé).Copie possible de Que fait - faire lors de l'exécution d'une commande npm? a>
Également stackoverflow.com/q/41383247/3001761