skrypt nie działa

Potrzebujesz pomocy z C, C++, perl, python, itp.
pawelk29
Beginner
Posty: 228
Rejestracja: 29 lutego 2016, 12:51

skrypt nie działa

Post autor: pawelk29 » 23 kwietnia 2020, 10:03

skrypt ma wypisywać wiadomości nie odebrane, ale niestety nie działa

https://pastebin.com/nr39ZfQd

Kod: Zaznacz cały

#!/bin/bash
 
username=""
password=""
 
SHOW_COUNTS=5
 
echo
curl -u $username:$password --silent \
"https://mail.google.com/mail/u/0/#inbox" | \
tr -d '\n' | sed 's:</entry>:\n:g' |\
sed -n 's/.*<title>\(.*\)<\/title.*<author><name>\([^<]*\)<\/name><email>\([^<]*\).*/Author: \2 [\3] \nTemat: \1\n/' | \
head -n $(($SHOW_COUNT * 3))
wynik działania skryptu to

Kod: Zaznacz cały

./gmail.sh: linia 13: * 3: błąd składni: spodziewany argument (błędny znacznik to "* 3")

Awatar użytkownika
dedito
Moderator
Posty: 3171
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: skrypt nie działa

Post autor: dedito » 23 kwietnia 2020, 11:10

Porównaj te dwie linijki.
SHOW_COUNTS=5
head -n $(($SHOW_COUNT * 3))

pawelk29
Beginner
Posty: 228
Rejestracja: 29 lutego 2016, 12:51

Re: skrypt nie działa

Post autor: pawelk29 » 23 kwietnia 2020, 11:32

ok poprawiłem ale teraz się nic nie wyświetla

Awatar użytkownika
dedito
Moderator
Posty: 3171
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: skrypt nie działa

Post autor: dedito » 23 kwietnia 2020, 13:10

Na wejście potoku w tym skrypcie, czyli:
curl -u $username:$password --silent \
"https://mail.google.com/mail/u/0/#inbox"
trafia jakiś zestaw który potem obrabiasz w tr, sed i ostatecznie wyświetlasz przez head.

pawelk29
Beginner
Posty: 228
Rejestracja: 29 lutego 2016, 12:51

Re: skrypt nie działa

Post autor: pawelk29 » 23 kwietnia 2020, 13:25

Kod: Zaznacz cały

pawel@pk28:~$ curl -u $username:$password --silent "https://mail.google.com/mail/u/0/#inbox" --head
HTTP/2 302 
content-type: text/html; charset=UTF-8
cache-control: no-cache, no-store, max-age=0, must-revalidate
pragma: no-cache
expires: Mon, 01 Jan 1990 00:00:00 GMT
date: Thu, 23 Apr 2020 11:23:28 GMT
location: https://accounts.google.com/ServiceLogin?service=mail&passive=true&rm=false&continue=https://mail.google.com/mail/&ss=1&scc=1&ltmpl=default&ltmplcache=2&emr=1&osid=1#
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
content-security-policy: frame-ancestors 'self'
x-xss-protection: 1; mode=block
server: GSE
alt-svc: clear
accept-ranges: none
vary: Accept-Encoding
[\code]

Awatar użytkownika
dedito
Moderator
Posty: 3171
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: skrypt nie działa

Post autor: dedito » 23 kwietnia 2020, 13:39

Nie wiem czy w ogóle rozumiesz ten skrypt, wygląda, że nie.
Zakładam, że zmienne do logowania są gdzieś tam zdefiniowane.
Polecam na początek lekturę:
https://developers.google.com/gdata/articles/using_cURL

Czy ten skrypt ma jakieś zastosowanie do conky czy innych celów?

pawelk29
Beginner
Posty: 228
Rejestracja: 29 lutego 2016, 12:51

Re: skrypt nie działa

Post autor: pawelk29 » 23 kwietnia 2020, 14:12

zmienne do logowania są zdefiniowane

Awatar użytkownika
dedito
Moderator
Posty: 3171
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: skrypt nie działa

Post autor: dedito » 23 kwietnia 2020, 14:19

Czy ten skrypt ma jakieś zastosowanie do conky czy innych celów?

pawelk29
Beginner
Posty: 228
Rejestracja: 29 lutego 2016, 12:51

Re: skrypt nie działa

Post autor: pawelk29 » 23 kwietnia 2020, 14:25

do celów edukacyjnych

Awatar użytkownika
dedito
Moderator
Posty: 3171
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: skrypt nie działa

Post autor: dedito » 23 kwietnia 2020, 14:32


ODPOWIEDZ