고양이와 관련된 이 두 표현은 무엇을 의미하나요?

고양이와 관련된 이 두 표현은 무엇을 의미하나요?

Linux를 처음 사용하므로 두 명령에 대한 몇 가지 개념을 이해해야 합니다. 과정을 하나씩 설명해 주시면 정말 감사하겠습니다.

이 명령은 무엇을 합니까?

cat ../test

이 명령은 무엇을 합니까?

cat /etc/shadow 2>&1 | wc -l 

감사합니다!

답변1

"../"는 상위 디렉토리입니다.
따라서 "cat ../test"는 "상위 디렉터리에 있는 'test' 파일을 표준 출력으로 인쇄합니다."를 의미합니다.

두 번째 질문:
모든 Linux(및 Unix) 프로세스에는 3개의 표준 파일이 있습니다.
파일 0이 입력(stdin)입니다.
파일 1은 일반 출력(stdout)입니다.
파일 2는 오류 출력(stderr)입니다.
2&>1은 "오류 출력을 표준 출력으로 전송"을 의미합니다.
파이프 |는 "다른 프로그램의 입력으로 파이프 출력"을 의미합니다.
전체 행은 "/etc/shadow의 행 수를 계산하고 표시합니다(있는 경우 오류 메시지 포함).

답변2

아마도 이 명령이 무엇인지 알고 있을 것 cat입니다. 페이지 man에는 다음과 같이 명시되어 있습니다.

cat - 파일을 연결하고 표준 출력으로 인쇄

../현재 작업 디렉터리의 상위 디렉터리를 나타냅니다. 따라서 test해당 위치에서 파일이 호출 되면 cat명령이 해당 파일을 터미널에 인쇄합니다.

/etc/shadow두 번째 예에서는 (액세스 권한이 있는 경우) 내용이 명령이 piped됩니다 .wc

wc - 각 파일의 줄 바꿈, 단어 및 바이트 수를 인쇄합니다.

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

그러면 터미널의 줄 수 /etc/shadow(내용이 아닌 줄 수만 인쇄됨)가 인쇄됩니다. 이 2>&1기호는 파일 설명자 2(표준 오류)를 파일 설명자 1(표준 출력)로 리디렉션합니다.

관련 정보