网站搜索

学习Shell脚本语言:从新手到系统管理员的指南


Linux 是使用某些强大的工具构建的,这些工具在 Windows 中不可用。此类重要工具之一是Shell 脚本。然而,Windows 也配备了这样的工具,但与往常一样,与 Linux 对应工具相比,它要弱得多。 Shell 脚本/编程使得执行命令成为可能,通过管道传输以获得所需的输出,以便自动化日常使用。事实上,在服务器上自动化这些日常任务是一项重要的任务,系统管理员必须执行,并且大多数管理员通过编写要在需要时执行的脚本来实现这一点。

Linux 中最常用的 shell 是 BASH,它代表 Bourne Again Shell。 Linux 中常见的其他 Shell 有:

  1. 阿尔姆奎斯特贝壳(白蜡木
  2. Bourne shell (sh)
  3. Debian Almquist shell (破折号)
  4. korn shell (ksh)
  5. 公共领域 korn shell (pdksh)
  6. MirBSD korn shell (mksh)
  7. Z shell (zsh)
  8. 忙碌盒等

我们尝试在 5 篇不同的帖子中涵盖多个方面的各种 shell 编程。

了解 Linux Shell 和基本 Shell 脚本编写 – 第一部分

我有点犹豫要不要写脚本语言,因为我不确定用户是否会接受它,但收到的响应本身就是一个历史。我们试图为您提供脚本语言的基本知识以及如何使用它,编写基本命令,注释行的需要以及如何编写它,谈论shebang,使脚本可执行及其执行。

你好.sh

第一个脚本是介绍性脚本,旨在获得简单的输出,从而使您熟悉 shell 脚本世界。

进程.sh

第二个脚本在那里,告诉您如何在脚本中执行多个命令,但在此阶段没有通过管道传输。

互动.sh

这篇文章的第三个也是最后一个脚本是一个简单但交互性很强的脚本,它会询问您的名字,存储它,再次询问您的姓氏,存储它并用您的全名和姓氏来称呼您输出。

在这篇文章的结尾,您应该了解如何独立于 shell 脚本执行 Linux 命令、根据需要存储和操作数据以及在运行时存储数据。

Shell脚本第一部分:了解Linux Shell和基本Shell脚本语言

对第一篇文章收到的回应感到自豪,写该系列的下一篇文章是我第一个想到的,因此该系列的第二篇文章是:

供 Linux 新手学习脚本的 5 个 Shell 脚本 - 第二部分

从标题中可以很清楚地看出,这里列出了 5 个 Shell 脚本。但在这里列出哪种脚本对我们来说是一项繁琐的工作。我们想将这篇文章专门讨论 shell 中的设计和颜色。我们背后的主要想法是告诉您 Linux 终端并不乏味且无色,您可以以非常丰富多彩的方式执行您的任务。

Special_patter.sh

这篇文章的第一个脚本绘制了一个特殊的图案,比如带有点(.)的菱形图案,这里 for 循环的实现是您从这个特定脚本中学到的。

七彩缤纷.sh

这篇文章的第二个脚本为您提供了多种颜色的输出。您学习了某些颜色代码(无需记住),单独更改文本和背景颜色,学习过程非常丰富多彩

加密.sh

这篇文章的第三篇文章是一个不到 10 行的脚本,但却是一个非常有用的脚本,它用密码加密文件/文件夹。安全实施从未如此简单。这里我们没有编写解密脚本,而是为您提供了解密文件/文件夹所需的命令,并要求您自己编写解密脚本。

服务器健康.sh

这篇文章的第四个脚本是一个有点长的脚本(长,在学习的这一点上),它报告服务器相关信息,并且可以重定向到文件以供将来参考。我们以管道方式使用 Linux 命令来获得所需的结果,因此管道是脚本语言中的一个重要工具,这是您所了解的。

磁盘空间.sh

这篇文章的第五个也是最后一个脚本是一个非常有用的脚本,专门针对网络管理员,如果磁盘空间超过限制,将自动向用户发送电子邮件。让用户注册 5 GB 的网络空间,一旦他的网络上传限制计数达到 4.75 GB,就会自动向用户发送一封电子邮件以增加网络空间。

Shell 脚本第二部分:学习 Shell 编程的 5 个 Shell 脚本

畅游 Linux BASH 脚本世界 – 第三部分

现在是时候告诉您脚本语言中使用和保留的某些关键字,以便我们能够以非常专业的方式完善我们的脚本。我们在这里讨论了在 shell 脚本中执行 Linux 命令。

up.sh

本文的第一个脚本旨在告诉您如何在 shell 脚本中向上移动目录。在 Linux 软件包安装过程中,您会看到该文件自动存储在多个位置,如果您需要任何此类任务,此脚本会很方便。

随机文件.sh

这篇文章的第二个脚本是一个非常有用的脚本,对管理员很有用。它可以自动创建带有日期和时间戳的唯一文件/文件夹,从而消除任何覆盖数据的机会。

收集网络信息.sh

本文的第三篇文章收集与服务器相关的信息并将其存储到文本文件中,以便可以发送/存储以供将来参考。

小写转换.sh

本文的第四篇文章将文件或标准输入中的数据一次性转换为小写。

简单cacl.sh

本文的最后一篇文章是一个简单的计算器,它能够交互式地执行四种基本的数学运算。

Shell 脚本第三部分:穿越 Linux BASH 脚本世界

Linux Shell 编程的数学方面 – 第四部分

基于数学主题的文章是我收到的一封电子邮件的结果,其中一位 Linux 爱好者不理解第三篇文章的最后一个脚本,是的!计算器脚本。为了简化数学运算,我们为各个数学运算创建了独立的脚本。

加法.sh

从名称来看,该脚本执行两个数字的加法。我们使用“expr”来执行操作。

Subtraction.shMultiplication.shDivision.sh分别是帖子的第二个、第三个和第四个脚本,它们根据它们的值执行数学运算姓名。

表.sh

本文的第五个脚本生成一个数字表,可以在运行时提供。

偶奇.sh

帖子的下一个脚本检查从标准输入输入的数字是奇数还是偶数,并将结果打印在标准输出上。

阶乘.sh

本文的第七个脚本生成数字的阶乘。在黑白(纸)上计算阶乘是一项痛苦的任务,但在这里却很有趣。

阿姆斯特朗.sh

该脚本检查提供的号码是否是 Armstrong。

Prime.sh

本文的最后一个脚本检查一个数字是否为质数并生成相应的输出。

Shell 脚本第四部分:Linux Shell 编程的数学方面

计算脚本中的数学表达式 - 第五部分

斐波那契

本文的第一个脚本测试输入的数字是否为斐波那契数列。

十进制2二进制.sh

本文的第二个脚本将十进制数转换为二进制数。这是您暑假作业中最常见的项目之一。

Binry2Decimal.sh

本文的第三个脚本将二进制数转换回十进制,与上述过程反之亦然。

然而,我们没有为下面的数学转换编写适当的脚本,而是提供了一个线性命令,以便您自己可以在自己的脚本中实现它。

  1. 十进制转八进制
  2. 十进制到十六进制
  3. 八进制转十进制
  4. 十六进制转十进制
  5. 二进制到八进制,属于上述类别。

Shell 脚本第五部分:用 Shell 脚本语言计算数学表达式

我们亲自测试了所有脚本,以确保您获得的每个脚本都能在终端中 100% 完美运行。此外,我们在大多数脚本中都包含了示例输出,这样您就不会感到困惑。

好吧,这就是我现在的全部内容。我将再次在这里带来一篇有趣的文章,你们一定会喜欢阅读的。直到那时保持与Tecmint的连接。保持健康、健康、协调。不要忘记在评论中向我们提供您宝贵的想法,我们非常感激。