Как сделать автоматическое удаление скриптов в конце выполнения?

Можно ли создать скрипт python, который удалит файл .py в конце его выполнения (само удаление) в Windows?

4 Solutions collect form web for “Как сделать автоматическое удаление скриптов в конце выполнения?”

Я не уверен, что удаление файла, пока оно в памяти, будет хорошей идеей. Попробуйте запустить пакетный файл из сценария, который закрывает процесс сценария, а затем удаляет файл сценария.

Может быть собственный метод для саморазрушения скрипта, но я не знаю об этом.

EDIT: Вот простой пример того, как вы могли бы выполнить это, используя описанный мной метод:

В скрипте

# C:\test.py import os os.startfile(r"C:\sampleBatch.bat") 

В партии

 # C:\sampleBatch.bat TASKKILL /IM "process name" #For me, this was "ipy64.exe" because I use IronPython. DEL "C:\test.py" 

Вам даже не нужно убивать процесс для удаления файла, но это безопаснее. Надеюсь это поможет.

Таким образом ваша программа зависит от ОС.

 from os import remove from sys import argv remove(argv[0]) 

Бонусные баллы: при анализе аргументов самый первый аргумент, который вы получаете в sys.argv, равен « path-to-filename / filename.py »

Ответ Неоминда, похоже, делает трюк. Но если удаление файла, когда оно в памяти беспокоит вас, и вы ищете чистое решение python, вы можете использовать подпроцесс для создания нового процесса с явной целью удаления исходного файла сценария. Что-то вроде этого должно работать:

 import sys, subprocess subprocess.Popen("python -c \"import os, time; time.sleep(1); os.remove('{}');\"".format(sys.argv[0])) sys.exit(0) 

Вам, вероятно, не понадобится тайм-аут, но я добавил его только для того, чтобы убедиться, что процесс из исходного сценария был предоставлен достаточно времени для закрытия.

Существует довольно простой метод:

 import os os.remove("insert the file's path") 

Если вы столкнулись с проблемами, поместите «r» перед отметкой начала цитаты.

  • Почему основной поток моего многопоточного приложения не отвечает на Ctrl + C?
  • Отправка команд DDC / CI для мониторинга в Windows с использованием Python?
  • Получить положение и размер окна с помощью python
  • Python Message Box Без огромной зависимости от библиотеки
  • Как бросить окно ошибки в Python в Windows
  • Длинные пути в Python в Windows
  • Создание автономных приложений python
  • python Вызов внешней программы приводит к ошибке % 1 не является допустимым приложением Win32
  • Как читать пароль с помощью эха «*» в консольной программе Python?
  • Изменить шрифт консоли в Windows
  • Приостановка процесса в Windows
  •  
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.