`ls -l`을 입력 할 때 파일 이름 뒤에 별표가 무슨 뜻입니까?


161

ls -l디렉토리 내부에서 작업했으며 파일이 다음과 같이 표시됩니다.

james@nevada:~/development/tools/android-sdk-linux_86/tools$ ll
total 9512
drwxr-xr-x 3 james james    4096 2010-05-07 19:48 ./
drwxr-xr-x 6 james james    4096 2010-08-21 20:43 ../
-rwxr-xr-x 1 james james  341773 2010-05-07 19:47 adb*
-rwxr-xr-x 1 james james    3636 2010-05-07 19:47 android*
-rwxr-xr-x 1 james james    2382 2010-05-07 19:47 apkbuilder*
-rwxr-xr-x 1 james james    3265 2010-05-07 19:47 ddms*
-rwxr-xr-x 1 james james   89032 2010-05-07 19:47 dmtracedump*
-rwxr-xr-x 1 james james    1940 2010-05-07 19:47 draw9patch*
-rwxr-xr-x 1 james james 6886136 2010-05-07 19:47 emulator*
-rwxr-xr-x 1 james james  478199 2010-05-07 19:47 etc1tool*
-rwxr-xr-x 1 james james    1987 2010-05-07 19:47 hierarchyviewer*
-rwxr-xr-x 1 james james   23044 2010-05-07 19:47 hprof-conv*
-rwxr-xr-x 1 james james    1939 2010-05-07 19:47 layoutopt*
drwxr-xr-x 4 james james    4096 2010-05-07 19:48 lib/
-rwxr-xr-x 1 james james   16550 2010-05-07 19:47 mksdcard*
-rw-r--r-- 1 james james  205851 2010-05-07 19:48 NOTICE.txt
-rw-r--r-- 1 james james      33 2010-05-07 19:47 source.properties
-rwxr-xr-x 1 james james 1447936 2010-05-07 19:47 sqlite3*
-rwxr-xr-x 1 james james    3044 2010-05-07 19:47 traceview*
-rwxr-xr-x 1 james james  187965 2010-05-07 19:47 zipalign*

그 별표는 무엇을 의미합니까?

다음과 같이 특정 파일을 실행할 수도 없습니다.

james@nevada:~/development/tools/android-sdk-linux_86/tools$ ./emulator 
bash: ./emulator: No such file or directory

편집 : Eclipse를 사용하려고하는데 emulator파일이 존재하지 않는다고 계속 불평하지만 여기에 있습니까?


3
모든 파일은 NTFS 파티션에서 실행 파일로 표시됩니다.
Smile4ever

@ Smile4ever 그것은 사실이 아닙니다. 파티션을 마운트 한 방법에 따라 다르며 기본적으로 모든 실행 파일로 마운트됩니다. FAT 및 다른 비 유닉스 파티션에도 동일하게 적용됩니다. 그러나 POSIX 호환 askubuntu.com/q/86959/253474 unix.stackexchange.com/q/11757/44425
phuclv

@ LưuVĩnhPhúc 예, 파티션을 다르게 마운트 할 수 있습니다. 그러나 기본적으로 대부분의 Linux 배포에서 실행 파일로 마운트됩니다. 설명해 주셔서 감사합니다.
Smile4ever

답변:


77

Ignacio Vazquez-Abrams는 이미 다음에 대해 설명했습니다* .

파일이 실행 가능하다는 것을 의미합니다. 명령 행을 통해 -F를 ls로 전달하거나 그렇지 않으면 분류자가 표시됩니다.

emulator실제로 실행할 수없는 실행 파일 모양 은 요청한 동적 로더 emulator가 존재하지 않을 때 발생할 수 있습니다. emulator명령으로 어떤 종류의 파일을 file emulator검사하고 필요한 동적 로더 및 라이브러리를 확인할 수 있습니다 ldd emulator(“찾을 수 없음”을 나타내는 행은 설치해야합니다).

디렉토리 이름과 파일 크기가 주어지면 emulator아마도 Linux x86 바이너리 일 것입니다. 나는 당신이 amd64 시스템을 가지고 있다고 생각합니다. 그렇다면 32 비트 응용 프로그램 용 런타임 환경을 설치해야합니다. 우분투에서는 ia32-libs패키지 가 필요할 것 ia32-libs-gtk입니다.

#!행에 표시된 인터프리터 가없는 스크립트에 대해서도이 오류 메시지가 표시 될 수 있습니다.


1
흥미롭게도, 당신이 제안한 것을 줄 것입니다. 나를 혼란스럽게하는 것은 내가 어제 이것을 실행했다가 다시 시작한 것뿐입니다 ... : S
user155695

-bash: ./badshebang: /bin/xyzzy: bad interpreter: No such file or directory
Dennis Williamson


33

보낸 사람 info ls:

`-F'
`--classify'
`--indicator-style=classify'
     Append a character to each file name indicating the file type.
     Also, for regular files that are executable, append `*'.  The file
     type indicators are `/' for directories, `@' for symbolic links,
     `|' for FIFOs, `=' for sockets, `>' for doors, and nothing for
     regular files.

3
낚시를 가르치고 물고기를 줄 때 +1
atoMerz

21

우분투 (12.04 및 다른 버전도 가능)에는 기본적으로 다음 설정이 포함됩니다.

alias ll='ls -alF'

그리고 다른 사람들이 설명했듯이, -F별표에 책임이 있습니다.

IPython F은 기본적으로 후드 아래 에서 플래그를 자동으로 사용 하므로, 입력 ls하면 효과가 나타납니다.

편집 : 그건 그렇고, 당신은 당신이 달리고 있다고 말하고 있습니다 ls -l. 달리기 ll는 전혀 같지 않을 수도 있습니다.


7
Bash에서 할 수있는 재미있는 트릭은 별칭 명령 (예 : "ll")을 입력하고 [Ctrl] + [Alt] + [e]를 누르는 것입니다. 별명을 확장하여 실제로 처리중인 것을 확인할 수 있습니다. (완전히 확장하려면 몇 번 눌러야 할 수도 있습니다)
Adam

9

다른 사람들이 언급했듯이 실행 파일을 별표로 표시 하는 -F옵션이 ls있습니다. 당신은이 없습니다 -F명령 줄에서, 그러나 그 가능성이 ls별칭이있다. 셸에서 선택한 셸에서 별칭을 확인하거나 (bash에서 내장 명령 alias을 사용하여 별칭을 나열 함) ls백 슬래시로 명령을 이스케이프하여 별칭 을 비활성화 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.