Искажение команды с параметром, предоставленным другой команде

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

Для создания использования сгиба v {движение} zf в визуальном режиме. Использовать зона действий и zd, чтобы развернуть и удалить сгиб соответственно. Можно также создать сгибы в командном режиме. По существу {движение} zf .

Этот видео могло бы быть удобной ссылкой.

0
31.03.2015, 00:59
1 ответ

Это немного выходит за рамки того, что предоставляют псевдонимы оболочки (предполагая bash). Вы можете определить функцию:

function tail() {
    if [ "$1" == '-f' ]; then
        shift
        less +F "$@"
     else
         command tail "$@"
     fi
 }

Когда вы набираете tail, это будет относиться к определенной функции выше, который проверяет свой первый аргумент, если таковой имеется, на равенство с -f, и если он совпадает, то запускается за вычетом +F на остальной части оригинала. аргументы (сдвиг удаляет первый из исходных аргументов, -f). В противном случае она вызывает команду -f со всеми исходными значениями аргументы (вызов встроенной команды необходимы для того, чтобы избежать бесконечный цикл; без него хвост ссылался бы на функцию, которая является определенная, вызывающая бесконечный цикл).

2
28.01.2020, 02:36

Теги

Похожие вопросы