몇 줄의 프로세스 출력을 파일에 복사합니다.

몇 줄의 프로세스 출력을 파일에 복사합니다.

Qt 애플리케이션의 xinput-calibrator 출력을 temp.txt 파일로 복사하고 싶습니다.

내 응용프로그램에서 QProcess를 시작합니다.

이 명령을 사용하면 xinput_calibrator | tee log.txt전체 텍스트를 복사할 수 있지만 출력 중 몇 줄만 파일에 저장하면 됩니다.

아래는 출력입니다xinput_calibrator

Warning: multiple calibratable devices found, calibrating last one (VirtualBox mouse integration)
use --device to select another one.
Calibrating EVDEV driver for "VirtualBox mouse integration" id=12
    current calibration values (from XInput): min_x=4, max_x=65512 and min_y=-52, max_y=65816

Doing dynamic recalibration:
    Setting new calibration data: 66, 65483, -125, 65584


--> Making the calibration permanent <--
  copy the snippet below into '/etc/X11/xorg.conf.d/99-calibration.conf'
Section "InputClass"
    Identifier  "calibration"
    MatchProduct    "VirtualBox mouse integration"
    Option  "Calibration"   "66 65483 -125 65584"
EndSection

마지막 5줄을 temp.txt 파일에 복사하면 됩니다.

답변1

@skwllsp가 언급했듯이 귀하의 질문은 괜찮습니다 xinput_calibrator | tail -n 5 | tee log.txt. 그러나 이것을 달성하려는 이유를 물어봐도 될까요 tee?

tee유틸리티는 표준 입력을 표준 출력으로 복사하여 0개 이상의 파일을 복사합니다. 출력은 버퍼링되지 않습니다.

목적 tee은 출력을 파일에 쓰는 것입니다.그리고파이프라인이 다음 명령을 계속 실행하도록 합니다.

출력을 파일로 보내려면 >또는 를 사용하여 수행 할 수 있습니다 >>.

xinput_calibrator | tail -n 5 > log.txt

log.txt존재하지 않는 경우 생성되거나null로 자릅니다.이미 존재하는 경우 출력이 파일에 기록됩니다.

xinput_calibrator | tail -n 5 >> log.txt

이전 데이터가 삭제되지 않도록 파일에 추가됩니다. (파일이 없으면 새로 생성합니다.)


추가 자료:

관련 정보