掌握sh文件和shell脚本:如何在串行和并行模式下运行Python脚本

简介: 掌握sh文件和shell脚本:如何在串行和并行模式下运行Python脚本

前言


在pycharm上依次执行多个python文件比较繁琐,于是乎上传到服务器编写sh文件来一键启动!


0、sh文件的介绍


.sh文件是一种在Linux和其他Unix系统中使用的脚本文件,通常用于自动化系统管理任务或在命令行环境中执行一系列命令。.sh文件的全称是shell脚本文件,其中shell指的是命令行解释器,它可以解释并执行一系列命令。


  • 通常情况下,.sh文件是用纯文本格式编写的,可以使用任何文本编辑器创建和编辑,如nano、vi、emacs等等。在编写.sh文件时,我们可以使用类似于在命令行环境中执行命令的语法,也可以使用各种控制结构、变量和函数来编写复杂的脚本。
  • .sh文件可以使用不同的shell程序来解释和执行,其中bash是最常用的shell程序。其他常见的shell程序包括sh、csh、tcsh等等。
  • 在Linux和其他Unix系统中,我们可以使用.sh文件来完成各种自动化系统管理任务,例如自动备份数据、监视系统日志、配置网络设置、安装软件包等等。此外,我们还可以编写.sh文件来执行一些常见的任务,例如编译程序、管理文件系统、处理文本文件等等。


总之,.sh文件是在Linux和其他Unix系统中非常重要的脚本文件类型,它们提供了一种简单而强大的方式来自动化系统管理任务和执行常见的命令行任务。


一、创建sh文件


1-1、打开终端窗口


1-2、创建一个sh文件,以sh结尾

touch auto.sh

1-3、使用vim命令编辑文件,并且输入内容

编辑文件

vim xx.sh
# i进入编辑模式
# esc退出编辑模型,进入命令模式
# 输入!wq保存文件并且退出

输入内容

#!/bin/bash
echo "Hello, World!"


1-4、将sh文件设置为可执行文件,可以使用如下命令

chmod +x xx.sh


1-5、执行sh文件

bash xx.sh


二、编写sh文件

1、首先使用vim命令打开auto.sh文件

vim auto.sh


2、串行执行sh文件

#!/bin/bash
# 以下文件是串行执行的。
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_br.py
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_dks_bp.py
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_jp_dks.py
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_jp_kn.py
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_kn_bp.py


3、并行执行

#!/bin/bash
# 只需要在每一条命令后加&就可以啦
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_br.py &
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_dks_bp.py &
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_jp_dks.py &
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_jp_kn.py &
/opt/conda_buss/bin/python3.7 /home/dakai.duan/ddk_new_customer/dks_self_tag_bi_word_kn_bp.py &


三、执行文件

# 输入命令,接下来就可以摸鱼了,等待程序自己执行完成。
sh auto.sh



四、常用命令介绍


  • cd:改变当前工作目录
  • ls:列出目录中的文件和子目录
  • pwd:显示当前工作目录的路径
  • cp:复制文件或目录
  • mv:移动文件或目录,也可以用于文件或目录的重命名
  • rm:删除文件或目录
  • mkdir:创建新目录
  • rmdir:删除空目录
  • cat:显示文件内容,也可以用于文件合并
  • grep:在文件中查找指定的文本
  • echo:在终端窗口中打印文本
  • top:显示系统中运行的进程列表和统计信息
  • ps:显示当前用户的进程列表
  • kill:停止运行中的进程
  • ssh:通过安全加密连接远程计算机
  • scp:通过安全加密复制文件到远程计算机
  • wget:从Web下载文件
  • tar:用于创建和提取.tar压缩文件
  • zip:用于创建和提取.zip压缩文件
  • sudo:以超级用户权限运行命令


总结


要过年了,现在需要做的是迅速逃离上海回家!



相关文章
|
1月前
|
Shell
Shell 文件包含
10月更文挑战第5天
33 4
|
20天前
|
安全 网络安全 文件存储
思科设备巡检命令Python脚本大集合
【10月更文挑战第18天】
56 1
思科设备巡检命令Python脚本大集合
|
2月前
|
Unix Shell Linux
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
本文提供了几个Linux shell脚本编程问题的解决方案,包括转置文件内容、统计词频、验证有效电话号码和提取文件的第十行,每个问题都给出了至少一种实现方法。
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
|
16天前
|
关系型数据库 MySQL 数据库连接
python脚本:连接数据库,检查直播流是否可用
【10月更文挑战第13天】本脚本使用 `mysql-connector-python` 连接MySQL数据库,检查 `live_streams` 表中每个直播流URL的可用性。通过 `requests` 库发送HTTP请求,输出每个URL的检查结果。需安装 `mysql-connector-python` 和 `requests` 库,并配置数据库连接参数。
114 68
|
2天前
|
运维 监控 Python
自动化运维:使用Python脚本简化日常任务
【10月更文挑战第36天】在数字化时代,运维工作的效率和准确性成为企业竞争力的关键。本文将介绍如何通过编写Python脚本来自动化日常的运维任务,不仅提高工作效率,还能降低人为错误的风险。从基础的文件操作到进阶的网络管理,我们将一步步展示Python在自动化运维中的应用,并分享实用的代码示例,帮助读者快速掌握自动化运维的核心技能。
7 3
|
7天前
|
缓存 运维 NoSQL
python常见运维脚本_Python运维常用脚本
python常见运维脚本_Python运维常用脚本
11 3
|
7天前
|
数据采集 JSON 数据安全/隐私保护
Python常用脚本集锦
Python常用脚本集锦
11 2
|
8天前
|
运维 监控 应用服务中间件
自动化运维:如何利用Python脚本提升工作效率
【10月更文挑战第30天】在快节奏的IT行业中,自动化运维已成为提升工作效率和减少人为错误的关键技术。本文将介绍如何使用Python编写简单的自动化脚本,以实现日常运维任务的自动化。通过实际案例,我们将展示如何用Python脚本简化服务器管理、批量配置更新以及监控系统性能等任务。文章不仅提供代码示例,还将深入探讨自动化运维背后的理念,帮助读者理解并应用这一技术来优化他们的工作流程。
|
9天前
|
运维 监控 Linux
自动化运维:如何利用Python脚本优化日常任务##
【10月更文挑战第29天】在现代IT运维中,自动化已成为提升效率、减少人为错误的关键技术。本文将介绍如何通过Python脚本来简化和自动化日常的运维任务,从而让运维人员能够专注于更高层次的工作。从备份管理到系统监控,再到日志分析,我们将一步步展示如何编写实用的Python脚本来处理这些任务。 ##
|
30天前
|
Linux 区块链 Python
Python实用记录(十三):python脚本打包exe文件并运行
这篇文章介绍了如何使用PyInstaller将Python脚本打包成可执行文件(exe),并提供了详细的步骤和注意事项。
49 1
Python实用记录(十三):python脚本打包exe文件并运行