/dev 디렉토리에는 시스템 장치가 포함되어 있습니다. /dev/stdin은 링크입니다. 그것은 무엇을 가리키는가?

/dev 디렉토리에는 시스템 장치가 포함되어 있습니다. /dev/stdin은 링크입니다. 그것은 무엇을 가리키는가?

저는 터미널을 사용하고 있는데 stdin@/dev에서 찾았습니다. 여기에는 몇 가지 문제가 있습니다.

1) 끝에 @ 표시가 있는 항목은 무엇을 의미/제시하나요? 언제 사용하나요?

2) 질문에서 알 수 있듯이 링크입니다. 이것이 무엇을 가리키는지 알아내기 위해 어떤 명령을 사용할 수 있나요?

답변1

  1. @심볼릭 링크를 나타냅니다 . ls별칭이 지정되고 플래그가 추가 될 수 있습니다 . ls -F별칭을 해제 ls하거나 명시적으로 수행 하면 /bin/ls파일 형식 장식이 표시되지 않습니다.
  2. ls -l /dev/stdin심볼릭 링크의 대상을 보려면 실행하십시오 .
  3. Linux에서는 링크 ( 예 링크 , 예 링크 ) /dev/stdin에 연결합니다 . 디렉토리입니다/proc/self/fd/0/dev/stdin/dev/fd/0/dev/fd/proc/self/fd/proc/self프로세스 파일 시스템커널은 호출 프로세스에 대한 정보를 노출합니다(즉, 각 프로세스는 읽을 때 자신에 대한 정보를 얻습니다 /proc/self). 이 하위 디렉터리 fd에는 각 항목에 대한 항목이 포함되어 있습니다.열린 파일 설명자프로세스 내에서 이는 프로세스가 연 파일을 가리키는 (다소 마술적인) 심볼릭 링크입니다.

관련 정보