【linux】终端直接执行py文件,不需要python命令
2014-01-07 18:20
399 查看
先将终端所在路径切换到python脚本文件的目录下 然后给脚本文件运行权限,一般755就OK,如果完全是自己的私人电脑,也不做服务器什么的,给777的权限问题也不大(具体权限含义参考chmod指令的介绍,就不赘述了): chmod 755 ./*.py 然后执行。 如果在脚本内容的开头已经给出了类似于如下的注释: #!/usr/bin/env python 那就可以直接在终端里运行: ./*.py 如果没有这个注释 就在终端中执行: python ./*.py 如果是有图形界面的脚本 在前面的chmod之后,直接双击(KDE桌面是单击)文件来执行即可
追问
如果把文件1.py放到tmp文件夹中,如何运行?命令能写具体一点吗?脚本内容的开头有:#!/usr/bin/env python
回答
那就直接运行(假设你的文件名是A.py): /tmp/A.py 或先切换目录,再运行: cd /tmp ./A.py 如果该文件需要修改跟用户权限下的一些文件或目录 就将自身提升为跟用户权限: sudo /tmp/A.py 或直接将自身提升为跟用户再运行: su root /tmp/A.py 另:Ubuntu等发行版默认不支持su root的操作,只能用sudo
追问
把A.py文件放入tmp文件夹中 执行sudo /tmp/A.py 出现如下提示sudo:/tmp/A.py:command not found 执行/tmp/A.py 出现如下提示:-bash:/tmp/A.py:permission denied 使用cd /tmp 然后执行出现提示和上面一样,不知道是怎么回事,是我哪里弄错了?
回答
这样的话,我知道的一般有两种情况: 1. 文件开头没有执行注释:#!/usr/bin/env python 但你之前说有这一行 2. 就是没用chmod 上面说了,最开始要给脚本设置权限 如果电脑是你一个人用,那就chmod 777 /tmp/A.py就好了 如果还有别人用,就给个chmod 755 /tmp/A.py好了 这个chmod和后面提到的哪个sudo两个都是关于权限的命令,但是是不同的,互相也没什么关系 简单点说:chmod的权限是决定谁有权去碰这个脚本(读、写、执行),而sudo的权限决定的是这个脚本有权去碰谁。 如果以上两个都试过了,还是不行,我就无能为力了 确认一下是否正确安装了python解释器吧~~ 然后尝试着直接调用python去执行吧: python /tmp/A.py 类似这样的命令。当然必要的时候chmod和sudo也是用的。
提问者评价
还是不行,不知道怎么回事。抽空学一下基本的linux,谢谢先
相关文章推荐
- Linux_终端直接执行py文件,不需要python命令
- 终端直接执行py文件,不需要python命令
- 浅谈终端直接执行py文件,不需要python命令
- 终端直接执行py文件,不需要python命令
- 直接运行可执行文件linux终端一闪而过
- Python学习(二) linux终端下运行.py文件的方法
- linux使用rz命令在终端中直接上传文件
- Linux直接执行.py文件
- python paramiko 向linux执行命令和发送接收文件
- python脚本初探---新手如何直接编写一个hello world模块即可执行的.py文件
- Python远程登录Linux操作系统,执行命令、创建目录、上传及下载文件
- linux下远程服务器批量执行命令及SFTP上传文件 -- python实现
- Python远程登录Linux操作系统,执行命令、创建目录、上传及下载文件
- python写的linux系统批量执行命令和文件获取和推送功能(基于RSAkey)
- Linux直接./xx.py执行python脚本时报错
- 在linux终端(terminal)中执行python文件
- OSX系统添加定时任务 Linux crontab命令 定时执行py 文件 任务
- 在Linux中用source,dot(.)和直接用脚本文件名执行shell脚本的区别
- Linux下终端解压文件命令总结
- python中的commands模块,执行出错:'{' 不是内部或外部命令,也不是可运行的程序 或批处理文件。