Page 1 of 1

Bash Skript Problem

Posted: 2010-09-27 15:50
by native
Ich möchte den Output von wget in einer Variablen, das scheint aber nicht zu funkionieren, die Variable bleibt leer. Kann mir jmd sagen, wo der Fehler ist:

Code: Select all

WGET="$(which wget)"

status=$($WGET -S https://www.example.com -O /dev/null)

echo $status

Re: Bash Skript Problem

Posted: 2010-09-27 15:59
by Roger Wilco
Die Ausgabe von `wget` erfolgt auf File-Deskriptor 2 (stderr). Du musst diesen auf File-Deskriptor 1 (stdout) umleiten, dann funktioniert das auch.

Code: Select all

# STATUS=$(wget -qS http://example.com/ --delete-after 2>&1) ; echo $STATUS
HTTP/1.1 200 OK Server: Apache Last-Modified: Fri, 30 Jul 2010 15:30:18 GMT ETag: "573c1-254-48c9c87349680" Accept-Ranges: bytes Content-Type: text/html; charset=UTF-8 Date: Sun, 12 Sep 2010 13:53:56 GMT Content-Length: 596 Connection: Keep-Alive Age: 1296777

Re: Bash Skript Problem

Posted: 2010-09-27 16:31
by Joe User
Alternativ:

Code: Select all

lynx -head -dump "http://www.example.com"

Re: Bash Skript Problem

Posted: 2010-09-27 17:34
by native
Roger Wilco wrote:Die Ausgabe von `wget` erfolgt auf File-Deskriptor 2 (stderr). Du musst diesen auf File-Deskriptor 1 (stdout) umleiten, dann funktioniert das auch.

Code: Select all

# STATUS=$(wget -qS http://example.com/ --delete-after 2>&1) ; echo $STATUS
HTTP/1.1 200 OK Server: Apache Last-Modified: Fri, 30 Jul 2010 15:30:18 GMT ETag: "573c1-254-48c9c87349680" Accept-Ranges: bytes Content-Type: text/html; charset=UTF-8 Date: Sun, 12 Sep 2010 13:53:56 GMT Content-Length: 596 Connection: Keep-Alive Age: 1296777
Gleiches Problem, STATUS ist leer.