Unix: команда «ls» показывает файлы с? после продления

1

Я написал сценарий оболочки (test.sh) с помощью Java. Этот сценарий оболочки фактически выполняет задание на копирование из одного файла в другой. После выполнения сценария оболочки я открыл каталог из консоли и набрал ls. Он показывает выходной файл с ? после расширения.

Например: foo.csv?

File execFile = new File(file);
    FileWriter fwFile;
    try {
        fwFile = new FileWriter(execFile);
        execFile.setExecutable(true);
        BufferedWriter bwFile = new BufferedWriter(fwFile);
        bwFile.write(strOutput.substring(0, 2));
        bwFile.write("\r\n");
        bwFile.write("cd " + strOutput);
        bwFile.write("\r\n");
        bwFile.write("mkdir " + strOutput);
        bwFile.write("\r\n");
        bwFile.write(strUnixPath);
        bwFile.write("\r\n");
        bwFile.write("cd " + strWorkingPath + IPlatinumConstants.FS+"lib"+IPlatinumConstants.FS+"Unx");
        bwFile.write("\r\n");
        bwFile.write("echo Cut Src Start time %time%");
        bwFile.write("\r\n");

                bwFile.write("cp " + " \"" + strSourceFilePath + "\"  \""
                        + strOutput + "copy_A\"");
                bwFile.write("\r\n");

Я предполагаю, что при создании сценария оболочки с использованием java что-то нужно позаботиться

  • 1
    Некоторые текстовые редакторы могут сохранять такие резервные и временные файлы. Какое это имеет отношение к программированию?
  • 1
    Рассмотрите возможность размещения кода, который генерирует и выполняет сценарий оболочки, и пример созданного сценария оболочки.
Показать ещё 3 комментария
Теги:
ls
filewriter

1 ответ

0
Лучший ответ
bwFile.write("\r\n");

замените эти строки на окончания строки UNIX

bwFile.write("\n");

или установите правильный разделитель строк

System.setProperty("line.separator", "\n");
bwFile.newLine()
  • 1
    Большое спасибо за ответ ....

Ещё вопросы

Сообщество Overcoder
Наверх
Меню