Als «shell» getaggte Fragen

Die Shell ist die Befehlszeilenschnittstelle von Unix. Sie können Befehle interaktiv in eine Shell eingeben oder Skripts schreiben, um Aufgaben zu automatisieren. Verwenden Sie dieses Tag für Fragen zu / bin / sh und den meisten kompatiblen Shells (ash, bash, ksh, zsh,…). Überprüfen Sie Shell-Skripte mit Fehlern auf http://shellcheck.net, bevor Sie sie hier veröffentlichen.

4
Teilung der Zeichenfolge am Doppelpunkt in / bin / sh
Mein dashSkript verwendet einen Parameter in Form von hostname:port: myhost:1234 Während der Port optional ist, dh: myhost Ich muss den Host und den Port in separate Variablen lesen. Im ersten Fall kann ich tun: HOST=${1%%:*} PORT=${1##*:} Dies funktioniert jedoch nicht im zweiten Fall, wenn der Port weggelassen wurde. echo ${1##*:}Gibt …
9 shell  string  dash 

1
STDOUTs vor STDERR anzeigen?
Ich bin neu im Bash und kann für mein ganzes Leben nicht herausfinden, wie man einen bestimmten Befehl ./fffausführt, reguläre Standard-Stdouts vor stderr annimmt und druckt (ich bin verwirrt über die Bedeutung selbst). zum Beispiel $ printf "I am a\ndrill\n" > fff; $ cat fff nofile fff nofile fff I …

3
Schutz des Shell-Befehls mit String-Variable
Innerhalb einer Programmiersprache führe ich einen einfachen Shell-Befehl aus cd var; echo > create_a_file_here Dabei ist var eine Variable, die eine Zeichenfolge (hoffentlich) eines Verzeichnisses an der Stelle enthält, an der ich die Datei "create_a_file_here" erstellen möchte. Wenn jemand diese Codezeile sieht, kann er ausgenutzt werden, indem beispielsweise Folgendes zugewiesen …

10
Bash: Extrahieren Sie einen der vier Abschnitte einer IPv4-Adresse
Wir können die Syntax verwenden ${var##pattern}und ${var%%pattern}den letzten und ersten Abschnitt einer IPv4-Adresse extrahieren: IP=109.96.77.15 echo IP: $IP echo 'Extract the first section using ${var%%pattern}: ' ${IP%%.*} echo 'Extract the last section using ${var##pattern}: ' ${IP##*.} Wie können wir den zweiten oder dritten Abschnitt einer IPv4-Adresse mithilfe der Parametererweiterung extrahieren? …

4
ps Ausgabe mit ISO-Datumsformat?
Ich möchte diese Ausgabe nach lstart(Beginn des Prozesses) sortieren : ps -eo lstart,pid,cmd Gibt es eine Möglichkeit, lstart im ISO-Format wie JJJJ-MM-TT HH: MM: SS auszugeben? Aber das Sortieren allein löst es nicht. Ich hätte wirklich gerne ein ISO-Datumsformat.
9 shell  date  ps 

1
Etymologie von $ PWD
Was ist die Etymologie von $PWD? Ist es ein Akronym? Ich weiß, dass es einen Befehl gibt, der pwddas Arbeitsverzeichnis druckt, aber meiner Meinung nach wäre es sinnvoller gewesen, die Variable $CWDfür das aktuelle Arbeitsverzeichnis zu benennen , da Shell-Variablen Daten enthalten, anstatt sie zu drucken.
9 shell  history  pwd 


1
Wagenrücklauf mit Echo-Befehl
Ich habe den Echo-Befehl mit der Option \r(Wagenrücklauf) wie unten geübt . echo -e "This is \r my college" Ausgabe: my college aber wenn ich noch ein Wort \rwie unten hinzufüge echo -e "This is the \r my college" Dann gibt es mir Ausgabe wie: my college the Ein anderes …
9 shell  echo  newlines 


3
Was ist diese Formularvariable = $ (…)
Was bedeutet folgendes: basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") Ich interessiere mich besonders für diesen Teil: varible=$(...) Ich weiß, dass Klammern verwendet werden, um einen Unterprozess auszuführen, aber was ist, wenn sie zusammen mit verwendet werden $?
9 shell 




1
Was machen `\ time`,` t \ ime` und `\ cd` eigentlich? (Spaß mit Backslashes in Muscheln)
Während der Diskussion über die Unterschiede zwischen /usr/bin/timeund der eingebauten Shell (bash und zsh) timeerwähnte jemand, dass man sie \timeals Abkürzung verwenden kann, um sie zu erhalten /usr/bin/time. Zuerst schien es eine nette unschuldige Abkürzung zu sein, aber dann kamen einige Fragen auf: Warum funktioniert t\imeauch? Warum wird \cddas Verzeichnis …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.