두 개의 동일한 목록에서 첨부된 파일만 확인하는 방법은 무엇입니까?

두 개의 동일한 목록에서 첨부된 파일만 확인하는 방법은 무엇입니까?

장치 폴더를 두 번 나열했는데, 한 번은 SD 카드를 슬롯에 삽입하지 않고, 한 번은 삽입한 후 시스템이 자동으로 장치 폴더에 파일을 추가했습니다.

$ ls /dev | wc -l
205
$ ls /dev | wc -l
206

각 목록을 별도의 파일에 넣을 수 있습니다. 하지만 ls /dev > foo이 시점에서 어떤 장치 파일이 추가되었는지 어떻게 확인할 수 있습니까?

답변1

장치를 추가하기 전에 이 명령을 실행하여 초기 목록을 파일에 저장할 수 있습니다.

ls /dev >~/a

장치를 추가한 후:

ls /dev | diff -u ~/a -

그러면 두 파일 목록이 어떻게 다른지 알 수 있습니다. diff 두 텍스트 파일 간의 차이점을 표시하고 플래그는 -u출력 형식을 변경합니다. 추가된 줄에는 기호가 접두사로 붙습니다 +. 예를 들어, 다음과 같은 출력이 나오면(diff 헤더는 생략했습니다):

 sdc
 sdd
 sde
+sdf
 sg0
 sg1
 sg2

즉, 생성된 새 장치는 입니다 /dev/sdf.

그런 다음 임시 파일을 삭제할 수 있습니다 ~/a.

찾고 있는 정보를 얻는 또 다른 방법 tail -f /var/log/messages: 새 장치의 출현과 사라짐을 언급하는 커널 메시지가 표시되어야 합니다.

관련 정보