스트라이프 출력은 긴 줄을 읽는 데 도움이 됩니다.

스트라이프 출력은 긴 줄을 읽는 데 도움이 됩니다.

gedit에서 로그 파일을 확인하는 더 빠르고 명확한 방법이 있는지 궁금합니다. 적어도 선을 번갈아 강조 표시하는 것이 가능하다면 말이죠.

여기에 이미지 설명을 입력하세요

답변1

스트라이프 출력은 긴 줄을 읽는 데 도움이 됩니다.

편집 2:

ksystemlog표준 로그 파일을 보기 위한 전용 도구를 찾았습니다 . 로그 파일을 보는 것이 가장 좋은 대안일 수 있습니다. 다른 모든 줄을 강조 표시하고 텍스트 창을 '스트라이핑'하며 다른 작업도 수행할 수 있습니다. 다음 링크를 참조하세요

https://apps.kde.org/ksystemlog/

https://www.ubuntupit.com/best-linux-log-viewer-and-log-file-management-tools/

Universe 저장소에서 설치할 수 있습니다.

sudo apt update
sudo apt install ksystemlog

여기에 이미지 설명을 입력하세요


sed로그 파일이 아닌 다른 목적으로 이러한 도구를 원할 수 있고 ANSI 시퀀스를 사용하는 방법이 less매우 큰 텍스트 파일로 작업할 수 있기 때문에 이 답변에는 다른 대안을 남겨 둡니다. 나는 시청자를 알고 있으며 less그것은 나에게 잘 작동합니다.

그리고 마침내 나는 찾았다.glogg위의 두 번째 링크에도 있습니다. 또한 매우 큰 텍스트 파일을 볼 수도 있지만 줄마다 강조 표시가 없고 '줄무늬'가 없는 것 같습니다. ( glogg의 텍스트 모드 인터페이스보다 의 GUI를 선호할 수도 있습니다 less.)

sudo apt update
sudo apt install glogg

편집 1:

를 호출할 수 있는 다음 쉘스크립트를 사용해 볼 수 있습니다 randig. ANSI 이스케이프 시퀀스를 사용하여 색상을 렌더링하고 less결과를 봅니다. 보려는 파일은 쉘스크립트에 매개변수로 입력됩니다.

also를 사용하면 xterm( sed원래 도구보다) 더 나은 도구가 더 빠르고 눈에 더 좋아집니다.

#!/bin/bash

# xterm -fs 14 sets the font size
# xterm -bg '#2b2c2b' -fg '#dbdcdb' is grey background and white foreground
# ANSI:
# 'esc[33;40m' is yellow/brown on black background
# 'esc[0m' resets video

if test -s "$1"
then
 tmpfile=$(mktemp)
 sed -e "s/^/$(echo -en '\0033[33;40m')/;s/$/$(echo -en '\0033[0m')/;n" "$1" > "$tmpfile" 

 xterm -title "${0##*/} $1" -fa default -fs 14 -bg '#2b2c2b' -fg '#dbdcdb' -e less -r "$tmpfile" 2> /dev/null

 rm "$tmpfile"
else
 echo "
Usage ${0##*/} <text-file>

striped output helps reading long lines"
fi

쉘스크립트를 실행 가능하게 만들기

chmod +x randig

로컬에서 사용하세요.

./randig file-to-view

PATH또는 '어디서나' 사용하려면 디렉토리로 이동하세요.

randig file-to-view

코멘트:

  • 줄 바꿈은 보는 사람에게 문제를 일으키므로 less가능하면 줄 바꿈 없이 줄을 표시할 수 있을 만큼 창을 넓게 만드십시오.

  • 설치해야 할 수도 있습니다 xterm.

    sudo apt update
    sudo apt install xterm
    
  • 눈에 가장 잘 맞는 글꼴 크기와 색상을 편집하세요 :-)

예:

randig randig

여기에 이미지 설명을 입력하세요

편집 끝


원본 쉘스크립트:

#!/bin/bash

blueback="\0033[1;44m"
whitefore="\0033[1;37m"
yellowfore="\0033[1;33m"
resetvid="\0033[0m"

inv=true

########################################################################
function doit {

ifs0=$IFS
IFS=$'\n'   
while read -r line
do
 if $inv
 then
  inv=false
  echo -en "$yellowfore"
  echo -E "$line"
 else
  inv=true
  echo -en "$whitefore"
  echo -E "$line"
 fi
# sleep .5
done < "$1"
IFS=$ifs0
}
########################################################################

# main

########################################################################

echo -en "$blueback"
doit "$1" | less -r
echo -en "$resetvid"

예:

./randig randig

여기에 이미지 설명을 입력하세요

관련 정보