Das Problem, das ich bekomme, ist, wenn ich den Befehl eingebe, su - root Am Anfang meiner Shell-Skriptdatei wird der Benutzer aufgefordert, das Kennwort einzugeben, und der Rest des Shell-Skripts wird NICHT fortgesetzt. Ich muss das Shell-Skript dann manuell über das Terminal suchen und ausführen. Ich möchte, dass das Skript …
Wie kann ich einer Datei mit einer bestimmten Anzahl von Zeilen eine Spalte mit Werten hinzufügen? Ich habe eine Eingabedatei wie diese: Eingabedatei: SPATA17 1 217947738 LYPLAL1 1 219383905 FAM47E 4 77192838 SHROOM3 4 77660162 SHROOM3 4 77660731 SHROOM3 4 77662248 Ausgabedatei: SPATA17 1 217947738 file1 LYPLAL1 1 219383905 file1 …
Angenommen, ich habe eine Zeichenfolge strname: strname="ph7go04325r" Ich möchte die Zeichen zwischen dem ersten "3" und dem letzten "r" Zeichen in extrahieren und strnamedas Ergebnis in einer Zeichenfolge speichern strresult. Im obigen Beispiel strresultwäre das Ergebnis : strresult="25" Das erste "3"Zeichen muss sich nicht unbedingt an der Zeichenfolgeposition 8 in …
Was ist der Unterschied zwischen diesen beiden Beispielen in der POSIX-Shell, wenn eine Variable vor / nach dem Inkrementieren erstellt wird? Sie scheinen die gleichen Konsequenzen zu haben, würden aber unterschiedlich eingesetzt? Wann würden Sie eins dem anderen vorziehen? X=$((X+1)) : $((X=X+1))
Ich versuche, eine Variable zu verwenden, die aus verschiedenen Zeichenfolgen besteht, die mit einem |als caseAnweisungstest getrennt sind. Beispielsweise: string="\"foo\"|\"bar\"" read choice case $choice in $string) echo "You chose $choice";; *) echo "Bad choice!";; esac Ich möchte den ersten Teil der Anweisung eingeben foooder barausführen können case. Aber beide foound …
Ich möchte, dass mein Shell-Skript alle Unterverzeichnisse in einem Hauptverzeichnis aufruft. Machen Sie etwas in Verzeichnissen, senden Sie die Ausgabe an eine Spooldatei und fahren Sie mit dem nächsten Verzeichnis fort. Betrachten Sie Main Dir = / tmp Sub Dir = ABCD (vier Unterverzeichnisse)
Ich habe einen Dienst, der beim Booten ausgeführt wird, und in diesem Dienst wird im Hintergrund ein Bash-Skript aufgerufen, das einige Umgebungsvariablen exportiert. Das Problem, das ich habe, ist, dass diese Umgebungsvariablen nicht an das übergeordnete Element des Hintergrundprozesses gesendet werden. Sobald mein Skript ausgeführt ist, sind sie verschwunden. Darüber …
Gibt es einige integrierte Werkzeuge , die erkennen -xund --xxxxals Schalter, und nicht die Argumente, oder müssen Sie alle Eingangsgrößen Test für Striche durchlaufen, und dann die Argumente danach analysieren?
Ich habe ein Skript, das viele verschiedene Dinge auf vielen verschiedenen Remote-Rechnern erledigen muss. Ich dachte, dass ein Heredoc dafür funktionieren würde, aber ich bin nicht in der Lage, eine Variable zu verwenden, die an anderer Stelle im Skript definiert ist, und eine, die im Heredoc definiert ist. Hier ist …
Ich möchte ein Terminal öffnen, es in 9 Teile (3x3) aufteilen und ein Bash-Skript ausführen. Aber für jeden Terminalteil ein anderes Skript. Kann man das mit Perl, Python oder sogar Bash machen? Wie kann ich zwischen diesen kleinen Terminals wechseln, ohne Tastaturkürzel zu verwenden? Oh, übrigens, ich benutze terminator. Und …
Ich verwende das folgende Skript, um zwei Tage zurück zu verschieben, wenn das Skript an zwei Tagen im Jahr ausgeführt wird. Außerdem überprüfe ich den ersten und zweiten Tag jedes Monats und verschiebe zwei Tage zurück. if [$month="01"] && [$day="01"]; then date="$last_month/$yes_day/$last_year" fulldate="$last_month/$yes_day/$last_year" else if [$month="01"] && [$day="02"]; then date="$last_month/$yes_day/$last_year" …
Die Hauptmethode zum Debuggen von Skripten ist das Hinzufügen -xvon shabang ( #!/bin/bash -x). Ich bin kürzlich auf einen neuen Weg set -euxo pipefailgestoßen, indem ich direkt unter dem Shabang hinzugefügt habe, wie in: #!/bin/bash set -euxo pipefail Was ist der Hauptunterschied zwischen den beiden Möglichkeiten des Debuggens? Gibt es …
Ich bin noch sehr neu im Schreiben von Skripten in Bash und probiere nur ein paar Dinge aus, von denen ich dachte, dass sie grundlegende Dinge sind. Ich möchte DDNS ausführen, das von meinem Server mit Ubuntu 14.04 aktualisiert wird. Ich habe mir bisher Code von dnsimple ausgeliehen: #!/bin/bash LOGIN="email" …
Ich möchte alle Benutzerverzeichnisse auf dem Computer auflisten. Normalerweise mache ich Folgendes: ls -l /home Aber ich verwende es in einem Skript, das auf anderen Computern bereitgestellt wird, und vielleicht auf diesen Computern, die sie nicht als "Zuhause" bezeichnen (z. B. myHome). Also möchte ich es verallgemeinern ls -l ~. …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.