Antworten:
Sieht das für Sie wünschenswert aus?
// Replace macros in each .js file
cd('lib');
ls('*.js').forEach(function(file) {
sed('-i', 'BUILD_VERSION', 'v0.1.2', file);
sed('-i', /.*REMOVE_THIS_LINE.*\n/, '', file);
sed('-i', /.*REPLACE_LINE_WITH_MACRO.*\n/, cat('macro.js'), file);
});
cd('..');
Wenn ja, könnte ShellJS interessant sein, ist es
Eine portable (Windows eingeschlossen) Implementierung von Unix-Shell-Befehlen auf der Node.js-API.
Ich bin mir jedoch nicht sicher, ob dies als vollwertige Anmeldeshell verwendet werden kann. (Vielleicht mit etwas Verpackung?)
Sie könnten argumentieren, dass es nicht wirklich eine Shell ist, aber kennen Sie TermKit ? Es besteht aus Node.js + Webkit. Sie können JS verwenden, um es zu erweitern (ich vermute). Die Shell-Sprache ist immer noch Bash (-ish).
cmd arguments
Syntax folgt . Zum Beispiel psh
solchen Syntax der Sprache Perl aus meinem Verständnis fügt hinzu , so dass es eher wie eine typische Schale erscheint gnp.github.io/psh Es könnte ein Gegenbeispiel sein , aber ich habe es noch nicht finden.
sed({i:1}, 'BUILD_VERSION', 'v0.1.2', file)
stattdessen Bash-ish verwenden . Wäre besser, asynchrone Funktionen mit wait zu verwenden, so wäre parallel schneller.
Mozilla INC bietet eine javascript
Shell an : siehe Introduction_to_the_JavaScript_shell
Beispiel einer Javascript- Shell in einer System- Shell :
$ js
js> str = "welcome on *nix side"
"welcome on *nix side"
js> str.indexOf("nix");
12
js>
Es wurden keine Probleme festgestellt, da ich es zu Testzwecken verwende.
js
Paket verfügbar .
Wenn Sie auf Ubuntu oder einem anderen Debian-basierten System arbeiten, können Sie Rhino (von Mozilla.org) installieren.
sudo apt-get install rhino
Es liefert js über Alternativen:
=== /usr/bin/js is a symlink... following it
lrwxrwxrwx 1 root root 20 Nov 21 08:54 /usr/bin/js -> /etc/alternatives/js
=== /etc/alternatives/js is a symlink... following it
lrwxrwxrwx 1 root root 14 Nov 21 08:54 /etc/alternatives/js -> /usr/bin/rhino
=== /usr/bin/rhino is owned by package: rhino ===
Wenn Sie also entweder rhino oder js aufrufen , erhalten Sie eine JavaScript-Shell.
Bearbeiten (30.06.2014):
rhino ist gut, um schnell Javascript-Code in einer Datei zu testen, aber es ist keine interaktive Shell, so dass es den GNU-Readline-Stil für die Bearbeitung nicht unterstützt. Für interaktive Arbeiten bevorzugen Sie möglicherweisenodejs
: auf Ubuntu / debiansudo apt-get install nodejs
. Dies sollte eine interaktiverejs
Shellbieten(mit dem Befehl aufrufenjs
), in der Sie Zeilen bearbeiten und den Verlauf mit den Auf- / Ab-Pfeiltastenaufrufenkönnen. Eine längere Liste der Optionen finden Sie unter https://developer.mozilla.org/en-US/docs/Web/JavaScript/Shells
Wenn Sie in Chrome und Firefox F12 drücken, werden Entwicklertools aufgerufen. Dort finden Sie eine Registerkarte namens console, auf der Sie JavaScript-Skripts eingeben und testen können. Es hat Code-Vervollständigung und andere Funktionen.
bash
oder zsh
(etc.)