Python编译器无法正常启动shello world!

lxf2023-04-17 18:50:01

在linux中,可执行程序是是指该文件能够被运作,文档有“x”管理权限;可执行程序能够是一个编码文档(脚本文件),还可以是一个二进制文件。一个文档运作主要有两种方式:1、用编译器直接到运行文件;2、运用“./”运行文件,词法“./ 文件夹名称”。

Python编译器无法正常启动shello world!

实例教程作业环境:linux7.3系统软件、Dell G3计算机。

什么叫可执行程序

可执行程序是指这一文档能够被运作.这一文档能够是一个编码文档,还可以是一个二进制文件

Linux文件目录里只有文件或文件目录(一切皆文档).

在Linux中,运作一个文档的形式分为两种: bash test.sh或是./test.sh.

这一test.sh便被称为可执行程序.

可执行程序分两种: 一种是最常见的二进制文件,一种是脚本文件.前面一种如常见的ls,mkdir指令等等都是二进制的文档,后面一种常见的就是shell脚本,或是Python脚本制作这种取决于编译器实行文件.

根据指令file可以看一下一个文件的类型,如二进制文件显示的是:

Python编译器无法正常启动shello world!

而脚本文件则导出:
Python编译器无法正常启动shello world!

可执行程序的差别

在后面的2个脚本文件中可以看出,导出内容就是不同类型的.一个被鉴别为了能shell script一个却认为是普通的text文档.可是2个文档全是可操作的:

Python编译器无法正常启动shello world!

如下图:2个文档运作之后都会导出hello world!.

这里采用了两种不同运行模式,第一种立即特定一个可执行程序./hello.sh,如果采用这种方法运作得话,脚本制作必须符合下列2个规定:

  • 文档有"x"管理权限

  • 文档要不是二进制种类文档,那在开始第一行务必特定了她的编译器

第一个就是指的是Linux文件目录里的"rwx" r为写保护,w意味着应写,而"x"就意味着这一文档可操作.

这儿分辨这一文档可操作和"家鸭种类"很类似,即只要一个动物会嘎嘎叫我就以为家鸭.这时就算走来一条狗嘎嘎叫了两声,那样还认为他是一个家鸭.
计算以往.无论文档类型是什么,只需这一文档具有"X"管理权限,那样系统软件认为他是一个可执行程序.

实例: 新创建一个text种类文档,内容是hello world!,随后加上"x"执行权限.

Python编译器无法正常启动shello world!

能够看见,查看文件种类时,他与上边Python脚本制作打印内容一致,觉得这是个txt文档.

接着为他加了执行权限,随后’./'运作,提醒"未找到命令".

这里,系统软件把他当做了一个shell脚本去行动,先后从这当中载入具体内容,随后交到"/bin/bash"编译器去行动.

下面如出一辙,将Python脚本制作也变成一个系统软件承认的可执行程序

Python编译器无法正常启动shello world!

这时,你还能用./去运作他了.

./ 表示什么?

一个文档运作主要有两种方式,第一种是用自己的编译器直接到运作它,如:

Python编译器无法正常启动shello world!

每一个编译器只有运作相匹配自身语法的脚本制作,假如使用了其他编译器那样往往会抛出去不正确,如Python编译器无法正常启动shell脚本.

下面说./,点在Linux系统中指出"文件列表",而"/“是个一般的路线分节符,组合在一起无非是个绝对路径,如:

Python编译器无法正常启动shello world!

因此在实施一个系统软件承认的可执行程序时,./不是最关键的那一部分,这一文档自身才算是.比如说我能用相对路径运作一个可执行程序:

Python编译器无法正常启动shello world!

如果你连前面的/root/file/都除掉,随后删除结尾的.py,其实就是只键入"hello”,打印出一个hello world!,那么这样的文档好像和Linux系统中的一个指令没什么差别了.

下面把他变为和ls这类指令同样的一个"指令".

Python编译器无法正常启动shello world!

  • 先将这一可执行程序重新命名了

  • 下面将他放在了 /usr/bin 目录下

  • 立即键入hello,打印图片了hello world!

这也从侧面表明,只需你将一个脚本制作 变为 系统软件认可的可执行程序,而且放进/usr/bin 目录下,他便和常见的指令没什么区别.

怎么是/usr/bin?

其实在Linux系统含有个自变量称为PATH,这一自变量中是一组途径的结合,如果你键入一个指令时(如ls),他就在变量的中科数控给的文件目录里,探寻是否存在相匹配名称文档,随后运作它.

因此,如果我可以把文件列表也加入了到这些自变量中,那样文件列表中的文档也就能直接被设备运行而无需特定途径.

Python编译器无法正常启动shello world!

如果一个文档并没有"x"属行,那样即使是丢到/usr/bin目录下也无法完成.

一般几乎不会立即申明PATH自变量,对于这个自变量实际操作的时候也会把它载入到~/.bashrc文件目录或是/etc/profile这俩系统变量的文档中,那样,在会话联接上去以后就会自启动里面的东西,把这个文件目录参与到PATH自变量中.

汇总

如果一个脚本文件拥有"x"管理权限与此同时还在第一行特定了相对应的编译器,或者一个二进制文件有"X"管理权限,那么这样的文档也就成了系统软件承认的 可执行程序.此刻运作它不但可以特定相对路径或是绝对路径,也能通过它的编译器去行动他,更也可以将它所属的文件目录参与到"PATH"这一自变量中.

如果一个脚本文件不符上边的需求,那么你只能依靠它的编译器去行动他,如"bash hello.sh"或是"python hello.py"这种方法.

相关信息:《Linux视频教程》

以上就是关于linux 实行文件是什么的具体内容,大量欢迎关注AdminJS其他类似文章!