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.

1
Wie verstecke ich Befehle, die in eine Linux-Shell eingegeben wurden?
Gibt es eine Möglichkeit, das auszublenden, was ich in eine Shell schreibe, damit das Terminal meine Tastenanschläge nicht wiederholt, während die Ausgabe des Befehls beibehalten wird? Wenn ich zum Beispiel laufe ip addr show, sollte das einzige, was auf dem Bildschirm angezeigt wird, die Ausgabe dieses Befehls sein - nicht …

4
In einigen Fällen spielt die Anzahl der Leerzeichen in Bash-Skripten (oder anderen Shell-Skripten) eine Rolle
Mir wurde gesagt, dass die Leerzeichen in bashoder in anderen Shell-Skripten wichtig sind, und ich sollte die Existenz von Leerzeichen nur ändern, wenn ich weiß, was ich tue. Mit "Ändern der Existenz" meine ich entweder das Einfügen eines Leerzeichens zwischen zwei Nicht-Leerzeichen oder das Entfernen eines Leerzeichens zwischen zwei Nicht-Leerzeichen, …

5
Indizieren Sie eine Zeichenfolge in Bash
Wie kann ich in sh / bash nach Index auf einen String verweisen? Das heißt, im Grunde es zu teilen. Ich versuche, 5 Zeichen eines Dateinamens zu entfernen. Alle Namen haben die Struktur: name_nr_code. Ich versuche, das 5 alphanumerische Codebit zu entfernen. name_nr_ist immer 10 Zeichen. Gibt es so etwas? …
14 bash  shell  string 


2
Wie sortiere ich mit den Befehlen grep und sort?
Ich möchte eine sortierte Liste aller in der Datei gefundenen TCP-Dienste erstellen /etc/services, die Ausgabe des Befehls grep tcp /etc/servicesin den Befehl sortleiten und dann die Ausgabe dieser Pipe in die Datei umleiten ~/pipelab.txt. Ich erhalte immer wieder die Fehlermeldung, dass meine Ausgabe falsch ist, und ich weiß nicht warum. …
14 shell  pipe 


1
Kann ich einen Benutzer einschränken, spezielle Programme zu verwenden?
Ist es möglich, einen Benutzer hinzuzufügen und ihn auf die Ausführung spezieller Programme zu beschränken? Nachdem sich dieser Benutzer angemeldet hat, kann er beispielsweise nur Firefox öffnen, um das Internet zu nutzen, und dieser Benutzer kann keine anderen Programme ausführen. In einem Terminal kann beispielsweise nicht auf Befehle zugegriffen werden, …


3
Shell: Setzen Sie beim Ersetzen von Befehlen die Zeilenumbrüche ('\ n') fort
Ich möchte in der Lage sein, die genaue Ausgabe einer Befehlsersetzung zu erfassen, einschließlich der nachfolgenden neuen Zeilenzeichen . Mir ist klar, dass sie standardmäßig entfernt werden, so dass möglicherweise einige Manipulationen erforderlich sind, um sie zu behalten, und ich möchte den ursprünglichen Beendigungscode beibehalten . Beispiel: Ein Befehl mit …
14 bash  shell 

3
Wird die Falle von einer Unterschale geerbt?
Ich habe folgendes Skript ausprobiert: #!/bin/bash trap 'echo "touching a file" && touch $FILE' EXIT foo1(){ echo "foo1" } foo(){ echo "foo" export FILE=${FILE:-/tmp/file1} } (foo1) foo Die Ausgabe für das obige Skript war: [root@usr1 my_tests]# ./test.sh foo1 foo touching a file Ich hatte jedoch damit foo1gerechnet, dass die Falle …
14 shell  trap  subshell 

3
Zeichenkette am letzten Begrenzer abschneiden
Ich habe einen Dateinamen wie a.b.c.txt, ich möchte, dass diese Zeichenfolge als geteilt wird string1=a.b.c string2=txt Grundsätzlich möchte ich den Dateinamen und seine Erweiterung aufteilen. Ich habe verwendet, cutaber es spaltet sich als a,b,cund txt. Ich möchte die Zeichenfolge am letzten Begrenzer abschneiden. Kann jemand helfen?
14 shell  cut 

2
Verschieben von Dateien eines bestimmten Musters in ein anderes Verzeichnis
Im Verzeichnis habe /home/inich Dateien wie diese: crust.MC12345.txt crust.etcMC12345.txt crust.MC23456.txt crust.etcMC23456.txt crust.etctcMC23456.txt Ich brauche nur zu bewegen crust.etcMC12345.txtund crust.etcMC23456.txtzu einem anderen Verzeichnis, /home/out.Was das Muster i für das oben beschriebene Szenario in dem Befehl mv verwenden ist?
14 shell  wildcards  mv 



4
Beenden Sie die Exit-Codes, wenn Sie SIGINT und ähnliches einfangen?
Wenn ich trapwie auf http://linuxcommand.org/wss0160.php#trap beschrieben verwende , um Strg-C (oder ähnliches) abzufangen und vor dem Beenden zu bereinigen, ändere ich den zurückgegebenen Exit-Code. Jetzt wird dies in der realen Welt wahrscheinlich keinen Unterschied machen (z. B. weil die Exit-Codes nicht portierbar sind und darüber hinaus nicht immer eindeutig sind, …

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.