linux 查詢可執行檔案

2021-08-17 10:35:05 字數 1443 閱讀 3885

linux下如何查詢可執行檔案,作為乙個linux小菜剛剛有了這個問題,

在windows中,可以通過字尾名判斷是否是可執行檔案,比如.exe,.bat等是可執行檔案,但是在linux下呢?

linux下不能簡單根據檔案字尾判斷是否可執行。

linux下判斷乙個檔案是否可執行,關鍵看是否有可執行許可權

,比如:

在終端中輸入:ls -l

,會列出類似於下的列表:

-rwxrwxr-x 1 bingyue bingyue 48141 jul 17 02:50 redis-trib.rb*

-rw-rw-r-- 1 bingyue bingyue 2163 aug 5 23:34 release.c

drwxrwxr-x 2 bingyue bingyue 4096 jul 22 20:03 documents

以下面輸出為例,下劃線區域說明了檔案的許可權,包括可讀、可寫、可執行等等。

【-】【rwx】【rwx】【r-x】

1 bingyue bingyue 2324109 aug 5 23:35 redis-cli*

10個字元確定不同使用者能對檔案幹什麼:

第乙個字元代表檔案(-)、目錄(d),鏈結(l)

其餘字元每3個一組(rwx),讀(r)、寫(w)、執行(x),分別說明檔案所有者(user)、檔案所有者所在的使用者組其他使用者(group)、其他組使用者(others)對該檔案擁有的許可權。

第一組rwx:檔案所有者的許可權 是讀、寫和執行

第二組rwx:與檔案所有者同一組的使用者的許可權是讀、寫和執行

第三組r-x:不與檔案所有者同組的其他使用者的許可權是讀和執行,不能寫

另外有部分檔案也可以通過字尾名判斷,比如redhat中,凡是.rpm格式的都能在redhat中執行,debian中.deb格式的在debianlinux中能直接執行。

使用ls -f|grep "*"

ubuntu下也可以使用

ll | grep "*"

ll不是linux下乙個基本的命令,可以認為是ls -l的乙個別名。

ls -f可以把檔案按照型別歸類,並且在末尾加上/ *等符號標識。

-f和--classify選項可以對列表檢視檔案新增字尾。普通檔案不新增字尾,對可執行檔案新增*號,為目錄新增/號,為符號鏈結新增@號。

| 管道輸出,grep "*" 從中挑出以"*"結尾的行並輸出。

類似的,

使用ls -f|grep "/" 可以查詢目錄

使用ls -f|grep "@" 可以查詢軟連線

另外,使用ls -color 可以標識出可執行檔案:

例項輸出:

linux 執行可執行檔案

1 首先,需要了解一下a.out這個目標檔案。a.out在linux下是elf executable linkable format 檔案格式,該目標檔案由乙個檔案頭 段 資料段 已初始化 從定位資訊區 符號表及符號名字字串構成,如下左圖所示,經過鏈結後生成執行檔案如下右圖所示,需要說明的是1 bs...

Linux shell 查詢可執行檔案

前言 當你從命令中執行乙個程式的時候,linux系統會搜尋一系列目錄查詢可執行檔案。x 比較是判斷特定的檔案是否有可執行許可權的乙個簡單方法。檢查檔案是否可以執行 當你在shell指令碼中執行大量的指令碼,它就會發揮作用。下面來執行乙個例子,檢查當前檔案是否存在,並可執行。bin bashif x ...

Linux下執行可執行檔案

我們通常會為計算機配置環境變數 path,echo path 檢視當前的環境變數包含的目錄。這些目錄下的可執行檔案就無需輸入完整路徑來執行,直接輸入命令就行,我們shell中常使用的一些linux命令,例如man,cat等的目錄都被包含在該path目錄中,所以直接在shell中輸入這些命令就可以。即...