Текстовые файлы, созданные в ruby, создаются как исполняемые файлы - PullRequest
1 голос
/ 26 августа 2010

У меня есть скрипт сборки, в котором я создаю текстовый файл отчета и выводю в него различные типы журналов. Все данные собираются на внешнем жестком диске, который (в соответствии с 'mount') имеет формат файла "fuseblk" (о котором я никогда не слышал).

Кажется, что все здание работает нормально, но мои файлы отчетов сохраняются как исполняемые файлы, которые linux интерпретирует как файлы SOR. Я бы хотел, чтобы они были обычными текстовыми файлами, которые по умолчанию открываются в моем обычном текстовом редакторе.

Я делаю файл и пишу в него, например так:

@report = File.open(File.join(DESTINATION_BUILD_FOLDER,  "#{title.folder_name}_report.txt"),"w")      
...
s = "making modules folder inside resource_library folder";puts s; @report.puts s
...
@report.close

Я делал это много раз и никогда не сталкивался с этой проблемой. Любые идеи кто-нибудь?

ура, макс

ps Я знаю, что могу отредактировать сохраненные файлы, чтобы сделать их неисполняемыми, мой вопрос: «Почему это происходит в первую очередь?». Приветствия:)

1 Ответ

1 голос
/ 26 августа 2010

Не думаю, что с вашей программой что-то не так. Fuseblk просто означает, что он монтируется через FUSE, что позволяет драйверам файловой системы работать как программы пользовательского пространства, а не как модули ядра. Скорее всего, файловая система - NTFS или FAT32.

Проблема здесь в том, что Linux предполагает, что все на диске имеет установленный бит выполнения. Это связано с тем, что ни NTFS, ни FAT32 не имеют возможности хранить биты разрешений Linux (NTFS имеет совершенно другую систему разрешений, FAT32 практически не имеет). Бьюсь об заклад, вы пытаетесь дважды щелкнуть файлы журнала в чем-то вроде проводника файлов gnome, верно?

Ну, зайдите туда с командной строкой и используйте less или ваш любимый редактор командной строки, чтобы просмотреть их. Или щелкните правой кнопкой мыши на них в проводнике или откройте их с помощью меню «Файл» -> «Открыть» в текстовом редакторе. Если вы зададите свой вопрос людям, которые лучше знают Gnome (или KDE?), Вы, вероятно, получите лучший ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...