Как выполнить команду, сохраненную в переменной в Linux, и сохранить результат в новой переменной [дубликат]Linux

Ответить Пред. темаСлед. тема
Anonymous
 Как выполнить команду, сохраненную в переменной в Linux, и сохранить результат в новой переменной [дубликат]

Сообщение Anonymous »


Я выполняю ряд команд и надеюсь добиться следующего эффекта:
[*]Мне нужно повторить команду перед выполнением. [*]Выполните команду и сохраните результаты в переменной bash, включая неверные результаты. [*]Получить результаты выполнения и статус выполнения, чтобы определить, нужно ли выполнять последующие команды
Аналогично следующему:
[*]cmd_var.sh
#!/bin/bash бревно(){ echo "$(date +"[%Y%m%d %H:%M:%S]:")" "$@" } grep_proc_cmd="ps -ef | grep бесконечный_loop.sh | grep -v grep" log "команда exec: $grep_proc_cmd" exec_ret=$($grep_proc_cmd 2>&1) если [$? != 0 ];тогда log «Ошибка выполнения: $exec_ret» выход 1 фи log "выполнение успешно: ret: [$exec_ret]" [*]Фактическое При выполнении приведенного выше сценария возникает следующая ошибка:

$ bash var_cmd.sh [20240301 01:56:26]: команда exec: ps -ef | grep бесконечный_loop.sh | греп -v греп [20240301 01:56:26]: сбой выполнения: ошибка: опция мусора Использование: пс [варианты] Попробуйте 'ps --help ' или 'ps --help ' для получения дополнительного текста справки. Более подробную информацию см. в ps(1). [*]Ожидать Результат выполнения командной переменной в терминале сохраняется в переменной результата (в exec_ret).

[20240301 01:56:26]: команда exec: ps -ef | grep бесконечный_loop.sh | греп -v греп [20240301 01:56:26]: успешно выполнено: ret: [ec2user 20384 4185646 0 01:53 оч./16 00:00:00 bash бесконечный_loop.sh] Подскажите, пожалуйста, как добиться желаемого эффекта и далее, бывает ли ситуация, когда команда сохранения переменной применима ко всем переменным.

Например:
kill_cmd="ps -ef | grep A | grep -v grep | awk '{print \$2}' | xargs sudo kill -9" cp_cmd="cp А Б" [*]другой способ #!/bin/bash grep_proc_func(){ log "exec: ps -ef | grep бесконечный_loop.sh | grep -v grep" exec_ret=$(ps -ef | grep бесконечный_loop.sh | grep -v grep 2>&1) exec_status=$? } основной(){ grep_proc_func если [ "$exec_status" != 0 ];то log «Ошибка выполнения: $exec_ret» выход 1 фи log "выполнение успешно: ret: $exec_ret" # другая функция cmd } главный "$@"
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Snakemake расширяет строку, сохраненную в переменной
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Snakemake расширяет строку, сохраненную в переменной
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Загрузите базу данных SQL, сохраненную в документе MS Word, в редактор документов Syncfusion.
    Anonymous » » в форуме C#
    0 Ответы
    37 Просмотры
    Последнее сообщение Anonymous
  • Как использовать сохраненную модель с C++ в Visual Studio 2019?
    Гость » » в форуме C++
    0 Ответы
    22 Просмотры
    Последнее сообщение Гость
  • Как загрузить только сохраненную версию элемента списка списка SharePoint с помощью CSOM?
    Anonymous » » в форуме C#
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Linux»