Как связать несколько команд

Мы все должны использовать ls |more, а также некоторые другие команды.

Так что мне просто нужна информация, есть ли способ связать несколько команд вместе, как я хочу связать ls | больше вместе. Так что, когда я просто передаю команду ls, она должна отобразить некоторые данные и ждать, пока пользователь нажмет клавишу (пробел), чтобы показать остальные данных.

Возможно ли это в Linux?????

2 ответа

Решение

Да, вы можете использовать псевдоним для перезаписи команды. На самом деле, это уже имеет место для ls по умолчанию это псевдоним ls --color=auto

Создайте файл с именем ~/.bash_aliases и введите следующую строку

alias ls='ls | more'

Теперь, когда вы печатаете ls в вашем терминале, вместо этого он выполнит ls | more,

В этом случае у него есть проблема с параметрами. ls /some/directory больше не будет работать, потому что параметры применяются к more вместо ls (ls | more /some/directory будет выполнен)

Если вы хотите, чтобы команда ls все еще принимала ключи командной строки, вам нужно использовать функцию shell-script, что-то вроде этого должно сделать:

ls() { command ls $@ | more; }

Поместите это в ~/.bashrc чтобы сделать это постоянным.

Другие вопросы по тегам