Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 16, 2019 13:41:28

Yakov_123
Зарегистрирован: 2019-04-16
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Переименование файла )

Привет. Я в Python новичек)
Нужно, чтоб было произведено переименование файла с именем, которое включает web. Папка home/user.
Таким способом - не сработало:

import os
os.rename(“home/user/*web*.war”, “home/user/ROOT.war”)

Поэтому сочинил такой способ - работает:

def WEB():
import subprocess
WEB = (subprocess.check_output('find /home/user/ -regextype posix-egrep -regex \.*-web\.*', shell=True))
return(WEB.decode('ascii').rstrip())

import os
os.rename(str(WEB()), “home/user/ROOT.war”)

Есть ли какой-то более простой путь? ))))
Спасибо!

Офлайн

#2 Апрель 16, 2019 20:23:58

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Переименование файла )

Yakov_123
Таким способом - не сработало:

import os
os.rename(“home/user/*web*.war”, “home/user/ROOT.war”)
Если я вас правильно понял, вы хотите маски? в консоли развертывание делает bash. Надо делать цикл явно.
 from pathlib import Path
for i in Path(".").glob("*web*"):
   i.rename("null")



Офлайн

#3 Апрель 17, 2019 08:33:50

Yakov_123
Зарегистрирован: 2019-04-16
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Переименование файла )

Спасибо большое!!!!
Удалось решить еще таким способом (цикл был не нужен - необходимо выбрать только один файл)

import glob, os
FILE = glob.glob('/home/user/*web*')
os.rename(“ ”.join(FILE), “/home/user/ROOT.war”)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version