Ich möchte alle Zeilen in mehreren Dateien finden, die einem von zwei Mustern entsprechen. Ich habe versucht, die Muster, nach denen ich suche, durch Tippen zu finden grep (foo|bar) *.txt Aber die Shell interpretiert das |als Pipe und beschwert sich, wenn bares sich nicht um eine ausführbare Datei handelt. Wie …
Wie entferne ich eine Datei, deren Dateiname mit einem Bindestrich (Bindestrich oder Minus) beginnt -? Ich bin in einen Remote-OSX-Server eingebunden und habe diese Datei in meinem Verzeichnis: tohru:~ $ ls -l total 8 -rw-r--r-- 1 me staff 1352 Aug 18 14:33 --help ... Wie in aller Welt kann ich …
Oder eine Einführung in die robuste Handhabung von Dateinamen und andere Zeichenfolgen, die in Shell-Skripten übergeben werden. Ich habe ein Shell-Skript geschrieben, das die meiste Zeit gut funktioniert. Aber es drosselt bei einigen Eingaben (z. B. bei einigen Dateinamen). Ich habe ein Problem wie das folgende festgestellt: Ich habe einen …
Nimm das folgende Skript: #!/bin/sh sed 's/(127\.0\.1\.1)\s/\1/' [some file] Wenn ich versuche, dies sh( dashhier) auszuführen , schlägt dies aufgrund der Klammern fehl, die maskiert werden müssen. Aber ich muss den Backslashes selbst nicht entkommen (zwischen den Oktetten oder im \soder \1). Was ist die Regel hier? Was ist, wenn …
Wenn Sie unix.stackexchange.com schon länger folgen, sollten Sie jetzt hoffentlich wissen, dass das Nichtanführen einer Variablen im Listenkontext (wie in echo $var) in Bourne / POSIX-Shells (zsh ist die Ausnahme) eine ganz besondere Bedeutung hat und sollte nicht gemacht werden, es sei denn, Sie haben einen sehr guten Grund dazu. …
Mir ist gerade aufgefallen, dass auf einem meiner Computer (auf dem Debian Sid ausgeführt wird), wenn ich lseinen Dateinamen mit Leerzeichen eingebe, einfache Anführungszeichen verwendet werden. Ich habe meine Aliase sofort überprüft und festgestellt, dass sie intakt sind. wyatt@debian630:~/testdir$ ls 'test 1.txt' test1.txt wyatt@debian630:~/testdir$ alias alias ls='ls --color=auto' alias wget='wget …
Ich bin auf folgenden Befehl gestoßen: sudo chown `id -u` /somedir und ich frage mich: was bedeutet das `symbol? Mir ist zum Beispiel aufgefallen, dass der obige Befehl zwar gut funktioniert, der folgende Befehl jedoch nicht: sudo chown 'id -u' /somedir
ich kann schreiben VAR=$VAR1 VAR=${VAR1} VAR="$VAR1" VAR="${VAR1}" Das Endergebnis scheint mir alle ungefähr gleich zu sein. Warum soll ich den einen oder anderen schreiben? Sind einige davon nicht portabel / POSIX?
In meiner Bash-Umgebung verwende ich Variablen, die Leerzeichen enthalten, und diese Variablen bei der Befehlssubstitution. Leider kann ich die Antwort auf SE nicht finden. Wie zitiere ich meine Variablen richtig? Und wie soll ich es machen, wenn diese verschachtelt sind? DIRNAME=$(dirname "$FILE") oder zitiere ich außerhalb der Vertretung? DIRNAME="$(dirname $FILE)" …
Der alte Rat bestand früher darin, jeden Ausdruck mit einem doppelten Anführungszeichen zu versehen $VARIABLE, zumindest wenn man wollte, dass er von der Shell als ein einzelnes Element interpretiert wird, da sonst Leerzeichen im Inhalt von $VARIABLEdie Shell abwerfen würden. Ich verstehe jedoch, dass in neueren Versionen von Shells nicht …
Ich möchte eine Protokolldatei für ein Cron-Skript erstellen, dessen Protokolldateiname die aktuelle Stunde enthält. Dies ist der Befehl, den ich versucht habe: 0 * * * * echo hello >> ~/cron-logs/hourly/test`date "+%d"`.log Leider bekomme ich diese Meldung, wenn das läuft: /bin/sh: -c: line 0: unexpected EOF while looking for matching …
Ich versuche, mit dem Befehl curl auf eine http-URL mit einem Ausrufezeichen ( !) im Pfad zuzugreifen . z.B: curl -v "http://example.org/!287s87asdjh2/somepath/someresource" Die Konsole antwortet mit bash: ... event not found. Was geht hier vor sich? und was wäre die richtige Syntax, um dem Ausrufezeichen zu entgehen?
Ich bin verwirrt mit einfachen oder doppelten Klammern. Schau dir diesen Code an: dir="/home/mazimi/VirtualBox VMs" if [[ -d ${dir} ]]; then echo "yep" fi Es funktioniert perfekt, obwohl die Zeichenfolge ein Leerzeichen enthält. Aber wenn ich es in einzelne Klammer ändere: dir="/home/mazimi/VirtualBox VMs" if [ -d ${dir} ]; then echo …
Ich habe eine Datei mit folgendem Inhalt: <username><![CDATA[name]]></username> <password><![CDATA[password]]></password> <dbname><![CDATA[name]]></dbname> und ich muss ein Skript erstellen, das "name" in der ersten Zeile in "something", "password" in der zweiten Zeile in "somethingelse" und "name" in der dritten Zeile in "somethingdifferent" ändert. Ich kann mich nicht darauf verlassen, dass diese in der …
Ich habe das gerade in einem Init-Skript gesehen: echo $"Stopping Apache" Wofür ist das Dollarzeichen? Meine bisherigen Forschungen: Ich fand das im Bash-Handbuch: extquote Wenn gesetzt, $'string'und $"string"unter Angabe innerhalb ausgeführt ${parameter}in Anführungszeichen Erweiterungen. Diese Option ist standardmäßig aktiviert. ... aber ich finde keinen Unterschied zwischen Strings mit und ohne …
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.