掌握sh文件和shell脚本:如何在串行和并行模式下运行Python脚本
2023-04-24 08:45:21[行业信息]

前言

在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
  • 2
  • 3

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:以超级用户权限运行命令