Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 95
1

UNIX формат под Windows

16.12.2018, 11:06. Показов 940. Ответов 5
Метки нет (Все метки)

Суть: Надо настраивать много роутеров, меняется в конфигурации (файл config1.dat) только пароль(361 строка в конфигурации) и название сети(274 строка), поэтому меняем только эту строку, сохраняем в config.dat, после сохранения вместо unix(т.к роутер на нем), получается windows, так как запуск кода на винде, подскажите, как конвертировать обратно в unix?)

Код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
# -*- coding: utf-8 -*-
print('Лицевой счет?')
lic = input() ##лицевой счет
print('Квартира?')
kv = input() ##номер квартиры(в название сети wi-fi)
f = open('config1.dat','r')
lines = f.readlines()
lines[273] = ('SSID1=Telecom_'+kv+'\n')
lines[360] = ('WPAPSK1='+lic+'\n')
f.close()
save_f = open('config.dat', 'w')
save_f.writelines(lines)
save_f.close()
Добавлено через 2 часа 11 минут
up!
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.12.2018, 11:06
Ответы с готовыми решениями:

PHP под Windows и Unix?
Нужно создать интернет-магазин. Я програмирую на Java, но поскольку самый распространенный хостинг...

Работа в Unix из под Windows
Имеется Windows система. Мне нужно разобраться в unix. Ставить ее не хочу. Посоветуйте где и...

NetBeans под Windows включить по умолчанию oel-style unix
Можно ли NetBeans под Windows включить по умолчанию oel-style unix для новых файлов? В FAQ...

Ищу самую легковесную виртуалку под хостом Windows, гостевая unix, можно без GUI
Задача: найти самую легковесную виртуалку под хостом Windows (гостевая unix). Можно без гуев....

5
175 / 144 / 21
Регистрация: 07.11.2009
Сообщений: 591
16.12.2018, 11:10 2
Цитата Сообщение от PilotDrowa Посмотреть сообщение
вместо unix, получается windows

Вы имеете ввиду кодировку 1251 вместо utf?

Если да, то попробуйте дописать так:

Python
1
save_f = open('config.dat', 'w', encoding="utf-8")
0
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 95
16.12.2018, 11:48  [ТС] 3
Цитата Сообщение от necroslider Посмотреть сообщение
Вы имеете ввиду кодировку 1251 вместо utf?
Если да, то попробуйте дописать так:

save_f = open('config.dat', 'w', encoding="utf-8")
Не совсем то, при сохранении меняется это значение c unix на windows
0
Миниатюры
UNIX формат под Windows   UNIX формат под Windows  
175 / 144 / 21
Регистрация: 07.11.2009
Сообщений: 591
16.12.2018, 12:04 4
Вот есть готовая функция:
Python
1
2
3
4
5
6
7
8
9
10
11
12
def convert_line_endings(temp, mode):
    # modes:  0 - Unix, 1 - Mac, 2 - DOS
    if mode == 0:
        temp = temp.replace('\r\n', '\n')
        temp = temp.replace('\r', '\n')
    elif mode == 1:
        temp = temp.replace('\r\n', '\r')
        temp = temp.replace('\n', '\r')
    elif mode == 2:
        import re
        temp = re.sub("\r(?!\n)|(?<!\r)\n", "\r\n", temp)
    return temp
0
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 95
16.12.2018, 12:20  [ТС] 5
Цитата Сообщение от necroslider Посмотреть сообщение
Вот есть готовая функция:
Python
1
2
3
4
5
6
7
8
9
10
11
12
def convert_line_endings(temp, mode):
    # modes:  0 - Unix, 1 - Mac, 2 - DOS
    if mode == 0:
        temp = temp.replace('\r\n', '\n')
        temp = temp.replace('\r', '\n')
    elif mode == 1:
        temp = temp.replace('\r\n', '\r')
        temp = temp.replace('\n', '\r')
    elif mode == 2:
        import re
        temp = re.sub("\r(?!\n)|(?<!\r)\n", "\r\n", temp)
    return temp
Как я понимаю, это перед записью в файл использовать? Или перед чтением?
0
175 / 144 / 21
Регистрация: 07.11.2009
Сообщений: 591
16.12.2018, 12:23 6
Лучший ответ Сообщение было отмечено PilotDrowa как решение

Решение

Цитата Сообщение от PilotDrowa Посмотреть сообщение
перед записью
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def convert_line_endings(temp, mode):
    # modes:  0 - Unix, 1 - Mac, 2 - DOS
    if mode == 0:
        temp = temp.replace('\r\n', '\n')
        temp = temp.replace('\r', '\n')
    elif mode == 1:
        temp = temp.replace('\r\n', '\r')
        temp = temp.replace('\n', '\r')
    elif mode == 2:
        import re
        temp = re.sub("\r(?!\n)|(?<!\r)\n", "\r\n", temp)
    return temp
 
 
if __name__ == '__main__':
    save_f = open('d:\config.txt', 'w', encoding='utf-8', newline='\n')
    save_f.writelines(convert_line_endings("tro\r\nlo\r\nlo\r\n", 0))
    save_f.close()
Вот так все четко работает, и файл записывается в Unix формате.
1
Миниатюры
UNIX формат под Windows  
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.12.2018, 12:23

Помощь в написании контрольных, курсовых и дипломных работ здесь.

GCC:Компиляция в формат elf под Windows
Можно ли при помощи gcc создать в Windows исполняемый файл в формате elf? Если можно, то как?

date в unix формат
Есть таблица с 10 полями. из них 3 поля это поля тип date. Необходимо эти поля перевести в unix...

Перевод даты в unix формат
Привет всем, возник такой вопрос как в c# перевести время в юникс формат. Получаю текущую дату:...

Обычная дата в Unix формат
Подскажите пожалуйста как перевести обычную дату, например 05.03.1985, в формат unix date.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.