直接运行
回忆上次内容
我们把两个程序整合起来了
- 可以持续输出当前时间
- 每秒都更新
但是我想在 shell 里面
- 只输入文件名(./sleep.py)并回车
- 就能不断输出时间
- 可能吗?
import time
while True:
print(time.asctime())
time.sleep(1)
尝试执行
- 第 1 句 根本没有找到 sleep.py
第 2 句 根据相对路径路径
./
找到了 sleep.py- 其中 . 代表的是当前目录
- 在/home/shiyanlou/找到sleep.py
- 但是没有权限
- 要想办法观察到文件的可执行权限
观察权限
- ls 是 列出(list)当前文件夹下的所有文件
-lh是参数
l(list)
- 代表着使用的是一行行列表的方式
这样可以查出文件详细信息
- 大小
- 读写权限
h(uman readable)
- 指的是文件大小使用k、m这种
- 更人类可读(human readable)的方式
- 而不是采用字节的方式
#查询sleep.py
ls -lh sleep.py
#修改权限
chmod u+x sleep.py
#再次查询sleep.py
ls -lh sleep.py
sleep.py
- 指的是我们就是要查询的文件
- 就是sleep.py
- 查询之后什么结果呢?
ls结果
chmod u+x sleep.py
chmod
ch
ange 改变mod
e 状态位 mode bits
u+x
u
ser 当前用户组+x
增加 ex
cute 的权限
sleep.py
- 被改变的文件名称
注意下图红圈位置的变化
从 - 到了 x
-
就是没有 ex
cute 的权限x
就是有了 ex
cute 的权限
- 这回能执行了么?
执行
和刚才不一样了
- 确实能执行了!哈哈!
不过看起来不是按照python程序来执行的
- 而是按照执行zsh批处理命令的方式执行的
如何直接运行python程序呢?
- 先搜索吧
进行搜索
提示是这样的
总共分 3 步:
第 1 步 确认
python3
文件位置python3
好像在/usr/bin/
python3
就是sleep.py
文件正确的打开方式
第 2 步 编辑文件
- 设置文件自动用
/usr/bin/python3
打开
- 设置文件自动用
- 第 3 步 运行
py文件
- 我们先确认
python3
的位置
python3的位置
如果想要
sleep.py
能自动执行必须要明确这个py文件的打开方式
- 用
python3
来打开执行
- 用
python3 在哪?
which python3
?- 就是
/usr/bin
下的python3
- 注意
usr
不是user
下面要编辑
sleep.py
- 在
sleep.py
第一行设置 - 自动打开方式为
/usr/bin/python3
- 在
添加文件头
- 最上面的一句以
#
开头
#!/usr/bin/python3
import time
while True:
print(time.asctime())
time.sleep(1)
#
的意思是注释
- 这句不用执行
!/usr/bin/python3
- 这个设置了当前文件(sleep.py)的执行方式
- 准备运行
:wq
保存并退出vim
保存并运行
依然使用
./sleep.py
- . 指的是当前路径
- /指的是当前路径下
执行成功!!!
跳出循环的快捷键仍然是
- ctrl+c
总结
这次总算可以把
sleep.py
直接执行了sleep.py文件头部要声明好打开方式
#!/usr/bin/python3
- 用的是
python3
解释sleep.py
修改
sleep.py
文件 的执行权限给当前用户增加 执行
execute
权限- chmod u+x sleep.py
运行
./sleep.py
成功- 但我不想总带着当前路径
./
- 但我不想总带着当前路径
我想要直接
sleep.py
就自动运行- 这可能么?
- 我们下次再说!
- 蓝桥->https://www.lanqiao.cn/course...
- github->https://github.com/overmind19...
- gitee->https://gitee.com/overmind198...
- 视频->https://www.bilibili.com/vide... 作者:oeasy