show | version | enable_checker |
---|---|---|
step |
1.0 |
true |
- 我们把两个程序整合起来了
- 可以持续输出当前时间
- 每秒都更新
- 但是我想在 shell 里面
- 只输入文件名(./sleep.py)
- 就不断输出时间
- 可能吗?🤔
import time
while True:
print(time.asctime())
time.sleep(1)
- 第 1 句 根本没有找到 sleep.py
- 第 2 句 根据路径
./
找到了sleep.py
- 但是没有权限
#查询sleep.py
ls -lh sleep.py
#修改权限
sudo chmod u+x sleep.py
#再次查询sleep.py
ls -lh sleep.py
- ls 是 列出(list)当前文件夹下的所有文件
- -lh是参数
- l(list)
- 代表着使用的是一行行列表的方式
- 这样可以查出文件详细信息
- 大小
- 读写权限
- h(uman readable)
- 指的是文件大小使用k、m这种
- 更人类可读(human readable)的方式
- 而不是采用字节的方式
- l(list)
- sleep.py
- 指的是我们就是要查询的文件
- 就是sleep.py
- 查询之后什么结果呢?
- 注意下图红圈位置的变化
- 从 - 到了 x
-
就是没有 ex
cute 的权限x
就是有了 ex
cute 的权限
- 从 - 到了 x
-
chmod u+x sleep.py
- chmod
ch
ange 改变mod
e 状态位 mode bits
- u+x
u
ser 当前用户组+x
增加 ex
cute 的权限
- sleep.py
- 被改变的文件名称
- chmod
-
这能执行了么?
- 和刚才不一样了
- 确实能执行了
- 不过看起来不是按照python程序来执行的
- 而是按照执行shell命令的方式执行的
- 如何直接运行python程序呢?
- 先搜索吧
- 总共分 3 步:
- 第 1 步 确认python3文件位置
- python3 好像在 /usr/bin/
- 第 2 步 编辑文件
- 第 3 步 运行python文件
- 第 1 步 确认python3文件位置
- 我们再确认python3的位置
- 如果想要sleep.py能自动执行
- 必须要明确这个文件的执行方式
- 用
python3
来执行
- 用
- python3 在哪?
which python3
?- 就是
/usr/bin
下的python3
- 注意
usr
不是user
- 必须要明确这个文件的执行方式
- 最上面的一句以
#
开头
#!/usr/bin/python3
import time
while True:
print("localtime:"+time.asctime())
time.sleep(1)
#
的意思是注释
- 这句不用执行
- !/usr/bin/python3
- 这个设置了当前文件(sleep.py)的执行方式
:wq
保存并退出vim
- ./sleep.py
- . 指的是当前路径
- /指的是当前路径下
- 跳出循环的快捷键是
- ctrl+c
- 这次总算可以把 python 文件 直接执行了
- sleep.py文件头部要声明用的哪个解释器
#!/usr/bin/python3
- 用的是
python3
解释python代码
- sleep.py文件头部要声明用的哪个解释器
- 修改
py
文件 的权限- 给当前用户增加 执行
execute
权限- chmod u+x sleep.py
- 给当前用户增加 执行
- 运行
./sleep.py
成功- 但我不想总带着当前路径
./
- 但我不想总带着当前路径
- 但我想要直接
sleep.py
就运行- 这可能么?🤪
- 我们下次再说!👋