Вы можете сделать что-то вроде этого. Я определяю линию как у вас. Затем я анализирую наш первый токен, разделенный запятыми, из строки (я предполагаю, что здесь он будет действителен для имени переменной). Затем я создаю две новые переменные на основе первого токена и назначаю их второму и третьему разделенным запятыми токенам из строки.
line="dog,/path1,/path2"
first="$(echo "${line}" | awk -F, '{ print $1 }')"
eval "${first}1=$(echo "${line}" | awk -F, '{ print $2 }')"
eval "${first}2=$(echo "${line}" | awk -F, '{ print $3 }')"
echo "${dog1}"
/path1
echo "${dog2}"
/path2
Вы должны заключить команду в кавычки
watch 'squeue -u mnyber004 | grep 4138'
В другом ответе рассказывается, как использовать утилиту «watch» с конвейером, но, поскольку вы используете Slurm и знаете идентификатор задания, просто спросите Slurm о статусе этого задания:
$> watch squeue -j 4138