Als «shell» getaggte Fragen

9
bestätigter Ausgang mit Falle

Ich versuche, das Ctrl+CSignal abzufangen und den Benutzer um eine Bestätigung zu bitten. Das Einfangteil funktioniert einwandfrei. Sobald das Signal abgefangen wird, kehrt es nicht zur normalen Ausführung zurück. Stattdessen wird das Skript beendet. So wird die Ausführung fortgesetzt, wenn der...

9
E / A-Umleitung und der Kopfbefehl

Ich habe heute versucht, schnell eine .hgignoreDatei aus der Cygwin-Bash-Shell zu bearbeiten , und eine Zeile hinzugefügt, die ein Fehler war. Ich bin mir nicht sicher, ob dies der beste Weg ist, aber ich dachte schnell darüber head -1 .hgignorenach, die fehlerhafte Zeile zu entfernen (ich hatte...

9
Wie erweitert eine Shell (z. B. Bash) Platzhaltermuster?

Angenommen, ein Verzeichnis enthält 100 Dateien, die mit dem Buchstaben 'a' beginnen. grep <some string> a*Wie wird die Shell damit umgehen, wenn ich eine vom Terminal aus mache ? Wird es den regulären Ausdruck erweitern, eine Liste aller Dateien erhalten, die mit a beginnen, und für jede...

9
Was ist nicht Shell-spezifisch?

Unter einigen Antworten werden Kommentare angezeigt, in denen empfohlen wird, Shell-spezifische Befehle in Antworten zu vermeiden. Woher weiß ich, welche Befehle, Operatoren usw. in allen Shells vorhanden sind? Gibt es eine Liste von Standards? man builtinsgibt eine Liste von Befehlen. Sind dies...

9
/ etc / crontab wofür steht "test -x"?

In meiner /etc/crontabDatei habe ich: # m h dom mon dow user command 17 * * * * root cd / && run-parts --report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / &&...

9
Zwei Pipes zu einem Befehl

Die folgende Syntax verwirrt mich ein wenig. Obwohl es funktioniert, versteht es nicht, warum es funktioniert. Es scheint, als wären dem Befehl diff zwei Pipes zugeordnet. Aber gibt es nicht nur einen STDIN? Beispiele: diff <(echo "foobar") <(echo "barbaz") diff <(cat foo.txt) <(cat...

9
Entfernen Sie die ältesten Dateien

Ich versuche alte Dateien aus dem Verzeichnis zu löschen und nur 3 neueste Dateien zu belassen. cd /home/user1/test while [ `ls -lAR | grep ^- | wc -l` < 3 ] ; do rm `ls -t1 /home/user/test | tail -1` echo " - - - " done Mit der bedingten Aussage stimmt etwas nicht.

9
Finden Sie die gemeinsamen Dateien zwischen mehreren Verzeichnissen?

Ich möchte Verzeichnisse von Drupal-Themen vergleichen. Ein Drupal-Thema ist ein Verzeichnis, das aus mehreren Dateien besteht, und ich versuche herauszufinden, welche wesentlich sind. Zum Beispiel könnten sie alle eine Datei namens template.phpoder haben page.tpl.php. Wie finde ich den Satz aller...

9
Befehlsausgabe nach Zeilenumbruch teilen?

Ich habe einen Befehl, der mehrere Zeilen zurückgibt. Für die weitere Verarbeitung muss ich jede einzelne Zeile dieser Zeilen verarbeiten. Mein aktueller Code funktioniert durch Ändern des IFS ( Internal Field Separator ): ROWS=$(some command returning multiple lines) O=$IFS #save original IFS...

9
Ausgabeumleitung und Leerzeichen

Ich bin darüber paranoid, aber hoffentlich ist es eine einfache Frage: Gibt es einen Unterschied zwischen cat file1 | egrep -oP "[Mm]y string" > /home/user/file.txt und cat file1|egrep -oP "[Mm]y string">/home/user/file.txt Ist es also wichtig, ob Leerzeichen die Pipe- (|) und...

9
Warum übergibt --text = "$ @" nur das erste Wort?

Wenn ich das folgende Skript mit einigen Argumenten wie arg1 arg2 arg3: #!/bin/bash zenity --entry --text="$@" Zenity erstellt einen Eingabedialog mit diesem Text: "arg1", während ich "arg1 arg2 arg3" erwarte. Wenn ich eine Variable wie das folgende Skript verwende, werden alle Argumente für den...