명령줄에서 출력된 줄 수를 자동으로 인쇄합니다.

명령줄에서 출력된 줄 수를 자동으로 인쇄합니다.

생선 껍질, 나는 사용하고 있습니다물고기 명령 타이머각 명령이 실행된 후 지속 시간을 자동으로 표시합니다. 이것은 훌륭한 기능이며 추천합니다.

이제 나는 이것 외에 비슷한 것을 원합니다: 행 수, 즉각 명령줄이 실행된 후 stdout 및/또는 stderr에 인쇄된 줄 수도 stdout에 인쇄되어야 합니다..

:

바꾸다

> cat /etc/mpd.conf
pid_file "/run/mpd/mpd.pid"
db_file "/var/lib/mpd/mpd.db"
state_file "/var/lib/mpd/mpdstate"
playlist_directory "/var/lib/mpd/playlists"

보고 싶어요

> cat /etc/mpd.conf
pid_file "/run/mpd/mpd.pid"
db_file "/var/lib/mpd/mpd.db"
state_file "/var/lib/mpd/mpdstate"
playlist_directory "/var/lib/mpd/playlists"

[ 4 lines ]

몇 가지 메모:

  • 명령의 출력 줄 번호를 인쇄하는 몇 가지 수동 솔루션이 있습니다.여기, 그러나 나는 이것이 내 물고기 구성에 영구적인 기능으로 구현되기를 원합니다.
  • 명령을 두 번 실행하고 싶지 않습니다(멱등성 부족 등의 명백한 이유로).
  • bash(물고기 대신) 솔루션이 올바른 방향을 알려줄 수 있습니다.

명령 타이머는 명령줄을 실행한 후 발생하는 postexec 이벤트와 함께 작동하지만 문제가 완전히 해결되지는 않으므로 방법이 필요합니다.

답변1

cat /etc/mpd.conf다음으로 교체해 보세요 .cat /etc/mpd.conf | tee /proc/self/fd/2 | echo -e "\n[ $(wc -l) lines ]"

/proc/self/fd/를 사용할 수 없는 경우 2개의 명령으로 분할하거나 && 연산자를 사용하여 이와 같은 작업을 수행해 보십시오.cat /etc/mpd.conf && echo "Number of lines: $(cat /etc/mpd.conf | wc -l)"

~에서화장실 매뉴얼 페이지:

-l, --lines 줄 바꿈 수를 인쇄합니다.

관련 정보