Seite 1 von 1

langes Shell comando mit subprocess ausführen Problem (")

Verfasst: Mittwoch 15. Oktober 2014, 15:39
von sbfly
Hallo

ich möchte meinen chache leeren bevor ich eine Funktion in einer Schleife ausführe
Hierzu verwende ich folgende shell Funkton

Code: Alles auswählen

flush_cache=subprocess.Popen(['sudo','sh', '-c','"/bin/echo 3 > /proc/sys/vm/drop_caches"'])
flush_cache.wait()
Leider scheint bei der Ausführung der Shell funktion diese nicht richtig übermittelt zu werden

kann mir hierbei jemand helfen?

Gruß

Sbfly

Re: langes Shell comando mit subprocess ausführen Problem ("

Verfasst: Mittwoch 15. Oktober 2014, 16:15
von BlackJack
@sbfly: Mindestens die " sind da zu viel.

Re: langes Shell comando mit subprocess ausführen Problem ("

Verfasst: Donnerstag 16. Oktober 2014, 14:10
von sbfly
konnte es Lösen es funktionierte mit folgendem Befehl

Code: Alles auswählen

os.system('sudo sh -c "/bin/echo 3 > /proc/sys/vm/drop_caches"')

Re: langes Shell comando mit subprocess ausführen Problem ("

Verfasst: Donnerstag 16. Oktober 2014, 14:14
von BlackJack
@sbfly: Die " weglassen hat nicht geholfen? `os.system()` ist nämlich keine wirkliche Lösung. Das `subprocess`-Modul ist ja gerade da um unter anderem diese Funktion abzulösen.