Strona 1 z 1

[+] Polecenie lokalnie działa, przez ssh nie

: 06 lipca 2010, 12:48
autor: novomix
Witam.
Mam takie pytanie, nie chce mi działać polecenie przez ssh:

Kod: Zaznacz cały

ssh patrol@debianek "/bin/cat /proc/meminfo | /usr/bin/awk '/SwapFree:/ {print $2/1024}'"
Otrzymuję taki komunikat:

Kod: Zaznacz cały

patrol@debianek's password:
awk: cmd. line:1: /SwapFree:/ {print /1024}
awk: cmd. line:1:                     ^ unterminated regexp
awk: cmd. line:2: (END OF FILE)
awk: cmd. line:2: syntax error
Jak usunę /1024 to przechodzi ale chcę aby działało całe polecenie.
Natomiast jak się zaloguje bezpośrednio na serwer to polecenie wykonuje się bez problemu.

Dziękuję za pomoc.

: 06 lipca 2010, 15:32
autor: db

Kod: Zaznacz cały

ssh patrol@debianek "/usr/bin/awk '/SwapFree:/ {print \$2/1024}' /proc/meminfo"

: 06 lipca 2010, 16:51
autor: novomix
Już to zrobiłem, wystarczyło zrobić tak:

Kod: Zaznacz cały

ssh patrol@debianek "/bin/cat /proc/meminfo" | /bin/awk '/SwapFree:/ {print $2/1024}'
patrol@debianek's password:
16383.8
Pozdrawiam.

: 06 lipca 2010, 17:29
autor: db
Nope.
http://partmaps.org/era/unix/award.html#cat

Zależy, gdzie ten awk ma się wykonać.

: 16 lipca 2010, 12:52
autor: Bastian
Zaraz. Błąd, który zgłaszasz jest wynikiem złej składni. poprzez /1024 otwierasz drugiego regexa. Zatem raczej:

Kod: Zaznacz cały

ssh patrol@debianek "/usr/bin/awk '/SwapFree:/ {print \$2/1024}' /proc/meminfo"

Jeśli chcesz dzielić, wartość pola 2 przez 1024

: 16 lipca 2010, 18:52
autor: novomix
Dzieki za pomoc