Linux的shell脚本常用命令

这篇具有很好参考价值的文章主要介绍了Linux的shell脚本常用命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、前提

使用shell脚本可以将所要执行的命令行进行汇总,统一执行,制作为脚本工具,简化重复性工作

1.1、常用命令

1.1.1、启动命令

假设我们拥有一个halloWord.sh的脚本,通过cd 命令进入相对应的目录下

./halloWord.sh

1.1.2、记录日志

将脚本执行的内容以及输出记录在log.txt文件中,同时也控制台显示器也要输出一份,可以在脚本开始处添加以下代码

# -a 后的$(date +%Y-%m-%d_%H:%M:%S)_log.txt为log.txt名称
# (date +%Y-%m-%d_%H:%M:%S)为当前时间 防止log文件重名
exec &> >(tee -a $(date +%Y-%m-%d_%H:%M:%S)_log.txt)

1.1.3、设置变量以及输出内容

#控制台将输出内容为 "127.0.0.1"的字符串
DB_HOST="127.0.0.1"
echo $DB_HOST

1.1.4、创建文件夹

#在/opt下创建Back文件夹
mkdir /opt/Back

1.1.5、拷贝文件夹、文件

选项:
-r:递归复制目录及其内容。与-R选项相同。
-p:保持源文件的权限、所有者和时间戳等属性。
-i:在复制时进行交互式确认,如果目标文件已经存在,则提示是否覆盖。
-f:强制复制,不进行任何提示或警告。
-u:只复制源文件比目标文件更新的文件。
-v:显示详细的复制过程信息。

#cp [选项] 源文件 目标文件
#将opt目录下的log.txt文件,拷贝至opt的Back目录下
#相同原理,也可以拷贝文件夹
cp -R /opt/log.txt /opt/Back

1.1.6、校验目录或文件夹是否存在

if [ -f "/opt" ]; then
   echo "opt目录存在"
else
   echo "opt目录不存在"
fi

1.1.7、输入英语字符并转换为小写字符

echo "是否要校验opt目录是否存在?(y/n)"
read answer
answer=$(echo "$answer" | tr '[:upper:]' '[:lower:]')
if [ "$answer" = "y" ]; then
   echo "opt目录存在"
else
   echo "opt目录不存在"
fi

1.1.8、中途停止脚本的执行

#使用 exit 1进行停止
#exit 1 是一个Shell命令,用于在脚本中退出并返回一个非零的退出状态。
#它通常用于指示脚本或命令在执行过程中发生了错误或异常。
#当执行exit 1时,脚本将立即终止,
echo "是否要校验opt目录是否存在?(y/n)"
read answer
answer=$(echo "$answer" | tr '[:upper:]' '[:lower:]')
if [ "$answer" = "y" ]; then
   echo "opt目录存在"
else
   echo "opt目录不存在"
   echo "操作已取消"
   exit 1
fi

1.1.9、脚本发生错误,停止脚本命令

#set -eu是一个bash命令,它可以设置shell的选项和变量。set -eu的意思是:
#1、set -e表示如果一个命令或者管道出现非零的退出状态,就让shell退出。
#2、set -u表示如果一个变量没有定义,就让shell退出
#3、这两个选项可以帮助你在脚本中发现错误和异常
set -eu

Linux的shell脚本常用命令,linux,服务器,运维

1.1.10、将文本内容更换为UTF-8格式

定义两个变量,分别为需要源文件路径,以及目标文件路径

#将opt目录下的log.txt更换为UTF-8格式
TXT_FILE="/opt/log.txt"
TXT_FILE_UTF="/opt/log_UTF-8.txt"
iconv -f GBK -t UTF-8 $TXT_FILE > $TXT_FILE_UTF

也可以不使用变量的方式

#将opt目录下的log.txt更换为UTF-8格式
iconv -f GBK -t UTF-8 "/opt/log.txt" > "/opt/log_UTF-8.txt"

2、注意事项

2.1、书写格式

.sh文件的第一行必须为:#!/bin/bash
例如:Linux的shell脚本常用命令,linux,服务器,运维

2.2、权限问题

第一次调用.sh脚本是时可能会出现权限不足的问题

#脚本赋予可执行权限
chmod u+x /opt/XXX.sh

2.3、编写的格式问题

winodw编写可以使用编辑器(如NotePad++),保存格式为unix,否则会出现不可见的符号,导致命令行报错,脚本无法使用
Linux的shell脚本常用命令,linux,服务器,运维文章来源地址https://www.toymoban.com/news/detail-638204.html

到了这里,关于Linux的shell脚本常用命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • linux常用查看服务器内存的命令

    linux常用查看服务器内存的命令

    free 命令用来显示系统内存状态,包括系统物理内存、虚拟内存(swap 交换分区)、共享内存和系统缓存的使用情况,其输出和 top 命令的内存部分非常相似。   free 命令的基本格式如下: [root@localhost ~]# free [选项] 表 1 罗列出了此命令常用的选项及各自的含义。 表 1 free 命令

    2024年02月16日
    浏览(49)
  • Java利用JSCH库远程连接Linux服务器以及操作多条Shell命令

    Java利用JSCH库远程连接Linux服务器以及操作多条Shell命令

    为了实现 DHCP 服务器的 IP 存储、回收和查询机制,我们需要将服务器中 LXD 容器的网卡 IP 查询出来,并且存储到服务器中的 Mysql 中。所以,下面介绍如何通过 Java 远程连接 Linux 服务器以及操作多条 Shell 命令。 创建 Maven 项目,导入依赖 jsch 实现远程连接,往后我们只需要调

    2024年02月13日
    浏览(15)
  • Linux的shell脚本常用命令

    Linux的shell脚本常用命令

    使用shell脚本可以将所要执行的命令行进行汇总,统一执行,制作为脚本工具,简化重复性工作 1.1.1、启动命令 假设我们拥有一个halloWord.sh的脚本,通过cd 命令进入相对应的目录下 1.1.2、记录日志 将脚本执行的内容以及输出记录在log.txt文件中,同时也控制台显示器也要输出

    2024年02月13日
    浏览(12)
  • Linux CentOS 7 服务器集群硬件常用查看命令

    (一)查看内核:uname -a (二)查看系统: cat /etc/redhat-release (三)查看CPU: cat /proc/cpuinfo 或者 lscpu tips:两者命令差不多,lscpu更简洁,主要关注 Core(s) per socket 和 Socket(s) 参数,以及 Thread(s) per core 。后者表示逻辑核心,一般是1,如果使用超线程技术,则是2; CPU(s) 是三者

    2024年04月27日
    浏览(45)
  • Shell 分析服务器日志常用命令

    1、查看有多少个IP访问: 日志文件的第一列是IP地址 2、查看某一个页面被访问的次数: 3、查看每一个IP访问了多少个页面: 4、将每个IP访问的页面数进行从小到大排序: 5、查看某一个IP访问了哪些页面: 6、去掉搜索引擎统计的页面: 7、查看2015年8月16日14时这一个小时内

    2024年02月14日
    浏览(13)
  • Linux 常用操作命令(CentOS 7.0)- 故障定位:服务器负载、进程管理、日志分析

    系统经研发测试上线后,如果运行期间出现了BUG,需要对服务故障进行定位,一般会查看服务器负载、服务状态、进程管理、服务日志等。 本文以CentOS 7.0 操作系统上的命令操作作为示例进行记录。 #服务器负载 完整参见:http://www.laobingbiji.com/note/detail.html?note_id=20231115154337

    2024年01月17日
    浏览(49)
  • Python 与机器学习,在服务器使用过程中,常用的 Linux 命令包括哪些?

    Python 与机器学习,在服务器使用过程中,常用的 Linux 命令包括哪些?

    🍉 CSDN 叶庭云 : https://yetingyun.blog.csdn.net/ 本博客旨在分享在实际开发过程中,开发者需要了解并熟练运用的 Linux 操作系统常用命令。Linux 作为一种操作系统,与 Windows 或 MacOS 并驾齐驱,尤其在服务器和开发环境中占据重要地位。Linux 命令,简而言之,就是指导计算机执行

    2024年04月12日
    浏览(14)
  • VMware vCenter服务器常用的巡检命令、运维命令和PowerShell脚本

    一、前言 最近整理一些VMware vCenter和Esxi常用的巡检命令和运维命令如下: 二、巡检命令 三、运维命令 运维常用命令: 四、Powershell脚本 以上就是vCenter和ESXi常用的运维与监控命令,可以帮助vSphere管理员管理和监控环境。

    2024年02月11日
    浏览(8)
  • 基于PBS向超算服务器队列提交任务的脚本模板与常用命令

    基于PBS向超算服务器队列提交任务的脚本模板与常用命令

      本文介绍在 Linux 服务器中,通过 PBS (Portable Batch System)作业管理系统脚本的方式,提交任务到 服务器 队列,并执行任务的方法。   最近,需要在学校公用的超算中执行代码任务;而和多数超算设备一样,其也是需要通过作业队列的方式,来提交、管理、排序不同用

    2024年04月12日
    浏览(11)
  • 服务器巡检脚本(linux)

    2024年02月20日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包