Sida 1 av 1

bash kommandon i python?

Postat: 04 nov 2008, 20:39
av Luxwarp
Tjenare,har början pilla endel med python nu, och undrar om det är möjligt att lägga in bash kommandon i en python kod

tex

Kod: Markera allt

#!/usr/bin/python

ipnr = input("Skriv ipnr du vill pinga: ")

ping ipnr 
Typ nått sånt skulle det bli.

Så går det använda bash kommandon i python?:)

Re: bash kommandon i python?

Postat: 04 nov 2008, 20:54
av Konservburk

Kod: Markera allt

#!/usr/bin/python
import os
ipnr = raw_input("Skriv ipnr du vill pinga: ")
os.system("ping " + ipnr)

Re: bash kommandon i python?

Postat: 04 nov 2008, 22:17
av Luxwarp
ooh trevligt:)... tackar:)

Re: bash kommandon i python?

Postat: 05 nov 2008, 00:23
av Smygis
Vill du ha outputen i python kan du använda popen isf system:

Kod: Markera allt

>>> import os
>>> ip = raw_input("Skriv ipnr du vill pinga: ")
Skriv ipnr du vill pinga: 192.168.0.1
>>> ping = os.popen("ping %s" % ip)
>>> ping.readlines()
['\n', '--- 192.168.0.1 ping statistics ---\n', '17 packets transmitted, 17 received, 0% packet loss, time 16078ms\n', 'rtt min/avg/max/mdev = 1.539/2.882/4.725/1.022 ms\n']
>>> 

Re: bash kommandon i python?

Postat: 05 nov 2008, 02:49
av DeepThought
Tänk dock på att man kan exempelvis mata in "| gedit" där du vill att man skall skriva in IP-nummer (och på så vis starta gedit), så om du tänkte använda det exemplet du tar upp kan det vara en idé att kontrollera om ipnr faktiskt är ett IP-nummer. Annars kan det bli ett väldigt otrevligt säkerhetshål.

Du bör också se om det finns färdiga pyton-moduler eller -bibliotek att läsa in som gör det du vill uppnå.