schreiben Befehlszeile in eine Datei ausgegeben werden
Ich Schreibe ein Skript zum Aufräumen mein desktop, verschieben von Dateien basierend auf Datei-Typ. Der erste Schritt, so scheint es, ist zu ls -1 /Users/user/Desktop
(ich bin auf Mac OSX). Also, mit Python, wie würde ich einen Befehl ausführen, dann schreiben die Ausgabe in eine Datei in einem bestimmten Verzeichnis? Da dies nicht dokumentiert, und ich werde der einzige Benutzer, habe ich nichts dagegen (lieber?) wenn es verwendet os.system()
.
Welche Dateien wollen Sie bewegen? Werfen Sie einen Blick auf docs.python.org/library/shutil.html für die Datei-Operationen unter Verwendung von Python.
Shell-Skript ist genug für diese
Wenn Sie shell-Skripts, Lesen Sie mehr über pipes und Umleitungen.
Ich spreche nicht über die Schaffung eines separaten .sh-Datei. Eine Kombination von
Wenn Sie nicht erstellen Sie ein shell-Skript, das Sie nicht benutzen sollte
Shell-Skript ist genug für diese
Wenn Sie shell-Skripts, Lesen Sie mehr über pipes und Umleitungen.
Ich spreche nicht über die Schaffung eines separaten .sh-Datei. Eine Kombination von
for
, if
, file
genug sein würde.Wenn Sie nicht erstellen Sie ein shell-Skript, das Sie nicht benutzen sollte
ls
. In der Tat, auch wenn Sie ein shell-Skript Ihr nutzen sollte find
.InformationsquelleAutor tkbx | 2012-01-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie umleiten der Standardausgabe in eine Datei mit
>
im Befehl.Mit python,
Jedoch, wenn Sie mit python anstatt dann mit
ls
Befehl, den Sie verwenden könnenos.listdir
um eine Liste aller Dateien in dem Verzeichnis.ImportError: No module named-system.
wie versuchen, Sie zu importieren? Was ist deine Python-version?
InformationsquelleAutor taskinoor
Nach dem abschöpfen der python-Dokumentation zum ausführen von shell-Befehl aus und erhalten die Ausgabe, die Sie verwenden können, die Teilprozess Modul mit der
check_output
Methode.Danach können Sie einfach zu schreiben, dass die Ausgabe in eine Datei mit dem standard-Python-IO-Funktionen: Datei-IO in python.
InformationsquelleAutor BergmannF
Um eine Datei zu öffnen, die Sie verwenden können, die
f = open(/Path/To/File)
Befehl. Die syntax istf = open('/Path/To/File', 'type')
wo 'Typ' steht r für Lesen, w für schreiben und eine zum Anhängen. Die Befehle dazu sindf.read()
undf.write('content_to_write')
. Um die Ausgabe eines Kommandozeilen-Befehls, verwenden Sie popen und Teilprozess stattos.system()
. os.system() gibt keinen Wert zurück. Lesen Sie mehr über popen hier.InformationsquelleAutor CoffeeRain