Als «bash» getaggte Fragen

Fragen speziell zu GNUs Bourne Again SHell im Gegensatz zu anderen Bourne / POSIX-Shells. Verwenden Sie bei Fragen zu Unix-Shells im Allgemeinen stattdessen das Tag / shell.



2
Grundlegendes zu "echo $ ((0x63))"
Ich suchte nach einer Möglichkeit, Hexadezimalzahlen über die Befehlszeile zu konvertieren, und fand heraus, dass es eine sehr einfache Methode gibt echo $((0x63)). Es funktioniert großartig, aber ich bin ein wenig verwirrt darüber, was hier passiert. Ich weiß, $(...)ist normalerweise eine Unterschale, in der der Inhalt vor dem äußeren Befehl …
18 bash 

2
Warum funktioniert dieses Skript im Terminal, aber nicht aus einer Datei?
Ich habe dieses Shell-Skript in einer Datei gespeichert: Es führt einige grundlegende String-Ersetzungen durch. #!/bin/sh html_file=$1 echo "html_file = $html_file" substr=.pdf pdf_file="${html_file/.html/.pdf}" echo "pdf_file = $pdf_file" Wenn ich es in die Kommandozeile einfüge, funktioniert es einwandfrei: $ html_file="/home/max/for_pauld/test_no_base64.html" echo "html_file = $html_file" substr=.pdf pdf_file="${html_file/.html/.pdf}" echo "pdf_file = $pdf_file" gibt html_file …
18 bash  string 

3
Warum schlagen Optionen in einer Variablen in Anführungszeichen fehl, funktionieren aber, wenn sie nicht in Anführungszeichen stehen?
Ich habe darüber gelesen, dass ich Variablen in bash zitieren sollte, zB "$ foo" anstelle von $ foo. Beim Schreiben eines Skripts stieß ich jedoch auf einen Fall, in dem es ohne Anführungszeichen, jedoch nicht mit diesen funktioniert: wget_options='--mirror --no-host-directories' local_root="$1" # ./testdir recieved from command line remote_root="$2" # ftp://XXX …

3
PS1 = '$ (pwd)' Warum funktioniert das und warum unterscheidet sich das von PS1 = $ (pwd)
Warum wechselt die Eingabeaufforderung bei Eingabe dieses Befehls in mein Verzeichnis? PS1='$(pwd)' Ich verwende einfache Anführungszeichen, was keine Interpolation bedeutet, auch bekannt als echo '$(pwd)'- →$(pwd) Sagen Sie außerdem, dass wir geklärt haben, warum dies funktioniert. Warum funktioniert es anders als PS1=$(pwd)? (überhaupt keine Anführungszeichen) Mit "anders" meine ich, dass …
18 bash  zsh  prompt  pwd 


4
Ist es ein vernünftiger Ansatz, die $ IFS-Variable zu "sichern"?
Ich bin immer sehr zurückhaltend, $IFSweil es ein globales Problem ist. Aber oft macht es das Laden von Strings in ein Bash-Array nett und prägnant, und für Bash-Skripte ist es schwierig, Prägnanz zu finden. Also denke ich, es ist vielleicht besser als gar nichts, wenn ich versuche, den Anfangsinhalt einer …

3
Bedeutung von [“$ {1: 0: 1}” = '-']
Diese Frage wurde von Server Fault migriert, da sie unter Unix und Linux Stack Exchange beantwortet werden kann. Vor 4 Jahren migriert . Ich habe das folgende Skript, um einen MySQL-Prozess zu starten: if [ "${1:0:1}" = '-' ]; then set -- mysqld_safe "$@" fi if [ "$1" = 'mysqld_safe' …
18 linux  bash  shell 


4
Verwenden Sie #! / Bin / sh oder #! / Bin / bash, um Ubuntu-OSX-Kompatibilität, Benutzerfreundlichkeit und POSIX zu gewährleisten
Ich weiß, dass ich beide als erste Zeile von Skripten verwenden kann, um die gewünschte Shell aufzurufen. Wäre #!/bin/shzu empfehlen, wenn Kompatibilität mit allen Unix-Systemen unabdingbar ist? In meinem Fall interessieren mich nur Ubuntu (Debian) und OSX. Könnte ich #!/bin/bashdavon ausgehen, dass es auf beiden Systemen funktioniert? Würde dies auch …
18 bash  shell  ubuntu  osx  posix 

3
Wie kann ich alle Shell-Variablen auflisten?
Lesen Sie zu dieser Frage: Wie kann ich in zsh alle Umgebungsvariablen auflisten? Ich habe mich gefragt, wie ich alle Shell-Variablen auflisten kann. Gilt die Unterscheidung zwischen Shell- Variablen und Umgebungsvariablen auch für andere Shells als zsh? Ich interessiere mich hauptsächlich für Bash und Zsh, aber es wäre toll zu …

2
Warum ist eine Variable in einer Subshell sichtbar?
Das Learning Bash Book erwähnt, dass eine Subshell nur Umgebungsvariablen und Dateideskriptoren usw. erbt und keine Variablen, die nicht exportiert werden: $ var=15 $ (echo $var) 15 $ ./file # this file include the same command echo $var $ Wie ich weiß, erstellt die Shell zwei Subshells für ()und für …
18 bash  shell  subshell 

4
kürzeste Möglichkeit, Zeichen in einer Variablen zu ersetzen
Es gibt viele Möglichkeiten, Zeichen in einer Variablen zu ersetzen. Der kürzeste Weg, den ich herausgefunden habe, ist trbisher: OUTPUT=a\'b\"c\`d_123and_a_lot_more OUTPUT=$(echo "$OUTPUT"|tr -d "'\`\"") echo $OUTPUT Gibt es einen schnelleren Weg? Und dann ist dies unter Angabe sicher für Angebote wie ', "und `selbst?
18 bash  string  variable 


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.