Помогите пожалуйста написать правило - если нету файла, создать его и записать параметры в формате:
property.name: value
property.name2: value
Задача делится на две:
- определние наличия файла, реализуется вызовом bash для проверки наличия как самый простой способ, например: Скрипт для пингования хоста То есть вызываем проверку средствами bash и получаем просто ее результат.
- Добавление строк в файл - точно так же, в цикле пока есть значения вызывать echo [property.name:] [value] >>[ПолныйПутькФайлу]
Здравствуйте!
Как простой пример для понимания и иллюстрации (без цикла, передачи параметров в функцию):
log("Script started");
var property = "My_property";
var name1 = "My_name1";
var name2 = "My_name2";
var value = "34";
var commandString;
function write_params() {
//проверяем наличие файла
runShellCommand("test -f /root/my_file.test", {
captureOutput: true,
exitCallback: function (exitCode, capturedOutput) {
if (exitCode === 0) {
//если файл существует - ничего не делаем
log("file exists: nothing to do");
} else {
//если файл не существует - создаем файл и записываем параметры
log("file does not exist");
commandString = "echo " + property + "." + name1 + ":" + value + ">>" + "/root/my_file.test"; //Формируем строку команды для добавления в файл
log(commandString); //вывод строки в лог для контроля
runShellCommand(commandString); //добавляем строку в файл команой bash
commandString = "echo " + property + "." + name2 + ":" + value + ">>" + "/root/my_file.test"; //Формируем строку команды для добавления в файл
log(commandString); //вывод строки в лог для контроля
runShellCommand(commandString); //добавляем строку в файл команой bash
}
},
});
}
write_params();
1 Like
Спасибо. Использовал cat >, файл создается если его нет.