배경
오늘 저는 다음 명령을 사용하여 perconna의 innobackupex를 시험해 보았습니다.
innobackupex --stream=xbstream /root/backup/ > /root/backup/backup.xbstream
그러나 내 터미널에 로그가 표시되는 것을 확인했습니다.
...
IMPORTANT: Please check that the backup run completes successfully.
At the end of a successful backup run innobackupex
prints "completed OK!".
230202 15:52:24 Connecting to MySQL server host: 127.0.0.1, user: root, password: set, port: 3306, socket: not set
...
어찌할 바를 모르는
리디렉션이 >
표준 출력을 /root/backup/backup.xbstream에 기록하면 안 되나요? 터미널에서 로그를 계속 볼 수 있는 이유는 무엇입니까?
답변1
Unix 계열 시스템의 프로세스에는 서로 다른 오류 출력 스트림과 처리된 데이터 스트림이 stderr
있습니다 stdout
. 이러한 분리는 경고 및 오류 메시지가 출력 데이터의 형식을 방해하는 것을 방지하기 위해 수행됩니다(예: 파이프를 통해 전달되는 경우).
# redirect the command output, but omit warnings and errors
# (these will end up on stderr, which is written to the console by default)
mycommand > /some/path/myfile
# redirect warnings and errors only
mycommand 2> /some/path/myfile
# redirect both
mycommand &> /some/path/myfile
인용하다리디렉션에 대한 GNU 공식 Bash 문서각 스트림 리디렉션에 대한 자세한 내용