首页
学习
活动
专区
圈层
工具
发布

Linux 后台运行python .sh等程序,以及查看和关闭后台运行程序操作

1、运行.sh文件 直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令。...(2)ps命令 功能:查看当前的所有进程 ps -aux | grep "test.sh" #a:显示所有程序 u:以用户为主的格式来显示 x:显示所有程序...(2)Ctrl + z 命令 功能:将一个正在前台执行的命令放到后台,并且处于暂停状态 (3)bg命令 功能:将一个在后台暂停的命令,变成在后台继续执行 如果后台中有多个命令...jobs [1]+ Running nohup python -u jbabs.py > out.log 2>&1 & 运行一个Python脚本,通常设置如下 $...因为: python的输出有缓冲,导致python.log3并不能够马上看到输出。 使用-u参数,使得python不启用缓冲。

12.8K21

我私藏的那些实用的终端命令行工具

你必须将不兼容的命令更改为合法的 Fish 脚本,或者启动一个 Bash 会话以运行 Bash 脚本。...如果您不在 Python 项目中,则不会有 Python 版本信息,因为显示它没有什么意义。它永远不会给你展示多余信息,始终保持终端的美观,优雅和简约。 Starship 的运行速度怎么样呢?...你可以撸起袖子,开始为 find 命令编写那些复杂的正则表达式,也可以直接命令行运行 fd invoice。反正对我来说,我只选择最简单的那个。...而且,即使是像我一样主要从事网络开发,查看计算机的运行状况也很有用。你知道,只是看一下当前到底是 Docker 进程还是 Chrome 进程吃掉了你所有的 RAM,应该如何做吗?...如果你想了解有关 Python 工具的更多信息并想了解如何使用它们,我为 PyCon 2020 会议制作了一个名为“现代 Python 开发人员工具包”的视频。

1.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    22款好用的CLI工具

    你必须将不兼容的命令更改为合法的 Fish 脚本,或者启动一个 Bash 会话以运行 Bash 脚本。...如果您不在 Python 项目中,则不会有 Python 版本信息,因为显示它没有什么意义。它永远不会给你展示多余信息,始终保持终端的美观,优雅和简约。 Starship 的运行速度怎么样呢?...你可以撸起袖子,开始为 find 命令编写那些复杂的正则表达式,也可以直接命令行运行 fd invoice。反正对我来说,我只选择最简单的那个。...而且,即使是像我一样主要从事网络开发,查看计算机的运行状况也很有用。你知道,只是看一下当前到底是 Docker 进程还是 Chrome 进程吃掉了你所有的 RAM,应该如何做吗?...如果你想了解有关 Python 工具的更多信息并想了解如何使用它们,我为 PyCon 2020 会议制作了一个名为“现代 Python 开发人员工具包”的视频。

    3K30

    推荐一些程序员的命令行生产力工具!

    你必须将不兼容的命令更改为合法的 Fish 脚本,或者启动一个 Bash 会话以运行 Bash 脚本。...如果您不在 Python 项目中,则不会有 Python 版本信息,因为显示它没有什么意义。它永远不会给你展示多余信息,始终保持终端的美观,优雅和简约。 Starship 的运行速度怎么样呢?...你可以撸起袖子,开始为 find 命令编写那些复杂的正则表达式,也可以直接命令行运行 fd invoice。反正对我来说,我只选择最简单的那个。...而且,即使是像我一样主要从事网络开发,查看计算机的运行状况也很有用。你知道,只是看一下当前到底是 Docker 进程还是 Chrome 进程吃掉了你所有的 RAM,应该如何做吗?...如果你想了解有关 Python 工具的更多信息并想了解如何使用它们,我为 PyCon 2020 会议制作了一个名为 “现代 Python 开发人员工具包” 的视频。

    1K20

    keepalived实现mycat高可用问题排查;道路坎坷,布满荆棘,定让你大吃一惊!

    exit 0 # 返回0说明脚本正常执行,mycat正在运行中 fi     ps -ef与ps aux效果一样,我就只演示一个了,结果如下 ?     ...,当mycat没启动时,查到的进程数竟然是2,而当mycat在运行中,查到的进程数是4,为什么是这种结果,至今我还没搞明白,表面上看着像是单独执行ps命令的翻倍,为什么翻倍,不得而知 ?...exit 0 # 返回0说明脚本正常执行,mycat正在运行中 fi     测试结果如下 ?     ...exit 0 # 返回0说明脚本正常执行,mycat正在运行中 fi     单独执行命令与单独执行check_pid.sh我就不演示了,与上述:环境变量中mycat命令 无差,keepalived...中配置nopreempt,当它异常恢复后,即使它的priority更高也不会抢占,这样可以避免正常情况下做无谓的切换; 总结   1、环境搭建过程中一定要仔细小心,分步骤、环节,保证各个步骤、环节都正确

    2.4K30

    《书生大模型实战营第3期》入门岛 学习笔记与作业:Linux 基础知识

    3.2 进程管理 进程管理命令是进行系统监控和进程管理时的重要工具,常用的进程管理命令有以下几种: ps:查看正在运行的进程 top:动态显示正在运行的进程 pstree:树状查看正在运行的进程 pgrep...它会实时更新进程列表,显示CPU和内存使用率最高的进程。 top # 启动top命令,动态显示进程信息 pstree:以树状图的形式显示当前运行的进程及其父子关系。...nice -n 10 long-running-command # 以较低优先级运行一个长时间运行的命令 jobs:显示当前终端会话中的作业列表,包括后台运行的进程。...我们先来介绍一下studio-conda,这是开发机内置的一个命令,它通过Shell脚本来实现的。什么是Shell脚本呢?...它有以下几个重要特点: 自动化:可以将一系列重复、复杂的操作编写为一个脚本,然后只需运行脚本即可自动完成这些操作,从而节省时间和减少错误。例如,每天定时备份重要文件的脚本。

    52910

    写 Python 脚本时,一定要加上这个

    明白了这一点,if __name__ == "__main__": 就可以做为区分脚本和库的一个标志,当我们看到 if __name__ == "__main__": 时,就认为这一个可以直接运行的脚本...为什么很多优秀的编程语言,比如 C、Java、Golang、C++ 都有一个 main 入口函数呢?我想很重要的一个原因就是就是程序入口统一,容易阅读。...,会发现程序不停的在创建进程,同时也在不停的报错 RuntimeError,即使你 Ctrl C 也无法终止程序。...其实我是这样理解的,Python 的多程序就是启动了多个 Python 解释器,每个 Python 解释器都会导入你这个脚本,复制一份全局变量和函数给子进程用,如果有了if __name__ == "_...当你看到 Python 脚本有 if __name__ == "__main__": 时,就会意识到,这是一个可执行的脚本,当被其他程序导入时,这部分代码不会被执行,而多进程的程序中,这是必须的。

    52810

    如何避免 Cronjob 重复运行

    Cronjob使用中有很多问题需要注意,前段时间写了一篇文章《为什么 Cronjob 不执行》,里面谈到了各种会导致cronjob不执行的因素和解决方案,而本文就cronjob重复运行的场景,对技术手段...中起了一个子shell,所以在子shell执行ps的同时多了一个当前脚本任务运行的进程,所以比正常进程数多1,所以上面代码我们需要改为:count=$(ps -ef | grep /opt/test.sh...exit 1 fifido somethingrm $PIDFILE虽然此方案看起来很完美,但是还是有一个场景没有考虑到,那就是如果正在运行任务的进程被kill掉,然后另一个进程使用了和被kill进程相同的...用于如果命令产生子进程时会不受锁的管控 -c, --command: 在shell中运行一个单独的命令 -h, --help 显示帮助 -V, --version: 显示版本...程序Solo是一个Perl脚本,它的工作原理与flock类似,但它并不依赖于锁文件,因为Solo程序是通过绑定端口来实现。

    2.2K40

    Postgresql 监控你说了不算,谁说了算? (4 PG_TOP and pg_activity)

    buffer HIT的百分比,多少行正在被读和多少行被写 并且最下方还会显示与数据库有关的process 的情况 另外还有一些常用的命令,例如键入 K ,在输入下面显示的连接进程,这样就会直接将正在的连接切断...当然如果在扩展一下,可以将其封装成一个定时运行的命令,将当下的内容灌入到自定义的日志,可以在非人工的工作时间的一些东西记录,并可以解决当时例如系统崩溃时的问题解决,提供线索。...R 与 X 则分别是显示table 的 status 与 index 的状态 pg_top 的确是一个好的即使监控的工具,主要也用于出了问题时的监控与性能和问题分析。...install pg_activity 就可以安装上,当然如果你发现安装不上那可能有以下问题 1 请你安装python-3-devel --yum 2 请你安装pycopg2...--pip3 3 请你安装psycopg2-binary --pip3 等响应的包 如果对python 连 PG 敢兴趣,可以去下面的地方,里面有一些py 连接pg的脚本 ?

    1K30

    使用 Rust 极致提升 Python 性能:图表和绘图提升 24 倍,数据计算提升 10 倍

    这段测试的代码,仍然忠实地再现了生产环境中所部署代码的运行负载。我使用优秀的 pyinstrument 模块,深入了解了 Python 代码中正在发生的事情。...test_python 方法,正在测试我认为很慢的部分代码的逻辑。当然,所有其它代码的逻辑仍然是存在的。...我进行的测试数据,使用了近 8 米的船舶定位。我们正在研究全世界的数百个区域,数百个实现过滤功能的多边形算法要运行。...测试跟踪还显示,即使创建 GeoDataFrames,也要比基于 matplotlib 的整体处理,花费更长的时间。 所以,我们有一个选择题。...我们可以: 尝试将数据分块,然后使用多进程 multi-processing 模块处理(在 Python 中是不推荐的),从而利用更强大的云虚拟机,用来支撑 matplotlib 计算。

    2.5K31

    systemctl 的try-restart的作用

    systemctl try-restart 是 systemd 中一个非常实用的命令,它的核心含义是:“尝试重启指定的服务,但如果该服务当前并未运行,则不执行任何操作。”...换句话说,try-restart 只对正在运行(active)或正在退出(deactivating)状态的服务生效。...它也会在服务未运行时启动它。try-restart 的典型应用场景 1. 安全地重启正在运行的服务当你只想重启那些“已经在工作”的服务,而不希望意外地启动一个本应被手动停止的服务时。...例子: 假设你有一个开发环境,myapp-dev.service 有时会因为调试被手动停止。你写了一个脚本要重启所有正在运行的应用服务。...可以简单理解为:systemd 是现代 Linux 系统的“操作系统级”初始化系统和资源管理者,而 supervisord 是一个“应用级”的进程控制工具。

    19900

    linux 后台运行进程:& , nohup

    如果放在后台运行的作业会产生大量的输出,最好使用下面的方法把它的输出重定向到某个文件中: command > out.file 2>&1 & 这样,所有的标准输出和错误输出都将被重定向到一个叫做out.file...PS:当你成功地提交进程以后,就会显示出一个进程号,可以用它来监控该进程,或杀死它。...只有在当前命令行中使用 nohup和& 时,jobs命令才能将它显示出来。如果将他们写到 .sh 脚本中,然后执行脚本,是显示不出来的 比如执行下面这个脚本后,jobs 显示不出来: #!...pid 前台进程的终止:ctrl+c 前后台进程的切换与控制 ctrl + z 命令 将一个正在前台执行的命令放到后台,并且处于暂停状态。...思考 问题1-为什么ssh一关闭,程序就不再运行了 元凶:SIGHUP 信号 让我们来看看为什么关掉窗口/断开连接会使得正在运行的程序死掉。

    7K40

    Python 进阶指南(编程轻松进阶):二、环境配置和命令行

    例如,图 2-3 显示了同一个计算器程序的五个进程示例。 图 2-3:一个计算器程序作为多个独立的进程运行多次 即使运行同一个程序,进程也保持相互独立。...一般来说,一个命令行一次只能运行一个进程(尽管您可以同时打开多个命令行)。 每个操作系统都有查看正在运行的进程列表的方式。...如果进程没有响应,这些任务管理器可以强制终止正在运行的进程。 命令行 命令行是一个基于文本的程序,让你输入命令与操作系统交互并运行程序。...或者,当您使用python yourScript.py命令从终端窗口运行 Python 脚本时,yourScript.py部分是一个参数,它告诉python程序应该执行哪个脚本。...每个命令开头的@符号防止它显示在终端窗口中,并且%*将在批处理文件名后输入的任何命令行参数转发给 Python 脚本。Python 脚本依次读取sys.argv列表中的命令行参数。

    7.4K60

    流畅的 Python 第二版(GPT 重译)(十一)

    一个顺序下载脚本 示例 20-2 包含flags.py的实现,这是我们在示例 20-1 中运行的第一个脚本。它并不是很有趣,但我们将重用大部分代码和设置来实现并发脚本,因此它值得一提。...⑤ _max_workers是ProcessPoolExecutor的一个未记录的实例属性。我决定使用它来显示workers变量为None时的工作进程数。...如果你运行示例 20-6,你会看到结果严格按降序出现,就像示例 20-7 中所示。相比之下,procs.py的输出顺序(在“基于进程的解决方案”中显示)受到检查每个数字是否为质数的难度的影响。...如果无法将阻塞函数重写为协程,应该在单独的线程或进程中运行它,正如我们将在 “委托任务给执行器” 中看到的。...⑤ 我在客户端终端上按下了 Ctrl-C;finder中的while循环退出。 ⑥ finder协程显示此消息然后退出。与此同时,服务器仍在运行,准备为另一个客户端提供服务。

    76610

    【Python】教你一步步编写banner获取脚本

    banner可以理解为我们连上服务器后,服务器响应的第一条欢迎语句。 通常通过banner我们可以获取到服务器正在运行的服务,以及服务的名称和相关版本信息。 例如linux下的nc命令,如下: ?...脚本运行结果如下,成功取得banner: ? 这样基础代码就完成了,关于socket模块的详细使用方法,我将在近期推出。接下来,我们一步一步来完善这个程序。...3、添加异常处理功能 为什么需要添加异常处理功能呢?? 程序运行过程中难免出现错误,当Python检测到错误时,解释器就无法继续执行下去,于是抛出相应的信息,这些统称为异常信息。...当脚本被其他脚本调用时,放在它后面的代码是不会执行的,只有当单独执行该脚本时,才会执行这部分代码。...9、功能测试 接下来对我们的脚本进行测试: (1)不传入任何参数,运行结果: ? (2)传入错误的文件名 ? (3)-f 传入正确的文件,进行扫描 ?

    1.9K31

    用Click编写Python命令行工具

    仅通过python print_user_agent.py你就可以运行它,它就会打印出 API调用的user-agent。 正如我所说,一个非常简单的脚本。...它们可能不适用于Python的早期版本,但是如果遇到任何麻烦,请在下面留言,我们将把它整理在一起。 让我们开始吧! 为什么要编写Python命令行脚本和工具?...这就是为什么我爱上了click click正在解决与optparse和argparse相同的问题,但使用方法稍微不同。它使用装饰器的概念。这需要命令是可以使用装饰器包装的函数。...首先,我们现在不用担心最后两行,当文件作为脚本执行时,这只是Python(稍微不直观)的方式来运行主函数。...但首先,我们必须决定这应该是一个参数还是一个选项。 我们使它成为一个option,因为添加一个像--api-key这样的命名参数使得它更加明确和自描述。 以下是我认为用户应该运行它的方式: ?

    4K10

    将Python和R整合进一个数据分析流程

    命令行执行和执行子进程 为了更好地理解在执行子进程的时候发生了什么,值得重新考虑当命令行运行一个Python 或 R进程中更多的细节。...在运行下面的命令时,启动了一个新的 Python 进程执行该脚本。 在执行过程中,任何被输出到标准输出和标准错误流的数据会返回到控制台显示。...在这种方式下运行命令行脚本是有用的,但如果希望用这个方法执行多个连续却相互独立脚本时,就变得繁琐,并且容易出错。然而,这可能让一个Python或R进程直接去执行另一个类似的命令。...这样有好处,即从一个Python父进程启动一个R中的子进程去运行特定的脚本,进而完成分析。一旦R脚本运行完毕,R中子进程的输出不是被传到控制台,而是返回到父进程中。...这是因为内置的系统函数跨平台不兼容,非常难使用。 建立要执行的命令是类似于上面的 Python 例子,然而system2 期望命令根据它的参数被分解开来。

    3.1K80

    如何利用并发性加速你的 python程序(上)

    在 python 中,同时发生的事情由线程、任务、进程调用,但在高层,它们都是指按顺序运行的一系列指令。 我喜欢把它们看作是不同的思维方式。...通过多进程,python 创建了新的进程。这里的一个进程可以被看作是一个完全不同的程序,尽管从技术上讲,它们通常被定义为一个资源的集合,其中的资源包括内存、文件句柄和类似的东西。...每个进程都在自己的 python 解释器中运行。 因为它们是不同的进程,所以在多进程中的每一个进程都可以在不同的核上运行。在不同的核心上运行意味着它们实际上可以同时运行,这太棒了。...我已经看到由于网络问题,这些测试案例从一次运行跳转到另一次的时间加倍了。 为什么同步版本很重要 这个版本的代码最棒的特点是,它很简单,编写和调试相对容易。...为什么线程版本很重要 它很快!这里是我测试中最快的一次。记住,非并发版本需要 14 秒以上的时间: ? 它的执行时序图如下所示: ?

    1.6K20

    将Python和R整合进一个数据分析流程

    命令行执行和执行子进程 为了更好地理解在执行子进程的时候发生了什么,值得重新考虑当命令行运行一个Python 或 R进程中更多的细节。...在运行下面的命令时,启动了一个新的 Python 进程执行该脚本。 在执行过程中,任何被输出到标准输出和标准错误流的数据会返回到控制台显示。...在这种方式下运行命令行脚本是有用的,但如果希望用这个方法执行多个连续却相互独立脚本时,就变得繁琐,并且容易出错。然而,这可能让一个 Python或R进程直接去执行另一个类似的命令。...这样有好处,即从一个Python父进程启动一个R中的子进程去运行特定的脚本,进而完成分析。一旦R 脚本运行完毕,R中子进程的输出不是被传到控制台,而是返回到父进程中。...这是因为内置的系统函数跨平台不兼容,非常难使用。 建立要执行的命令是类似于上面的 Python 例子,然而system2 期望命令根据它的参数被分解开来。

    3.8K80
    领券