Как связать несколько команд
Мы все должны использовать 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 чтобы сделать это постоянным.