05. [5p] Accesare URL conținând caractere speciale

Unele URL-uri pot avea caractere interpretate special în shell rezultând într-un comportament ciudat la descărcare.

Pentru a evidenția acest lucru, pe stația host folosiți pentru a descărca resursa de la link-ul http://localhost/login.php?name=Lab10&email=rl@upb.ro:

root@host:~#  wget http://localhost/login.php?name=Lab10&email=rl@upb.ro
[1] 3284
root@host:~# --2013-12-05 09:02:10--  http://localhost/login.php?name=Lab10
Resolving localhost (localhost)... 127.0.0.1
Connecting to localhost (localhost)|127.0.0.1|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 72 [text/html]
Saving to: `login.php?name=Lab10'
 
100%[======================================>] 72          --.-K/s   in 0s      
 
2013-12-05 09:02:10 (13.3 MB/s) - `login.php?name=Lab10' saved [72/72]
 
 
[1]+  Done                    wget http://localhost/login.php?name=Lab10
root@host:~#

După output-ul comenzii de mai, pentru a vă reapărea prompt-ul consolei, apăsați pe Enter ca să vă reapară prompt-ul.

Observați că procesul intră în background (linia cu [1] 3284 înseamnă că a fost pornit un job). Acest lucru se întâmplă întrucât simbolul & (ampersand) nu este escapat și se folosește rolul său special din shell: pornirea unui proces în background. Se observă din output că este separată comanda înainte de &, adică rezultă comanda wget http://localhost/login.php?name=Lab10.

Ștergeți fișierul descărcat prin comanda de mai sus:

root@host:~# ls
PacketTracer5  folder  login.php?name=Lab10
root@host:~# rm login.php\?name\=Lab10
root@host:~# ls
PacketTracer5  folder

Folosiți escaping în shell pentru a folosi în mod corect URL-ul și pentru a descărca resursa disponibilă la acel link.

Fișierul final descărcat trebuie să arate în acest fel (să conțină Lab10 și rl@upb.ro). Folosiți cat log<TAB> pentru rula comanda de mai jos, ca să obțineți autocompletion din partea shell-ului (<TAB> înseamnă apăsarea tastei TAB):

root@host:~# cat login.php\?name\=Lab10\&email\=rl@upb.ro
<html>
<body>
 
Welcome Lab10<br>
Your email address is: rl@upb.ro
</body>
</html>
rl/labs/09/contents/05.txt · Last modified: 2023/11/05 13:08 by vlad_iulius.nastase
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0