2015-09-27 3 views
0

У меня есть Java-программа, которая синхронизирует содержимое двух каталогов. Программа принимает две директории в качестве аргументов.Shell script java-программа неправильно записывает файлы

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

Моя программа использует следующий фрагмент кода, чтобы создать файл .sync ...

FileWriter fileDir1 = new FileWriter(dir1 + "\\.sync"); 
fileDir1.write(obj.toJSONString()); 
fileDir1.flush(); 
fileDir1.close(); 

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

dir1\.sync и dir2\.sync

Любая помощь будет большим.

ответ

1

Использовать косую черту / вместо скрытой обратной косой черты \\, она работает как на Windows, так и на Linux.

FileWriter fileDir1 = new FileWriter(dir1 + "/.sync");

+0

Я попробую что теперь ... – M0rty

+0

Спасибо, как я новичок, я забуду. файлы скрыты от просмотра. – M0rty

Смежные вопросы