일반 파일과 명령 파일을 구별하고 해당 버전을 가져옵니다.

일반 파일과 명령 파일을 구별하고 해당 버전을 가져옵니다.

사용자가 입력으로 제공한 폴더 또는 디렉터리 내의 모든 파일에 대한 다음 세부 정보를 나열하는 스크립트를 작성했습니다.

File Name
Absolute Path 
Created Date
Modified Date
Accessed Date
Size
Version of the file

위의 세부정보에서 버전 세부정보를 제외한 모든 정보를 얻을 수 있습니다.

따라서 사용자가 입력으로 제공한 디렉터리 내의 파일이나 콘텐츠 버전에 관해서는 내가 아는 한 다음 사항을 처리해야 합니다(빠른 사항이 있으면 알려주시기 바랍니다).

  1. 원래는 소유자 이름을 가져와 루트인 경우 이를 명령으로 처리하고 싶었지만 루트가 소유자인 일부 일반 파일이 있을 수 있다는 것을 깨달았습니다.
  2. 일반 파일(.txt, .sh, .conf 등)과 명령(ls, grep, echo 등)을 구별해야 합니다.
  3. 버전 자리 표시자가 다른 명령에 대해 계속 변경되므로 명령의 버전 세부 정보를 캡처합니다.

예:

$ vi --version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Mar 31 2015 11:13:18)

$ sync --version
sync (coreutils) 8.4

$ unlink --version
unlink (GNU coreutils) 8.4

$ sleep --version
  version         sleep (AT&T Research) 2009-03-12

  $ umount --version
umount (util-linux-ng 2.17.2)

관련 정보