Страницы

Поиск по вопросам

среда, 26 февраля 2020 г.

Псевдонимы в Linux

#linux


Знакомлюсь с Линукс. Хочу создать псевдоним рекурсивного копирования с выводом DONE,
если все прошло успешно. 

$ alias cpRI="cp -ri $ $ && echo "DONE""


Как сделать, чтобы пользователь на месте знаков доллара мог вводить путь к каталогам?
    


Ответы

Ответ 1



Алиасы не предназначены для таких действий. Но это можно сделать с помощью объявления функции: function cpRI { cp -ri "$1" "$2" && echo "DONE"; } Данный код можно разместить в файле ~/.bash_aliases, а "подключить" в bash путем добавления в ~/.bashrc следующего: if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi Либо: alias cpri="cp -ri" Но тогда использовать так: cpri srcFolder destFolder && echo DONE PS. Linux-way: если команда выполнилась успешно - она ничего не выводит. Вы пытаетесь повторить dos-way, сообщая "Все хорошо". На этот случай намного лучше: результат выполнения команды можно получить через $? - просто напечатайте и увидите код ошибки или ноль это $? можно использовать для подсветки приглашения командной строки (красить красным) - легко ищется по bash prompt color error некоторые команды имеют многословный режим "verbose" - выводится все дополнительная информация

Комментариев нет:

Отправить комментарий