мерзавец xargs: пропустите ввод данных пользователем

В журнале много раз четко написано «файловая система только для чтения». Вот почему вы не можете удалять файлы даже с правами root .

1
15.03.2015, 23:50
3 ответа

Вы можете вызвать Git с вариантом - No-Pager , если вы хотите, чтобы это выбросить все без Бег Меньше . Вот детали из страницы человек :

- No-Pager

не выводится в Pager Git в Pager.

1
27.01.2020, 23:51

попробуйте перенаправить stdin или stdout или оба.

например:

gitr log < /dev/null | cat
0
27.01.2020, 23:51

Это не xargs подсказывает вам, это меньше. И меньше вызывается не xargs, а git.

Каждый вызов git'а работает на одном репозитории за раз, так что если вы хотите работать на нескольких репозиториях, вам нужно будет сказать git'у, чтобы он не вызывал пейджер. Однако, возможно, вы захотите вызвать пейджер вручную.

Вот непроверенный код подтверждения концепции, который заставляет git не вызывать пейджер, а вызывать пейджер на выходе из всех вызовов git'а при интерактивном вызове. Ваш код входит во вспомогательную функцию run_git.

gitr () {
  if [ -t 1 ]; then
    run_git \
      -ccolor.branch=always "$@" -ccolor.grep=always -ccolor.showbranch=always -ccolor.status=always \
      | ${GIT_PAGER:-less -r}
  else
    run_git "$@"
  fi
}
0
27.01.2020, 23:51

Теги

Похожие вопросы