Csv

可執行公用文件(*.pdf等)

  • May 30, 2020

我執行時有許多文件顯示為綠色ls。我知道這些是執行檔,並且我知道可以使用chmod. 但它們是.csv.pdf文件。我不明白如何“執行”逗號分隔的文本文件或 PDF。所以:

  • 它們如何實際上是“可執行的”?
  • 我將如何執行它們?
  • 當我這樣做時會發生什麼?

這只是權限問題。如果文件具有執行權限,則僅表示允許使用者執行它。他們是否會成功是另一回事。為了執行文件,執行它的使用者必須有權這樣做,並且該文件必須是有效的執行檔。顯示的權限ls僅影響第一部分權限,與其餘部分無關。

例如:

$ cat file.csv
a,silly,file
$ chmod a+x file.csv
$ ls -l file.csv
-rwxr-xr-x 1 terdon terdon 13 May 29 15:22 file.csv

該文件現在具有執行權限(參見x權限字元串中的 3 -rwxr-xr-x)。但是如果我嘗試執行它,我會得到一個錯誤:

$ ./file.csv 
./file.csv: line 1: a,silly,file: command not found

那是因為 shell 試圖將文件作為 shell 腳本執行,並且其中沒有有效的 shell 命令,所以它失敗了。

引用自:https://unix.stackexchange.com/questions/589750