Инструменты пользователя

Инструменты сайта


nix:shell:hacks

Это старая версия документа!


Всякие хитрости в shell

получить список каталогов в текущей папке

ls -d */|sed 's/\/$//'|xargs

полный путь к каталогу скрипта

dir="$(cd "$(dirname "$0")"; pwd)"

имя текущего скрипта

basename $0

То же самое, но еще отрезаем от имени расширение файла

basename $0|sed 's/\.[^.]*$//'

То же самое, но еще отрезаем от имени все расширения файла

basename $0|sed 's/\..*$//'

pipefail

Если опция pipefail включена — статус выхода из конвейера является значением последней (самой правой) команды, завершённой с ненулевым статусом, или ноль — если работа всех команд завершена успешно.

set -o pipefail

Всякие хитрости в shell

получить список каталогов в текущей папке

ls -d */|sed 's/\/$//'|xargs

полный путь к каталогу скрипта

dir="$(cd "$(dirname "$0")"; pwd)"

имя текущего скрипта

basename $0

То же самое, но еще отрезаем от имени расширение файла

basename $0|sed 's/\.[^.]*$//'

То же самое, но еще отрезаем от имени все расширения файла

basename $0|sed 's/\..*$//'

pipefail

Если опция pipefail включена — статус выхода из конвейера является значением последней (самой правой) команды, завершённой с ненулевым статусом, или ноль — если работа всех команд завершена успешно.

set -o pipefail

tail с подсветкой слов

tail -F /path/to/file | grep -E --color=always '^|word1|string 1'

Команда будет выводить на экран файл как обычный tail, но при этом подсвечивая строки 'word1' и 'string 1'.

Ключ -E для grep включает расширенные регулярные выражения. Это даст возможность использования пайпа | как элемента или. Первая часть строки для grep ^ позволяет выводить все строки (не отфильтровывая), так как совпадает с любой строкой

nix/shell/hacks.1708274995.txt.gz · Последнее изменение: 2024/02/18 19:49 — san

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki