Если я выполняю команду как:
watch "ps -ef | grep '^foo.*bar'"
и соответствие произвело строку ps -ef
длинная линия как
foo <lots and lots of text here> bar
производится ли эта строка, затронут терминальным размером. Например, если терминал будет полным экраном и этой строкой соответствия на экране, то вывод покажут в часах. Однако, если я изменяю размер окна к половине размера экрана так, чтобы панель была усеченной с экрана, затем grep строка полностью исчезает (по-видимому, строка является усеченной, прежде чем это доберется до grep в конвейере). Это - проблема, потому что я пытаюсь извлечь часть этой строки для использования позже в конвейере.
Там какое-либо решение к этому, чтобы препятствовать тому, чтобы терминальный размер влиял на вывод grep в рамках команды часов?
Я не знаю, какой правильные решения, но это, кажется, решает проблему,
watch "COLUMNS=160 ps -ef | grep '^foo.*bar'"
за счет наличия строк от PS свернулся. Изменитесь "160", чтобы быть достаточно длинными для самого длинного "нечто. *bar" строка Вы ожидаете видеть.