Ответ 1
Подключите его к sed
, чтобы вставить 2 пробела в начале каждой строки.
git status | sed 's/^/ /'
Я пытаюсь изменить сообщение дня (MOTD) на своем Ubuntu Amazon EC2, чтобы он отображал статус git одного из моих каталогов, когда я вхожу в SSH.
Вывод из всех файлов MOTD по умолчанию имеет два пробела в начале каждой строки, поэтому он выглядит хорошо отступом, но поскольку мой вывод git status
охватывает несколько строк, если я делаю echo -n " "
, прежде чем он только отстутнет первый линия.
Любая идея, как я могу заставить ее отступать каждую строку?
Спасибо!
Подключите его к sed
, чтобы вставить 2 пробела в начале каждой строки.
git status | sed 's/^/ /'
Основываясь на ответе @Barmar, это более удобный способ сделать это:
indent() { sed 's/^/ /'; }
git status | indent
other_command | indent
Благодаря @Barmar и @Marplesoft для некоторых хороших простых решений - вот еще один вариант, что другие могли бы - это функция, которую вы можете сказать, сколько отступа уровней с помощью pr
:
indent() {
local indentSize=2
local indent=1
if [ -n "$1" ]; then indent=$1; fi
pr -to $(($indent * $indentSize))
}
# Example usage
ls -al | indent
git status | indent 2