명령 을 통해 내 자신의 명령을 실행할 수 있는지 궁금합니다 less
. 이는 파일 less
을 열어 놓은 다음 화면을 그대로 유지하면서 내가 보고 있는 것(또는 필요한 경우 전체 파일)에 대해 내 명령을 실행할 수 있음을 의미합니다 . 예를 들어, 현재 보고 있는 내용을 다른 방식으로 색칠하거나 파일의 특정 줄을 표시하거나 숨기는 다양한 스크립트를 실행할 수 있기를 원합니다.
나는 매번 다른 실행을 할 수 있다는 것을 알고 있지만 cat <file> | my-script | less -R
그것이 제공하는 편집자와 같은 경험을 제공하지는 않습니다 less
.
답변1
less의 명령을 사용하여 |
다른 프로그램을 통해 파일을 파이프할 수 있습니다.
- 누르다
|
. - 기호 문자 또는
^
또는$
또는 을 입력하세요.
. - 실행할 쉘 명령을 입력하십시오.
- 누르다 Enter.
현재 위치와 마크 사이의 파일 부분만 파이프됩니다. 표시는 각각 파일의 시작과 끝을 의미하거나 명령으로 정의된 위치 ^
일 수 있습니다 . 현재 위치는 마크가 그 앞에 있으면 화면의 라인이고, 그렇지 않으면 화면 하단의 라인입니다. 특히 전체 파일을 파이프하려면 또는 를 사용하여 파일의 한쪽 끝으로 위치를 설정하고 다른 쪽 끝으로 표시를 설정합니다. 화면에 표시된 라인만 파이프하려면 mark 를 사용하십시오 .$
m
<|$mycommand
>|^mycommand
.
명령의 출력은 화면에 남아 있지 않습니다. 더 적은 양으로 출력을 탐색하려면 다른 인스턴스를 시작해야 합니다(예: rot13 | less
. less의 두 번째 인스턴스를 종료하면 첫 번째 인스턴스로 돌아갑니다. 현재 인스턴스의 콘텐츠를 파이프된 데이터로 바꿀 수 있는 방법은 없습니다. 색상을 보려면 를 실행하는 것을 잊지 마세요 less -R
.