如何在服务器上运行python文件

news2024/12/26 11:14:29

目录

前置准备

详细步骤

一,在服务器安装Anaconda

下载安装包

上传文件到服务器

安装环境

二,创建虚拟环境

创建环境

三,测试执行python文件

执行python文件

查看进程状态

总结


前置准备

        如何在个人服务器上运行python文件,首先我们需要准备的一些东西:

  • 有自己的云服务器,可以在腾讯云或者阿里云等商户租借服务器
  • 能够使用xshell等ssh连接工具软件连接到自己的服务器
  • 下载Linux版本的Anaconda用来运行python文件的安装环境

详细步骤

一,在服务器安装Anaconda

下载安装包

        首先我们先下载Anaconda安装包,下载地址https://repo.anaconda.com/archive/

        第二,找到我们要下载的安装包,注意是Linux版本,可以根据自己需求安装所需版本

        下载可能有点慢,建议使用迅雷下载。

上传文件到服务器

        下载完安装包后打开Xshell,连接自己的服务器。

        可以跳转到指定文件夹下安装(cd /test),也可以新建文件夹用来安装(mkdir test)

        跳转到安装文件夹下后输入命令rz,找到安装包上传文件。

        上传成功后输入命令ls,可以看到当前文件是白色的,没有执行权限,输入命令修改权限

chmod u+x Anaconda3-2022.05-Linux-x86_64.sh

        输入ls查看,安装包显示绿色就ok。

安装环境

        上传完成后就可以执行安装命令

sh Anaconda3-2022.05-Linux-x86_64.sh

        输入python进行测试是否安装完成。出现如下即为成功安装。

        然后退出python,输入exit();

        接下来我们需进行以下环境配置

vim ~/.bashrc

        输入O;

        在配置文件空白处添加如下配置,按“i”进入编辑模式:

#为了避免与其他服务器用户产生命令冲突,使用自己的英文名+Python替代python 
alias namePython='/root/anaconda3/bin/python'   
#这里写anaconda的安装路径
export PATH="/root/anaconda3/bin:$PATH"

        完成后按“Esc”,退出编辑模式;紧接着按“:”,输入“wq!”保存退出。

        激活文件

source ~/.bashrc

        再次验证

conda

        conda命令可以使用,这样我们就安装完成了。

二,创建虚拟环境

创建环境
conda create -n py39 python=3.9.12

        创建完成后查看当前存在哪些虚拟环境

conda env list

        激活虚拟环境,这里是你自己的环境名字

source activate your_env_name

        查看安装了哪些包。自带的包较少,有些程序需要的包需要自己额外导入。

conda list
conda install package_name(包名)

        一些其他命令:

conda update conda:               检查更新当前conda
conda search XXX                   搜索包,查看可安装版本
conda remove -n py36 --all         删除环境
conda deactivate                   退出虚拟环境,conda4之前版本:source deactivate
 
pip install --upgrade <包的名字>     更新包
pip install python_igraph          (import igraph包)

三,测试执行python文件

执行python文件
  • 我们在当前环境下输入rz命令上传.py文件。
  • 上传成功后输入执行python文件命令:
nohup python3 -u main.py >> my.log 2>&1 &
查看进程状态
  • 在使用nohup启动python时,会生成一个进程ID
  • 可以使用 jobs -l 来查看当前终端的全部进程(该命令只适用于该终端窗口,若再开一个窗口需适用ps命令查看全局进程,如下命令)

        Running说明程序正在成功运行。

  •  还可以对改python程序进行暂停、恢复、杀死等操作
    jobs -l 		     (当前终端查看全部进程)
    ps -aux|grep 进程号  (全局各个新终端查看指定进程)
    ps -ef 		        (全局全部进程)
    kill -STOP 	进程号	(命令可以直接暂停一个后台任务)
    kill -CONT 进程号	(命令可以直接恢复一个后台任务)
    kill -9 进程号 	    (杀死进程)

总结

        做完这些我们已经能够在服务器上成功运行python文件,要注意的是脚本文件不依赖于图形界面,并且根据你的服务器环境和脚本需要的库,可能会需要安装额外的依赖项。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1274145.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

熟悉SVN基本操作-(SVN相关介绍使用以及冲突解决)

一、SVN相关介绍 1、SVN是什么? 代码版本管理工具它能记住你每次的修改查看所有的修改记录恢复到任何历史版本恢复已经删除的文件 2、SVN跟Git比&#xff0c;有什么优势 使用简单&#xff0c;上手快目录级权限控制&#xff0c;企业安全必备子目录checkout&#xff0c;减少…

vivado实现分析与收敛技巧2-创建智能设计运行

智能设计运行 (IDR) 是基于标准实现运行创建的。在“ Design Runs ” &#xff08; 设计运行 &#xff09; 窗口中 &#xff0c; 右键单击实现运行 &#xff0c; 然后选择“Close Timing using Intelligent Design Runs ” &#xff08; 使用智能设计运行收敛时序 &#xff09…

深度学习手势检测与识别算法 - opencv python 计算机竞赛

文章目录 0 前言1 实现效果2 技术原理2.1 手部检测2.1.1 基于肤色空间的手势检测方法2.1.2 基于运动的手势检测方法2.1.3 基于边缘的手势检测方法2.1.4 基于模板的手势检测方法2.1.5 基于机器学习的手势检测方法 3 手部识别3.1 SSD网络3.2 数据集3.3 最终改进的网络结构 4 最后…

C++调用python: VS2017 + Anaconda + pypi第三方库

步骤一&#xff1a;在Anaconda中创建虚拟环境 这一点对大家来说应该很简单&#xff0c;简单介绍一下&#xff0c;不做过多解释。值得注意的是&#xff0c;要用conda命令创建环境&#xff0c;用pip install配置环境。 conda create -n c_python_env python3.9 # 用conda创建pyt…

Java 的第二十章:多线程

创建线程 继承Thread 类 Thread 类时 java.lang 包中的一个类&#xff0c;从类中实例化的对象代表线程&#xff0c;程序员启动一个新线程需要建立 Thread 实例。 Thread 对象需要一个任务来执行&#xff0c;任务是指线程在启动时执行的工作&#xff0c;start() 方法启动线程&am…

Docker 使用心得

创建一个docker 镜像&#xff0c;相关运行代码&#xff0c;放在docker镜像文件同级&#xff0c; pm2 不能与 docker一起使用&#xff08;&#xff09; # node 服务docker FROM node:10.16.3LABEL author"sj"RUN mkdir -p /var/nodeCOPY ./node /var/nodeWORKDIR /va…

Vue实现图片预览(Viewer.js)

摘要&#xff1a; vue项目开发中遇到一个图片预览的需求&#xff0c;可以切换下一张&#xff0c;就是花里胡哨的&#xff0c;所以找viewer.js的插件 npm install v-viewer -S在项目main.js中加入&#xff1a; Viewer.setDefaults用于更改默认配置&#xff0c;比如我不想要显示…

基于AT89C51单片机的倒数计时器设计

1&#xff0e;设计任务 利用AT89C51单片机为核心控制元件,设计一个简易的数字电压表&#xff0c;设计的系统实用性强、操作简单&#xff0c;实现了智能化、数字化。 本设计采用单片机为主控芯片&#xff0c;结合周边电路组成LED彩灯的闪烁控制系统器&#xff0c;用来控制红色…

Paraformer 语音识别原理

Paraformer(Parallel Transformer)非自回归端到端语音系统需要解决两个问题&#xff1a; 准确预测输出序列长度&#xff0c;送入预测语音信号判断包含多少文字。 如何从encoder 的输出中提取隐层表征&#xff0c;作为decoder的输入。 采用一个预测器&#xff08;Predictor&…

【Node.js】笔记整理 5 - Express框架

写在最前&#xff1a;跟着视频学习只是为了在新手期快速入门。想要学习全面、进阶的知识&#xff0c;需要格外注重实战和官方技术文档&#xff0c;文档建议作为手册使用 系列文章 【Node.js】笔记整理 1 - 基础知识【Node.js】笔记整理 2 - 常用模块【Node.js】笔记整理 3 - n…

IDEA maven无法下载源代码处理

1、使用idea内置maven 在idea中新增一个mvn运行项,截图如下: 输入命令: dependency:resolve -Dclassifiersources 2、如果外部maven&#xff0c;不使用idea内部maven 在工程目录下命令行执行命令: mvn dependency:resolve -Dclassifiersources

HX3002入耳检测光感驱动调试-感0x08 寄存器溢出,不变化错误问题解决方法

是否需要申请加入数字音频系统研究开发交流答疑群(课题组)?可加我微信hezkz17, 本群提供音频技术答疑服务,+群赠送语音信号处理降噪算法,蓝牙耳机音频,DSP音频项目核心开发资料, 读取光感0x08 寄存器溢出,不变化错误问题?原因 原因:没有读取到0x08数据,没有读0x…

2的幂运算

2的幂 描述 : 给你一个整数 n&#xff0c;请你判断该整数是否是 2 的幂次方。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 如果存在一个整数 x 使得 n 2x &#xff0c;则认为 n 是 2 的幂次方。 题目 : LeetCode 231.2的幂 : 231. 2 的幂 分…

vue3实现element table缓存滚动条

背景 对于后台管理系统&#xff0c;数据的展示形式大多都是通过表格&#xff0c;常常会出现的一种场景&#xff0c;从表格跳到二级页面&#xff0c;再返回上一页时&#xff0c;需要缓存当前的页码和滚动条的位置&#xff0c;以为使用keep-alive就能实现这两种诉求&#xff0c;…

centos服务器安装docker和Rabbitmq

centos服务器 一 centos安装docker1 安装docker所需要的依赖包2配置yum源3查看仓库中所有的docker版本4安装docker5 设置docker为开机自启6验证docker是否安装成功 二 使用docker安装RabbitMQ拉取RabbitMQ镜像创建并运行容器 一 centos安装docker 1 安装docker所需要的依赖包 …

RocketMQ-快速实战

MQ简介 MQ&#xff1a;MessageQueue&#xff0c;消息队列。是在互联网中使用非常广泛的一系列服务中间件。 Message&#xff1a;消息。消息是在不同进程之间传递的数据。这些进程可以部署在同一台机器上&#xff0c;也可以分布在不同机器上。&#xff08;数据形式&#xff1a…

NASM安装和结合nodepad++进行编译的过程

mov ax,0x30 mov bx,0xc0 add ax,bx times 502 db 0 db 0x55 db 0xAA nasm安装地址: https://www.nasm.us/ 下载exe安装 在命令行提示符输入nasm编译命令 nasm exam.asm -f bin -o exam.bin 此时输入回车将会执行编译过程。 1&#xff0c;启动NotePad&#xff0c;在菜单上选…

【驱动】串口驱动分析(三)-serial driver

简介 前两节我们介绍串口驱动的框架和tty core部分。这节我们介绍和硬件紧密相关的串口驱动部分。 UART驱动部分依赖于硬件平台&#xff0c;而TTY驱动和具体的平台无关。虽然UART部分依赖于平台&#xff0c;但是不管是哪个硬件平台&#xff0c;驱动的思路都是一致的&#xff…

vue3中的provide与inject跨层级组件(祖孙)间通信

provide和inject提供依赖注入&#xff0c;功能类似 vue2.x 的provide/inject 实现跨层级组件(祖孙)间通信 子或孙子组件接收到的数据可以用于读取显示&#xff0c;也可以进行修改&#xff0c;同步修改父&#xff08;祖&#xff09;组件的数据。 注意&#xff1a;无论子组件…