1. Vorbereitung1.1 Projekt erstellen $ npm init 1.2 Installationsabhängigkeiten $ npm ich commander chalk zwischenablage 1.3 Erstellen der Eintragsdatei index.js Werfen wir einen Blick auf process.argv // index.js Konsole.log(Prozess.argv) Terminal-Ausführungsbefehl $ Knotenindex Im Terminal sehen Sie
Befehl ausführen $ Knotenindex generieren Der dritte Parameter: generate 2. Befehlszeilen schreiben 2.1 Version und Beschreibung hinzufügen// index.js const-Programm = erforderlich('Kommandant'); program.version('1.0.0').description('Einfacher Passwortgenerator').parse() Terminalausführungsbefehl: Sie können die Beschreibung von passgen sehen Führen Sie den Befehl weiter aus: Sie können die Version von passgen sehen 2.2 Befehl zur Konfiguration der Kennwortlängeconst-Programm = erforderlich('Kommandant'); program.version('1.0.0').description('Einfacher Passwortgenerator') program.option('-l --length <Zahl>', 'Länge des Passworts').parse() Konsole.log(Programm.Opts()) Terminalausführungsbefehl: Sie können den Kennwortlängenbefehl von passgen sehen Terminal-Ausführungsbefehl: 2.2 Standardwert für Passwortlänge hinzugefügt: 8program.option('-l --length <Zahl>', 'Länge des Passworts', '8').parse() Konsole.log(Programm.Opts()) Terminalausführungsbefehl: Legen Sie die Kennwortlänge nicht fest. Sie können sehen, dass der Standardwert -8 verwendet wird. Terminalausführungsbefehl: Setzen Sie die Kennwortlänge auf 10 2.3 Konfigurieren des Befehls zum Speichern des Passwortsprogram.option('-l --length <Zahl>', 'Länge des Passworts', '8') .option('-s --save', 'Passwort in password.txt speichern').parse() 2.4 Passwortformat konfigurieren: Keine Zahlen.option('-nn --no-number', 'Zahlen entfernen').parse() Terminal-Ausführungsbefehl: Standardmäßig gibt es Zahlen Terminalausführungsbefehl: Digitales Passwort festlegen und löschen 2.5 Konfigurationskennwortformat: Keine Symbole.option('-ns --no-symbols', 'Symbole entfernen').parse() Terminal-Ausführungsbefehl: Standardmäßig hat es Symbole Terminalausführungsbefehl: Digitales Passwort festlegen und löschen 3. Parsen der Kommandozeile - Erstellen eines Passworts// index.js const-Programm = erforderlich('Kommandant'); const createPassword = erfordern('./utils/createPassword') const log = konsole.log program.version('1.0.0').description('Einfacher Passwortgenerator') Programm .option('-l --length <Zahl>', 'Länge des Passworts', '8') .option('-s --save', 'Passwort in password.txt speichern') .option('-nn --no-numbers', 'Zahlen entfernen') .option('-ns --no-symbols', 'Symbole entfernen').parse() const {Länge, Speichern, Zahlen, Symbole} = program.opts() // Generiertes Passwort abrufen const generatedPassword = createPassword(Länge, Zahlen, Symbole) // Generiertes Passwort ausgeben log(generiertesPasswort) Erstellen Sie utils/createPassword.js // Passwort erstellen.js const alpha = "qwertyuiopasdfghjklzxcvbnm" Konstantenzahlen = "0123456789" Konstante Symbole = '!@#$%^&*_-=+' const createPassword = (Länge = 8, hat Zahlen = wahr, hat Symbole = wahr) => { let chars = alpha hatZahlen ? (Zeichen += Zahlen): '' hatSymbole? (Zeichen += Symbole): '' returniere generatePassword(Länge, Zeichen) } const generatePassword = (Länge, Zeichen) => { let Passwort = '' für(lass i = 0; i < Länge; i++){ Passwort + = Zeichen.charAt (Math.floor (Math.random () * Zeichen.Länge)) } Passwort zurückgeben } module.exports = Passwort erstellen Terminalausführungsbefehl: Kennwortgenerierung anzeigen 3.1 Farbe hinzufügen// index.js const Kreide = erforderlich('Kreide'); log(chalk.blue('Generiertes Passwort: ') + chalk.bold(generiertesPasswort)) Terminal führt Befehl aus: Sie können die Farbänderungen sehen 3.2 Zwischenablage hinzufügen// index.js const clipboardy = erfordern('Zwischenablage'); // In die Zwischenablage kopieren clipboardy.writeSync(generiertesPasswort) log(chalk.yellow('Passwort in die Zwischenablage kopiert!')) 4. Speichern Sie das Passwort in der entsprechenden Datei// index.js const savePassword = erfordern('./utils/savePassword') // In Datei speichern if (speichern) savePassword(generiertesPasswort) Erstellen Sie utils/savePassword.js const fs = erfordern('fs') const Pfad = require('Pfad') const os = erfordern('os') const Kreide = erforderlich('Kreide') const savePassword = (Passwort) => { fs.open(Pfad.join(__dirname, '../', 'passwords.txt'), 'a', '666', (e, id) => { fs.write(id, password + os.EOL, null, 'utf-8', ()=>{ fs.schließen(id, ()=>{ console.log(chalk.green('Passwort in passwords.txt gespeichert')) }) }) }) } module.exports = Passwort speichern Führen Sie den Befehl im Terminal aus: Sie können sehen, dass die Datei passwords.txt im Projekt generiert wird und das Passwort erfolgreich gespeichert wurde 5. Konfigurieren Sie lokale npm-Module als globale Passgen// paket.json "preferGlobal": wahr, "bin":"./index.js", Terminal-Ausführungsbefehl: Befehl npm link: Verknüpfen Sie das npm-Modul mit dem entsprechenden laufenden Projekt, um das Debuggen und Testen lokaler Module zu erleichtern. //index.js #!/usr/bin/env node //Füge die erste Zeile hinzu Terminal-Ausführungsbefehl: Zusammenfassung: Es ist geschafft ✌️✌️✌️✌️✌️✌️✌️✌️✌️✌️✌️✌️✌️✌️✌️✌️✌️ Referenzlink: nodejs.cn/api/process… ZusammenfassenDies ist das Ende dieses Artikels über die Verwendung von Node.js zum Erstellen eines Passwortgenerators. Weitere Informationen zum Node.js-Passwortgenerator finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! |
<<: Erläuterung des Prinzips des MySQL-Replikationsmechanismus
>>: So installieren Sie Redis5.0.3 im Docker
Bei der Onlinesuche nach Methoden zur Installatio...
Dieser Artikel beschreibt die MySQL-Datentypen un...
Inhaltsverzeichnis Grundlegende allgemeine MySQL-...
Hier ist der MySQL-Treiber mysql.data.dll Beachte...
Ich glaube, dass viele Programmierer mit MySQL ve...
Inhaltsverzeichnis Vorwort Ressourcen zum Thema V...
Inhaltsverzeichnis 1. Einleitung II. Überwachungs...
Inhaltsverzeichnis 1. Ziehen Sie das Bild 1.1 Zie...
Inhaltsverzeichnis Hintergrund 1. Die Abfragebedi...
Hier ist eine Fallstudie zu Ihrer Information, wi...
3. MySQL-Datenverwaltung Die erste Methode: nicht...
Inhaltsverzeichnis 1. Node erstellt HTTP-Server 2...
Inhaltsverzeichnis Das Grundprinzip von MySQL Mas...
Einführung Der Dockerfile-Build-Ausführungsvorgan...
Hintergrund Viele Website-Designs bestehen im All...