특수/장치 파일의 경우 C fsize
함수는 4096을 반환하지만 장치 파일의 실제 크기(유한한 경우)를 알 수 있는 통합 함수가 있습니까?
파일이 일반 파일인지 장치 파일인지 알 수 있는 방법이 있는지도 알고 싶습니다.
감사해요!
답변1
귀하의 질문은 여전히 상당히 불특정하고 광범위하며, 불특정 질문의 경우 도움이 될 수도 있고 그렇지 않을 수도 있는 불특정 답변을 얻게 됩니다. 여전히 올바른 방향을 가리키려고 노력하고 있습니다.
파일이 일반 파일인지 장치 파일인지 알 수 있는 방법이 있는지도 알고 싶습니다.
틀림없이. 가장 일반적인 출력은 다음과 같습니다 ls -l
.
$ ls -l /dev
total 0
crw-rw----+ 1 root audio 14, 4 Jan 5 00:44 audio
crw------- 1 root root 10, 235 Jan 5 00:44 autofs
drwxr-xr-x 2 root root 480 Jan 17 01:20 block
drwxr-xr-x 2 root root 140 Jan 17 01:20 bsg
drwxr-xr-x 3 root root 60 Jan 5 00:44 bus
lrwxrwxrwx 1 root root 3 Jan 17 22:14 cdrom -> sr0
[...]
각 입력 줄의 첫 번째 문자는 파일 형식을 표시합니다. 유효한 형식 목록은 다음에서 찾을 수 있습니다.ls
수동.
의 항목에 대해 문의할 때 /dev
목차와 링크 외에 가장 일반적인 유형은 다음과 같습니다.캐릭터 장치그리고블록 장치.
장치 파일의 실제 크기를 알 수 있는 통합 기능이 있나요?
이미 지적했듯이 "실제 크기"는 장치 "에서" 사용할 수 있는 크기를 의미하며, 그 안에 있는 특수 파일은 /dev
해당 파일에 액세스할 수 있는 시스템을 나타내는 것일 뿐입니다.
"치수를 구하는 방법"에 대한 대답은 "내용에 따라 다릅니다"입니다. 예를 들어 디스크 파티션(블록 장치)의 경우 일반적으로 마운트하고 다음 명령을 사용하여 크기(총 공간, 점유 공간, 여유 공간)를 얻을 수 있습니다.df
. 반면, 모든 블록 장치를 장착할 수 있는 것은 아닙니다.
당신이 달성하고자 하는 것이 정확히 무엇인지 알지 못해도 이것이 지금까지 얻을 수 있는 전부입니다. 이제 생각하고 웹을 검색하는 것은 귀하에게 달려 있습니다(모든 것이 거기에 있습니다). 스스로 알아낼 수 없다면 새로운 질문을 만들 수 있습니다.