在window下写好的程序配置到Linux上,要实现随意文件夹下的命令调用。

因为初学Linux,这里从文件传输等最主要的方法入手,记录配置的过程中遇到的各种问题。

连接远端server

这里使用putty这个工具,用SSH方法连上远端server

传输文件

使用FTP传输,这里用filezilla作为本地server,图形化界面,方便快捷

安装文件中引用的python包

wget url 命令联网下载安装包

wget http:/www.^&*&%%&

解压缩(详细可见blog:http://www.cnblogs.com/eoiioe/archive/2008/09/20/1294681.html )

在解压后的文件夹下安装:

python setup.py install

改动shebang

shebang:由#!开头的字符串,出如今文本文件的第一行。类UNIX操作系统的程序加载器会分析shebang后的内容,将这些内容作为解释命令,并调用该指令,并将载有shebang的文件路径作为该解释器的參数。

比方我们要执行Python程序,须要调用Python解释器,即:

python XXX.py

假设须要直接执行,在Python文件第一行键入例如以下shebang:

#!/usr/bin/python

shebang设为Python在Linux中的可运行程序路径。那么系统就会自己主动调用。

我们要找到Python的安装路径:

which Python

得到路径,写入程序shebang。

变为系统命令

如今的XXX.py还是要在当前文件夹下调用,我们希望在不论什么文件夹下都能够自由调用,也就是作为一个命令来使用。须要把文件放在系统搜索命令的路径中去。

首先,把后缀去掉:(变得更像个命令)

mv XXX.py XXX

因为XXX是在windows下编辑的,须要改动文本格式:

vi XXX
:set ff?

假设打印fileform = dos则须要改动,fileform = unix则不须要

改动命令:

:set ff=unix
:wq

改动权限为可运行:

chmod +x XXX

放置到系统命令目录下

这里附带简单的Linux的系统文件夹体系:

/ 一级根文件夹

/bin 包括二进制可运行文件,为系统最主要的命令,如ls等

/sbin 与/bin 类似,不同之处是其为root权限命令文件

/usr 二级文件夹,包括用户相关信息

/usr/bin 用户级二进制文件,如应用等,全部用户可用

/usr/sbin  同上,不同之处是其为root权限运用。

/usr/local/bin 三级文件夹,用户自己的可运行文件,系统无论理。

/usr/local/sbin  root权限用户程序。

详细可见wiki( http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard )

那么,我们把处理好的XXX文件放在/usr/local/bin/目录下就可以。

因为使用这个目录须要root权限,使用例如以下命令:

sudo cp XXX /usr/local/bin/

最后測试一下。

在随意目录下可输入:

XXX +參数

[Python]linux自己定义Python脚本命令的更多相关文章

  1. linux下安装python linux下一些常用的命令

    注意 ubuntukylin-14.04.2-desktop-amd64 自带python2.7.6 这个说的比较详细 http://wenku.baidu.com/link?url=gaeFcQrc ...

  2. linux重启服务的脚本命令

    最近做网站测试,每次测试完成都要重启服务,为此写了一个简单的shell脚本 linux服务重启shell脚本示例 2014年12月18日 linux服务重启脚本,如何实现linux服务的定时重启,可以 ...

  3. Linux 定时执行shell脚本命令之crontab

    crontab可以在指定的时间执行一个shell脚本以及执行一系列Linux命令 例如:服务器管理员定时备份数据库数据.日志等 详解: 常用命令: crontab –e //修改 crontab 文件 ...

  4. python - Linux C调用Python 函数

    1.Python脚本,名称为py_add.py def add(a=,b=): print('Function of python called!') print('a = ',a) print('b ...

  5. Linux中执行shell脚本命令的4种方法总结

    bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在 ...

  6. shell脚本命令 运行python文件&python命令行运行python代码

    单独的python文件运行的时候 报错: 在shell脚本中,运行shell脚本命令:在Python命令行中,运行Python代码.然而,“python hello.py”是一个脚本命令,不是pyth ...

  7. Python函数的定义、参数传入与函数的调用

    作为计算机代码的一种抽象方式,函数在Python中扮演了极为重要的角色.今天给大家介绍Python函数的定义.参数的传入以及调用方式.其中函数参数的传入方式为本节重点内容.Python函数的参数形式包 ...

  8. [译]如何定义python源文件的文件编码

    简介 这篇文章是为了介绍定义python源文件文件编码的方法.python解释器可以根据所指定的编码信息对当前文件进行解析.通常来说,这种方法可以提高解析器对Unicode编码的源文件的识别,并且支持 ...

  9. Linux下设置python脚本文件为服务

    (最简单的方式nohup python xxx.py) ------------------------------------------------------------------------ ...

随机推荐

  1. NOI2002 荒岛野人

    这题其实黑书上有,只是我脑残的没想起来…… 其实就是拓展欧几里得算法 我参看的题解:http://www.cnblogs.com/Rinyo/archive/2012/11/25/2788373.ht ...

  2. APIO2010特别行动队(单调队列、斜率优化)

    其实这题一看知道应该是DP,再一看数据范围肯定就是单调队列了. 不过我还不太懂神马单调队列.斜率优化…… 附上天牛的题解:http://www.cnblogs.com/neverforget/arch ...

  3. Azure HDInsight与Hadoop周边系统集成

     Sunwei 9 Dec 2014 1:54 AM 传统的Hadoop系统提供给用户2个非常优秀的框架,MR计算框架和HDFS存储框架,尽管MR已经显得有些老迈而缓慢,但是HDFS还是很多应用系统的 ...

  4. JDK版本1.6和6.0到底指什么

    Both version numbers (1.6.0 and 6) are used to identify this release of the Java Platform. Version 6 ...

  5. Java [leetcode 12] Integer to Roman

    题目描述: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range fr ...

  6. 【转】Eclipse配置Struts2问题:ClassNotFoundException: org...dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

    我的解决方案 一开始,我是依照某本教材,配置了User Libraries(名为struts-2.2.3, 可供多个项目多次使用), 然后直接把struts-2.2.3引入过来(这个包不会真正的放在项 ...

  7. (二)学习MVC之实现用户注册功能

    学习地址:http://www.cnblogs.com/mzwhj/archive/2012/10/22/2720089.html 本文和学习地址不一样的地方是我自己添加了一些简单的注释和理解. 1. ...

  8. HDU 3711 Binary Number

    Binary Number Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tot ...

  9. How to Convert a Date Time to “X minutes ago” in C# z

    http://www.codeproject.com/Articles/770323/How-to-Convert-a-Date-Time-to-X-minutes-ago-in-Csh In one ...

  10. TCP/IP模型的简单解释

    TCP/IP模型是互联网的基础.想要理解互联网,就必须理解这个模型.但是,它不好懂,我就从来没有搞懂过. 前几天,BetterExplained上有一篇文章,很通俗地解释了这个模型.我读后有一种恍然大 ...