什么是应用程序扩展? (又名.exe,.app等)
我是Ubuntu的新手。 出于开发原因,应用程序扩展是什么? 我知道Windows主要是.exe,Mac是.dmg或.app。 Linux有独一无二的吗?
一般来说,在Linux中,在Ubuntu中, 应用程序没有扩展 。 一些例子: nautilus
, firefox
, gnome-terminal
等。
应用程序通常位于/usr/local/sbin
, /usr/local/bin
, /usr/sbin
, /usr/bin
, /sbin
, /bin
, /usr/games
, /usr/local/games
等目录中。
当且仅当该文件是可执行文件时 ,您才能确定文件是否可以是应用程序。 使用ls -l filename
或stat filename
或file filename
来确定这一点。 如果该filename
具有以下权限: -rwxr-xr-x
,那么该文件肯定是可执行文件。
(图片来源: http : //www.csit.parkland.edu/~smauney/csc128/fig_permissions.jpg )
Extensions
名是以句点开头的文件名后缀。 通常,它们长两到三个字母。 Linux
可以读取其他平台使用的许多文件扩展名。 在Linux中,您通常手动编译和运行文件。 该文件可以是python脚本或debian软件包,甚至可以使用Wine
执行.exe
这是一些文件扩展名列表
.bz2
– 使用bzip2压缩实用程序压缩
.c
– C语言源代码
.conf
和cfg
– 配置文件
.d
– 包含脚本或配置文件的目录
.deb
– Debian软件包
.gz
– 使用gzip实用程序压缩
.java
– Java源代码
.rc
– 运行命令配置数据
.rpm
– Red Hat Package Manager软件包
.so
– 动态库中的共享对象
.tar
– 使用tar实用程序创建的存档
.tex
– 以TeX或LaTeX格式语言格式化的文本
.sh
– Shell脚本
.pl
– Perl脚本
在Ubuntu中,对文件的扩展名没有限制。 文件结尾只描述文件被“执行”的内容或方式。
例如, shell script
以.sh
结尾, installer
文件以.deb
结尾。 .gz用于使用gzip实用程序压缩的文件。 .tar
– 使用tar files
创建的存档。 .bz2
用于使用bzip2 compression utility
压缩的文件
至于与Windows的exe的比较,在Linux中几乎所有文件都可以通过适当的权限执行或可执行
检查文件(这是用于文件而不是目录,因为我删除“ – ”指定它)是可执行类型
ls -al filename | tr -s ' ' | cut -f1 -d' ' | cut -f2 -d-
您将找到9个元素的列表,前三个元素指定文件所有者的权限,下一个指定所有者所属的组的权限,其他三个元素的权限。 其中的“x”(可执行位)表示可执行权限。
这与Windows通过扩展处理可执行文件的方式背道而驰, In * nix任何东西都可以执行。
在Linux上你不直接获得可执行文件。 相反,您将获得包含可执行文件的软件包以及有关软件包和一些配置脚本的一些信息,以编译针对您的硬件优化的软件包,或者仅显示应预安装预编译二进制文件的位置以及所需的依赖项。
二进制文件没有任何扩展名它只是名字。 但包本身有一个扩展名。 debian,ubuntu和其他ubuntu衍生产品使用扩展名.deb
发行版,如fedora,centos,RHEL和opensuse使用.rpm
格式。
.deb
和.rpm
是主要的包格式。
还有.tar.gz
。 在谈论软件包时.tar.gz
通常是一个源包(包含源代码)。