[oeasy]python0028_直接运行_修改py文件执行权限_设置py文件打开方式
直接运行
回忆上次内容
我们把两个程序整合起来了
可以持续输出当前时间
每秒都更新

但是我想在 shell 里面
只输入文件名(./sleep.py)并回车
就能不断输出时间
可能吗?🤔
import timewhile True: print(time.asctime()) time.sleep(1)
尝试执行
第 1 句 根本没有找到 sleep.py

第 2 句 根据相对路径路径
./
找到了 sleep.py其中 . 代表的是当前目录
在/home/shiyanlou/找到sleep.py
但是没有权限
要想办法观察到文件的可执行权限
观察权限
ls 是 列出(list)当前文件夹下的所有文件
-lh是参数
指的是文件大小使用k、m这种
更人类可读(human readable)的方式
而不是采用字节的方式
代表着使用的是一行行列表的方式
这样可以查出文件详细信息
大小
读写权限
l(list)
h(uman readable)
#查询sleep.pyls -lh sleep.py#修改权限chmod u+x sleep.py#再次查询sleep.pyls -lh sleep.py
sleep.py
指的是我们就是要查询的文件
就是sleep.py
查询之后什么结果呢?
ls结果
chmod u+x sleep.py
被改变的文件名称
u
ser 当前用户组+x
增加 ex
cute 的权限ch
ange 改变mod
e 状态位 mode bitschmod
u+x
sleep.py

注意下图红圈位置的变化
-
就是没有 ex
cute 的权限x
就是有了 ex
cute 的权限从 - 到了 x
这回能执行了么?
执行
和刚才不一样了
确实能执行了!哈哈!

不过看起来不是按照python程序来执行的
而是按照执行zsh批处理命令的方式执行的
如何直接运行python程序呢?
先搜索吧
进行搜索

提示是这样的

总共分 3 步:
设置文件自动用
/usr/bin/python3
打开python3
好像在/usr/bin/
python3
就是sleep.py
文件正确的打开方式第 1 步 确认
python3
文件位置第 2 步 编辑文件
第 3 步 运行
py文件
我们先确认
python3
的位置
python3的位置
如果想要
sleep.py
能自动执行which python3
?就是
/usr/bin
下的python3
注意
usr
不是user
用
python3
来打开执行必须要明确这个py文件的打开方式
python3 在哪?

下面要编辑
sleep.py
在
sleep.py
第一行设置自动打开方式为
/usr/bin/python3
添加文件头
最上面的一句以
#
开头
#!/usr/bin/python3import timewhile True: print(time.asctime()) time.sleep(1)
#
的意思是注释
这个设置了当前文件(sleep.py)的执行方式
这句不用执行
!/usr/bin/python3

准备运行
:wq
保存并退出vim
保存并运行
依然使用
./sleep.py
. 指的是当前路径
/指的是当前路径下

执行成功!!!
🤪
跳出循环的快捷键仍然是
ctrl+c
总结
这次总算可以把
sleep.py
直接执行了#!/usr/bin/python3
用的是
python3
解释sleep.py
sleep.py文件头部要声明好打开方式
修改
sleep.py
文件 的执行权限chmod u+x sleep.py
给当前用户增加 执行
execute
权限运行
./sleep.py
成功但我不想总带着当前路径
./
我想要直接
sleep.py
就自动运行这可能么?🤪
我们下次再说!👋
蓝桥->https://www.lanqiao.cn/courses/3584
github->https://github.com/overmind1980/oeasy-python-tutorial
gitee->https://gitee.com/overmind1980/oeasypython
视频->https://www.bilibili.com/video/BV1CU4y1Z7gQ 作者:oeasy