Рассмотрим это:Head на журнал Svn не всегда останавливается
svn log -r HEAD:1 --search $pattern | head -4
Иногда эта команда находит необходимое количество линий (например, 4) и останавливается. Но иногда он просто продолжает поиск (т. Е. Зависает) даже после того, как нашел необходимое количество строк.
Я не знаю, на что это зависит (независимо от того, продолжает ли он поиск или останавливается). Я хотел бы знать причину, и я хотел бы знать, как изменить мою команду, чтобы она всегда останавливалась сразу после того, как нашла необходимое количество строк (я не хочу, чтобы svn log
искал всю историю svn, поскольку это может занять время).
Разве это не похоже на встроенную функциональность оболочки? Я имею в виду, что после прочтения 4 строк ввода будет не просто 'head' закрывать трубку или что-то еще (что также приведет к завершению' svn log')? – NPS
@NPS Я предполагаю, что вы должны явно закончить процесс. Я не уверен, закрывает ли 'head' трубку и убивает ли он исходный процесс' svn log'. – bahrep
Но из того, что я вижу, 'head' как-то убивает процесс, когда он получает необходимое количество ввода. Рассмотрим «да». head'. По-видимому, 'head' просто странно взаимодействует с' svn log'. Потому что это также ** делает ** останавливаться для меня, только не всегда. – NPS