[Shell编程学习路线]——编制第一个shell脚本入门篇

news2024/11/14 11:12:15

🏡作者主页:点击! 

🛠️Shell编程专栏:点击!

⏰️创作时间:2024年6月12日10点23分

🀄️文章质量:93分


目录

——前言——

💥常用的几种shell

Bash

Sh

nologin

💗默认的Shell

💯趣站💯

What是Shell脚本呢❓️❓️❓️

🌐Shell脚本注释规范

单行注释

多行注释

®️注意事项


——前言——

欢迎进入Shell编程的世界!无论你是初学者还是经验丰富的开发者,掌握Shell脚本编写技巧都能极大地提高你的工作效率和系统管理能力。Shell脚本不仅是操作系统交互的重要工具,也是自动化任务、批处理操作和系统维护的强大助手。在本篇入门指南中,我们将带你一步步编制第一个Shell脚本,从基础语法到实际应用,帮助你打下坚实的编程基础。让我们一起开启这段充满探索与学习的旅程吧!

Linux中的shell脚本是一个特殊的应用程序,它介于操作系统内核与用户之间,充当了一个‘命令解释器的角色’ ,负责接收用户输入的操作指令(命令),并且进行解释,讲需要执行的操作传递给内核执行,并输出执行结果,

常见的sheel解释器有很多种

💥常用的几种shell

Bash
  • 最常用的 Shell 解释器之一,尤其是在 Linux 系统中。

  • 兼容 Bourne Shell (sh) 的同时,增加了许多功能,如命令行编辑、命令历史记录等。

  • 支持丰富的脚本编写功能。

Sh
  • 最早的 Unix Shell 之一,由 Stephen Bourne 开发。

  • 简单且高效,适用于基本的脚本编写和系统管理任务。

nologin

是一种特殊的 shell,它用于禁止某个用户登录系统。当某个用户的 shell 被设置为 nologin 时,用户将无法通过常规方法登录到系统。这通常用于系统用户账户,这些账户不需要交互式登录权限。

等等~

/etc /shells

通过上述路径可以看到当前系统所支持的shell脚本种类

💗默认的Shell

Linux中默认的shell是Bash(Bourne Again Shell),由GNU开发,是目前大多数Linux系统默认使用的shell。路径在/bin/bash

💯趣站💯

前些天发现了一个巨牛的🤖人工智能学习网站,通俗易懂,风趣幽默,忍不住粉香一下给大家,人工智能, 机器算法等......  点击跳转网页!

What是Shell脚本呢❓️❓️❓️

简单的来说就是将你想要执行的命令,放进文本文档中,添加可执行权限,这个文件就成了shell脚本

例如:执行以下操作可以创建第一个脚本 first.sh

vim first.sh
写入以下内容
#/bin/bash
#第一个shell脚本
cd /mnt
pwd
ls
touch test.txt
echo "我的第一个shell脚本" > test.txt
ls
cat test.txt

给脚本添加可执行权限

chmod +x first.sh

 

运行脚本

在脚本当前路径下执行以下命令

./first.sh 

输出结果

[root@localhost /] ./first.sh 
/mnt
1.txt  2.txt  2.txt.10904.2024-04-23@17:17:22~	3.txt  hgfs
1.txt  2.txt  2.txt.10904.2024-04-23@17:17:22~	3.txt  hgfs  test.txt
我的第一个shell脚本

可以看出创建一个test.txt的文件然后cat查看文件内容

🌐Shell脚本注释规范

一个合格的Shell脚本程序应该遵守标准的脚本结构,而且能够更好输入友好的提示信息,更加容易读懂,对于比较多的代码,结果复杂的脚本,应添加必要的注释文字

注释是用于解释或说明代码的文本,可以提高代码的可读性和维护性。shell脚本中常用的注释方法有两种:

单行注释
  • 单行注释:以#开头,注释内容紧跟在#之后。

#!/bin/bash#第一个shell脚本
多行注释
  • 多行注释:使用<<EOF#!开头,注释内容写在两个标记之间。
<<EOF
!/bin/bash
这是我的第一个shell
EOF

®️注意事项

上述执行shell中直接通过 "./first.sh"的方式执行脚本,要求文件本身具有X权限在某些安全系统中可能无法满足条件。鉴于此,Linux内部还有很多调用Shell的方式,指定某个Shell来解释脚本语句,或者通过内部命令 source(或者点号 '.') 来价值文件中可以用来参考但,使用sh,"."也可以执行shell脚本如下:

chmod +x first.sh
./first.sh
​
. first.sh 
sh first.sh 
bash first.sh 
source first.sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1814231.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【吊打面试官系列-Mysql面试题】什么是通用 SQL 函数?

大家好&#xff0c;我是锋哥。今天分享关于 【什么是通用 SQL 函数&#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; 什么是通用 SQL 函数&#xff1f; 1、CONCAT(A, B) – 连接两个字符串值以创建单个字符串输出。通常用于将两个或多个字段合并为一个字段。 10…

40V/1A 步进电机驱动芯片SS6810R兼容BD68610

SS6810R是一款功能丰富的PWM电流驱动的双极低功耗电机驱动集成芯片&#xff0c;其工作电压范围&#xff1a;10V&#xff5e;40V&#xff1b;有两路H桥驱动&#xff0c;输出40V/1A&#xff1b;具有较大的输出能力和多种保护功能。它适用于各种电机驱动应用&#xff0c;能够提供稳…

Apollo9.0 PNC源码学习之Control模块(三)

本文将对Apollo的纵向控制器进行讲解&#xff0c;看完本文&#xff0c;你将会对百度Apollo的纵向控制有更深的理解 前面文章&#xff1a; Apollo9.0 PNC源码学习之Control模块&#xff08;一&#xff09; Apollo9.0 PNC源码学习之Control模块&#xff08;二&#xff09; 1 纵向…

c语言回顾-函数递归

1.递归的介绍 1.1什么是递归 递归是指在一个函数的定义中调用自身的过程。简单来说&#xff0c;递归是一种通过重复调用自身来解决问题的方法。 递归包括两个关键要素&#xff1a;基本情况和递归情况。基本情况是指当问题达到某个特定条件时&#xff0c;不再需要递归调用&am…

6.7.32 用于计算机辅助检测和诊断研究的精选乳房 X 线摄影数据集

由于在乳房 X 线摄影决策支持系统领域缺乏标准的评估数据集&#xff0c;已发表的研究结果很难复制&#xff1b;大多数乳房 X 线摄影中乳腺癌的计算机辅助诊断 (CADx) 和检测 (CADe) 算法都是在私人数据集或公共数据库的未指定子集上进行评估的。这导致无法直接比较方法的性能或…

MyBatis插件机制介绍与原理

插件简介 什么是插件 插件是一种软件组件&#xff0c;可以在另一个软件程序中添加功能或特性。插件通常被设计成可以 随时添加或删除 的&#xff0c;而不影响 主程序 的功能。插件可以 扩展 软件程序的功能&#xff0c;这让用户可以根据自己的需求定制软件&#xff0c;提高工作…

flutter报错You are currently using Java 1.8

flutter报错Could not run phased build action using connection to Gradle distribution ‘https://services.gradle.org/distributions/gradle-7.6.3-all.zip’.\r\norg.gradle.api.ProjectConfigurationException: A problem occurred configuring root project ‘android’…

物联网安全的优秀实践以及七种策略

大多数物联网安全漏洞都是可以预防的&#xff0c;甚至可能是全部。看看任何引人注目的物联网攻击&#xff0c;都会发现一个已知的安全漏洞。 2019年的Ring智能摄像头漏洞?用户可以创建弱密码并跳过多因素身份验证。2021年的Verkada监视服务攻击?该公司的系统中有太多的超级管…

SAP SO定价上面2个ZPR1 其中一个不活跃

查看价格表 取定价的时候排除不活动的 即可

冯喜运:6.12今日黄金原油行情还会涨吗?黄金原油独家操作策略

【黄金消息面分析】&#xff1a;据荷兰国际集团(ING)大宗商品策略师埃瓦?曼西(Ewa Manthey)称&#xff0c;黄金价格正面临来自美元走强和中国需求疲软的新阻力&#xff0c;但一旦美联储开始降息&#xff0c;黄金价格将恢复反弹。      【黄金技术面分析】&#xff1a;黄金…

易保全网络赋强公证系统,“公证赋强+科技赋能”双重增信

网络赋强公证系统是一种创新的法律服务模式&#xff0c;旨在通过线上方式赋予债权文书强制执行效力。具体来说&#xff0c;该系统结合了互联网技术与公证业务&#xff0c;允许公证机构根据当事人的申请&#xff0c;利用互联网公证技术手段对互联网上的债权文书进行公证&#xf…

基于深度学习的图像边缘和轮廓提取

导读&#xff1a;边缘和轮廓的提取是一个非常棘手的工作&#xff0c;细节也许就会被过强的图像线条掩盖&#xff0c;纹理&#xff08;texture&#xff09;本身就是一种很弱的边缘分布模式&#xff0c;分级&#xff08;hierarchical&#xff09;表示是常用的方法&#xff0c;俗称…

PWN环境配置

虚拟机安装 镜像下载网站(http://old-releases.ubuntu.com/releases/)虚拟机建议硬盘 256 G 以上&#xff0c;内存也尽量大一些。硬盘大小只是上界&#xff0c;256 G 不是真就占了 256G&#xff0c;而后期如果硬盘空间不足会很麻烦。lsb_release -a查看版本更换 ubuntu 镜像源…

【教程】怎么给网站添加弹窗广告代码javascript

由于最近支付宝悬赏领红包活动比较多邀请别人扫码自己也有奖励于是就想到了给自己网站上添加一个这种弹窗广告用户可以自己领取红包 效果图 代码也很简单下面附上代码 首先引入jquery <script src”https://pay.codewo.cn/static/index/user/assets/vendor/libs/jquery/j…

绘出你的梦中情人,AI绘画Stable Diffusion 万金油模型推荐 ,助你快速涨粉!

嘿&#xff0c;大家好&#xff0c;我是向阳 到目前为止&#xff0c;我已经分享了近百篇AI绘画类的文章教程以及模型分享 其中有些模型已经无法下载了&#xff0c;原因懂得自懂 你是否也和我一样&#xff0c;每天看着这样的小姐姐乐不思蜀&#xff0c;简单的提示词就能实现你…

用C#(WinForm)开发触摸屏,体验感满满

用C#&#xff08;WinForm&#xff09;开发触摸屏&#xff0c;体验感满满

基于粒子群优化算法的的微电网多目标优化调度----解析代码

前言&#xff1a; 写在这里&#xff0c;这是我小论文的方向&#xff0c;但是以前从来没有接触过微电网及优化调度算法&#xff0c;所以呢&#xff0c;开始展开积极自救。两个月前&#xff0c;我开始重拾Matlab编程以及最简单的微电网知识&#xff0c;以及看一些论文&#xff0c…

AI大模型探索之路-实战篇:智能化IT领域搜索引擎的构建与初步实践

系列篇章&#x1f4a5; No.文章1AI大模型探索之路-实战篇&#xff1a;智能化IT领域搜索引擎的构建与初步实践2AI大模型探索之路-实战篇&#xff1a;智能化IT领域搜索引擎之GLM-4大模型技术的实践探索3AI大模型探索之路-实战篇&#xff1a;智能化IT领域搜索引擎之知乎网站数据获…

【机器学习】基于CNN-RNN模型的验证码图片识别

1. 引言 1.1. OCR技术研究的背景 1.1.1. OCR技术能够提升互联网体验 随着互联网应用的广泛普及&#xff0c;用户在日常操作中频繁遇到需要输入验证码的场景&#xff0c;无论是在登录、注册、支付还是其他敏感操作中&#xff0c;验证码都扮演着重要角色来确保安全性。然而&am…

代码随想录:回溯19

332.重新安排行程 题目 给你一份航线列表 tickets &#xff0c;其中 tickets[i] [fromi, toi] 表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。 所有这些机票都属于一个从 JFK&#xff08;肯尼迪国际机场&#xff09;出发的先生&#xff0c;所以该行程必须从…