Chcę wiedzieć, czy mogę używać różnych rozszerzeń plików wykonywalnych systemu Linux zamiast używać rozszerzenia „.sh” lub „.o”.
linux
command-line
Gowthaman15
źródło
źródło
which bash
. ropucha: / home / hennes> ls -l ./bash -rwx ------ 1 użytkowników hennes 745832 21 października 14:07 ./bash ropucha: / home / hennes> mv bash bash.some_extension ropucha: / home / hennes> ./ bash.some </pre> Szczęśliwie uruchamia plik bash mimo zmiany nazwyW przeciwieństwie do Windows, Linux (i inne systemy uniksopodobne) używa Magic Numbers do rozróżniania różnych typów plików, w związku z czym nie dba o rozszerzenie pliku.
Magiczna liczba (czasami złożyć podpis ) to wzór, który jest porównywany z bazą danych w celu wypracowania typ pliku.
Możesz użyć
file
polecenia, aby określić typ pliku:lub:
Jeśli zmienisz nazwę pliku i zmienisz jego rozszerzenie, nie wyłapie go:
źródło
Tak, każde rozszerzenie lub żadne nie będzie działać, pod warunkiem, że jest to plik tekstowy i oznaczony jako plik wykonywalny.
Jeśli użyjesz
#!
plus wymaganego interpretera jako pierwszego wiersza, zastąpi to domyślny interpreter skryptów.źródło
.o
.).