Linux에서 명령 줄을 통해 확장 파일 속성보기


2

Windows에서는 탐색기를 열고 열을 추가하여 파일에 대한 추가 정보를 볼 수 있습니다. 예를 들어 아래 이미지에서 회사, 저작권 및 설명에 대한 열을 추가했습니다.

enter image description here

Linux (Ubuntu 12.04 LTS)를 실행하는 시스템의 명령 줄을 통해이 정보를 얻을 수있는 방법이 있는지 알아야합니다. 나는 사용할 수있다. 현 그리고 회사 이름에 grep을하고 그것을 보았습니다. 그러나 나는 이미 회사 이름을 알고 있다고 가정합니다. 나는 "회사"에 대해 grep 할 수 없으며 같은 또는 다음 줄에 회사 이름을 반환해야합니다.


실행 해보십시오. nm file. 라이센스 / 저작권 및 설명에 관해서는 패키지 관리자 (우분투에서 어떻게하는지 모르겠습니다)에서 알 수 있습니다.
— Eddy_Em

그것을 시도, 반환 nm: <filename>: no symbols 위에서 설명한대로 찾고있는 속성이있는 창에서 볼 수있는 여러 파일에 있습니다.
— jdevaney

명확히하기 : 당신은 binary & amp; 라이브러리 파일 우분투에서 또는 창문에 ?
— Eddy_Em

리눅스에서 볼 수 있어야합니다 (이 경우, 제 서버는 우분투를 실행합니다). Windows 시스템에서 속성을 볼 수 있습니다. 이것이 Linux에서 찾을 수있는 방법입니다. 나는 그들이 Windows에서 무엇인지 알고 있으며, 나는 리눅스에서 동일한 정보를 볼 수있는 방법을 찾고있다.
— jdevaney

운영 strings file. (그러나 나는 생각한다, 당신은 바보를 연주하고있다)
— Eddy_Em

답변:


7

모든 정보를 얻을 수는 없습니다. ls.

몇 가지 명령이 필요합니다.

  • 이름 : ls

  • 소유자 : ls -ld <filename> | cut -f3 -d' '

    예 : root

  • 수정 된 날짜 : ls -ld <filename> | awk '{print $6" "$7}'

    예 : 2012-03-02 06:56

    (용도 stat <filename> 날짜가 액세스되고 변경된 경우).

  • 유형 : file <filename>

    예 : /lib/libiw.so.30: ELF 32-bit LSB shared object, Intel 80386 (...)

  • 크기 : ls -hld <filename> | cut -f5 -d' '

    예 : 34K

  • 태그 : N / A

  • 회사 : apt-cache show $(dpkg -S <filename> | cut -f1 -d:) | grep Origin

    예 : Origin: Ubuntu

    (.rpm 기반 시스템에서이 정보는에서 찾을 수 있습니다. rpm -q -i -f <filename> )

  • 저작권 : cat /usr/share/doc/$(dpkg -S <filename> | cut -f1 -d:)/copyright 2>/dev/null || echo 'No copyright information'

    예 : (...) Copyright: Commercial (...)

    (.rpm 기반 시스템에서이 정보는에서 찾을 수 있습니다. rpm -q -i -f <filename> )

  • 기술 : apt-cache show $(dpkg -S <filename> | cut -f1 -d:) | fgrep 'Description' | fgrep -v Description-md5

    예 : Description-en: Filesystem in Userspace (library)

    (.rpm 기반 시스템에서이 정보는에서 찾을 수 있습니다. rpm -q -i -f <filename> )

  • 장황한 설명 : apt-cache show $(dpkg -S <filename> | cut -f1 -d:) | egrep -v '^[^ ]'

    예 : GNU findutils provides utilities to find files meeting specified criteria and perform various actions on the files which are found. This package contains 'find' and 'xargs'; however, 'locate' has been split off into a separate package.

    (.rpm 기반 시스템에서이 정보는에서 찾을 수 있습니다. rpm -q -i -f <filename> )

위의 정보를 많이 제공하는 Ubuntu의 쉘 기능은 매우 빠르며 더러운 것입니다.

function lsw { filename=$1; ( echo "XXNameXXOwnerXXDate ModifiedXXTypeXXSizeXXCompanyXXDescription"; ( echo  XX$filename; echo -n XX; ls -dl $filename | cut -f3 -d' '; echo -n XX; ls -dl $filename | awk '{print $6" "$7}'; echo -n XX; file $filename | cut -f2 -d: | cut -f1 -d,; echo -n XX; ls -hld $filename| cut -f5 -d' '; echo -n XX; apt-cache show $(dpkg -S $filename 2>/dev/null| cut -f1 -d:) 2>/dev/null| egrep 'Origin:|Section:' | tail -n 1 | cut -f2 -d:; echo -n XX; apt-cache show $(dpkg -S $filename 2>/dev/null| cut -f1 -d:) 2>/dev/null| fgrep 'Description' | fgrep -v Description-md5 | cut -f2 -d:) | tr '\n' ' '; echo ) | column -t -s XX; }

몇 가지 예 :

$ lsw /home/jaume
Name          Owner   Date Modified      Type         Size   Company  Description
/home/jaume   jaume   2013-02-19 22:01    directory   4.0K 

$ lsw /opt/ibm/notes/notes
Name                   Owner  Date Modified      Type                         Size  Company  Description
/opt/ibm/notes/notes   root   2012-12-08 08:47    ELF 32-bit LSB executable   47K    IBM      IBM Notes 

$ lsw /lib/libfuse.so.2
Name                Owner  Date Modified      Type                                   Size  Company   Description
/lib/libfuse.so.2   root   2012-03-02 16:33    symbolic link to `libfuse.so.2.8.6'   16     Ubuntu    Filesystem in Userspace (library) 
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.