Bash «touch» не работает с именем переменной - PullRequest
0 голосов
/ 04 марта 2020

Я подключился через S SH к серверу, и у меня есть скрипт, который вызывается параллельно, поэтому я хочу назвать выходные файлы по секундам с начала эпохи. Однако этот код не создает никаких файлов вообще.

РЕДАКТИРОВАТЬ: Этот код был отредактирован несколько раз благодаря помощи в комментариях. В настоящее время он не работает и сокращен до MWE. Каталоги изменены ниже, чтобы удалить информацию о сервере.

#!/bin/bash

error() {
    echo "`TZ=UTC date`: $0: error: $@"
    exit 1
}

EXE="tblupcpp.R"
FIXED_PARAMS=""

CONFIG_ID=$1
INSTANCE_ID=$2
SEED=$3
INSTANCE=$4
shift 4 || error "Not enough parameters"
CONFIG_PARAMS=$*
TIME=$(date +%s)
STDOUT="out${TIME}"
STDERR="err${TIME}"

Rscript x/tblupcpp.r ${CONFIG_PARAMS} 1> ${STDOUT} 2> ${STDERR}

Соответствующие выходные данные после запуска:

Wed Mar  4 20:09:16 UTC 2020: x/tuning/target-runner: error: out1583352531.txt: No such file or directory

Я проверил каталоги / x / и / x / tuning / для любые файлы созданы, их нет.

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