Ich versuche, einige Datei (von meinem Linux-Rechner), außer wenige zu entfernen:laufen bash Befehl von python3
touch INCAR KPOINTS foo bar
$ls
bar foo INCAR KPOINTS
$python3 mini.py
Job Done
$ls
bar foo INCAR KPOINTS
Die mini.py
ist:
#!/usr/bin/python3
import subprocess
subprocess.run(['rm', '-f', '!(INCAR|KPOINTS|PO*|*.sh)'])
print("Job Done")
Wie in der Ausgabe zu sehen von mini.py
, es gibt keinen Fehler, aber weder es macht seine Arbeit.
Was mache ich hier falsch?
'rm' ist keine ausführbare Datei, es ist nur ein interner Befehl von bash. Versuchen Sie 'run [' bash ',' -c ',' rm ... "]' – gdlmx
das funktioniert auch nicht – BaRud
'rm' ist eine ausführbare Datei in jedem vernünftigen System. Es ist Teil des GNU Coreutils-Pakets und Sie finden es in '/ bin /' oder '/ usr/bin', abhängig von Ihrer Distribution. – Munir