Я создал некоторые псевдонимы, которые я использую один за другим. Это всегда зависит ли предыдущая команда, за которой следуют.
Действительно ли возможно использовать один псевдоним для нескольких команд, в зависимости от экранного вывода? Например: Когда вывод содержит "сбой" или "ошибку", следующая команда не должна быть установлена.
Обычно, отказ команды сообщен ее ненулевым статусом выхода. В таком случае, с помощью &&
решает проблему:
ls /nonexistent-file && echo This won\'t be printed
, Если необходимо проверить вывод, можно использовать grep
и ||
:
echo fail | grep 'fail\|error' || echo This won\'t be printed
не забывают заключать содержание псевдонима в кавычки:
alias safe-ls='ls /nonexistent-file && echo This won'\''t be printed'
при необходимости в параметрах для команд необходимо будет использовать функции вместо этого:
safe-ls () {
ls "$1" && echo This won\'t be printed
}