Как прочитать файл Windows в среде Linux?

Я пытаюсь выполнить программу Python в Linux, которую я сначала создал в Windows, но отображается следующая ошибка:

metadata = eval(metafile.read())
File "< string >", line 1

@
@
@
@
@
@

Есть идеи?


person Malice    schedule 22.05.2013    source источник


Ответы (1)


dos2unix yourfile.py
python yourfile.py

Если у вас нет dos2unix, вот код Python, который вы можете использовать вместо него. Просто поместите это в dos2unix.py и запустите python dos2unix.py yourfile.py выше:

import sys
filename = sys.argv[1]
text = open(filename, 'rb').read().replace('\r\n', '\n')
open(filename, 'wb').write(text)

Этот код был скопирован из Python dos2unix one liner.

person Markku K.    schedule 22.05.2013
comment
я хочу прочитать из файла .py файл .json, мне просто нужно сделать это с моим файлом python? - person Malice; 22.05.2013
comment
Любой текстовый файл, который вы создаете в Windows, будет иметь окончание строки в стиле Windows (\r\n). Если вы хотите использовать его в Linux, вам нужно преобразовать эти окончания строк в окончания строк в стиле Linux (\n). Это то, что dos2unix делает для вас. Итак, если файл .json получен из Windows, продолжайте конвертировать и его. - person Markku K.; 22.05.2013
comment
мне трудно найти эту команду, как можно скорее я попробую и дам вам знать - person Malice; 22.05.2013
comment
Думаю, я не упомянул об этом явно ... вы запускаете эту команду в Linux. Должно быть /usr/bin/dos2unix. - person Markku K.; 22.05.2013
comment
Боюсь, у меня его нет, у меня сахарная среда, это проблема? я работаю на компьютере XO. - person Malice; 22.05.2013
comment
Хорошо, тогда вам, вероятно, следует опубликовать некоторый код вместе с тем, что вы ожидаете от него. - person Markku K.; 22.05.2013