首页 > 系统相关 >Shell介绍

Shell介绍

时间:2024-07-17 19:30:33浏览次数:15  
标签:脚本 bin shell 操作系统 介绍 sh Shell

Shell是一种命令行界面程序,常用于与操作系统进行交互。它是操作系统的外壳,提供了一种用户使用操作系统功能的方式。

Shell可以理解为用户与操作系统之间的接口,用户通过输入命令来告诉操作系统要执行的操作,然后操作系统会执行相应的命令并返回结果给用户。Shell可以执行各种操作,包括文件操作、进程管理、网络通信等。

Shell的命令可以通过键盘输入,也可以通过脚本文件批量执行。脚本文件是一系列命令的集合,可以用来自动化执行一些任务。

常用的Shell包括Bourne Shell(sh)、Bourne Again Shell(bash)、C Shell(csh)、Korn Shell(ksh)等。不同的Shell有不同的语法和功能,但基本的概念和原理是相似的。

Shell是Unix和类Unix系统的核心组件,也被广泛应用于Linux系统和Mac OS X系统中。它是系统管理员、开发人员和高级用户的重要工具,可以用来管理系统、编写脚本、调试程序等。

总之,Shell是一种命令行界面程序,提供了用户与操作系统之间的交互接口,用于执行各种操作和管理系统。

1、是什么 

Shell是一个命令行解释器程序规范,他接受应用程序/用户命令,然后调用操作系统内核完成相关的功能。它是用户使用 Linux 的桥梁。简单来说Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。也可以这样认为,linux中的shell就是linux内核的一个外层保护工具,并负责完成用户与内核之间的交互

Shell还是一个功能相当强大的编程语言,易编写、易调试、灵活性强。 shell脚本就是一种专门使用shell编写的脚本程序,以.sh结尾的文件(xxx.c)。它虽然没有C++、Java、Python等一系列高级语言功能强大,但是在服务器运维领域以及嵌入式开发领域,shell脚本具有举足轻重的地位。

shell脚本编程如同其他编程语言的一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器()(shell成熟性)就可以运行了。

 

shell是一个linux程序,我们使用这个程序,可以输入一些命令,完成一些系统操作。当然shell也是一种语言,编写的shell脚本(.sh),可以放到shell程序中运行。

Shell主要功能:

1.命令解释:解释并执行用户输入的命令

2.脚本编写:允许用户编写脚本(脚本文件),以自动化重复性任务

3.进程控制:管理进程的启动、终止以及监控

4.文件管理:提供文件创建、删除、移动、复制等操作

5.输入输出重定向:运行用将命令的输出重定向到文件或者从文件读取输入

总结:

1.shell是操作系统的最外层,是一个用户跟操作系统之间交互的命令解释器,介于操作系统和用户之间,负责解释命令行;

2.大多数linux默认的shell命令解析器器bash /bin/bash

3.shell独立于内核,链接操作系统内核和应用程序的桥梁,shlle是内核周围的外壳

2 Linux常见的shell程序

常见的shell

linux有很多shell的实现,常见的有/bin/bash /bin/sh /bin/dash bin/rbash

sh与shell的关系: sh是链接到dash shell程序上面

ls -l /bin/ | grep sh

ls -l /bin/ | grep rbash

3、shell语言怎么用

⽅法 1:
1、建⽴XX.sh⽂件(shell脚本)
2、赋予我们shelll⽂件执⾏权限 chmod 744 hello.sh
3、执⾏shell⽂件。 ./hello.sh
⽅法 2:
1、建⽴.sh⽂件
2、bash + XX.sh /sh + xx.sh

#!/bin/bash
echo “hello,world”    #Shell 的 echo 指令是用于字符串的输出。命令格式:echo str

指定解释器:#!/bin/bash 指定了使用 Bash 作为脚本的解释器。Bash 是 Unix-like 系统中常见的一种 Shell 解释器。在执行脚本时,操作系统会根据 shebang 语句中的路径找到 Bash 解释器,并使用它来解释执行脚本内容;

特定语法支持:Bash 解释器相比其他 Shell 解释器,例如sh、dash 等,提供了更多的功能和语法扩展。因此,通过使用 #!/bin/bash,可以确保脚本中使用的特定 Bash 语法和功能能够被正确解释和执行;

兼容性:在大多数 Unix-like 系统中,Bash 解释器都是默认安装的,并且脚本中使用的许多常见 Shell 语法和命令都是基于 Bash 的。使用 #!/bin/bash 可以提高脚本的可移植性,并确保在不同系统上都能正确执行;

标签:脚本,bin,shell,操作系统,介绍,sh,Shell
From: https://blog.csdn.net/weixin_62789590/article/details/140503395

相关文章

  • 在 PowerShell 中Get-WmiObject Win32_PhysicalMemory,SMBIOSMemoryType 是一种用于描
    在PowerShell中Get-WmiObjectWin32_PhysicalMemory,SMBIOSMemoryType是一种用于描述系统中物理内存类型的属性。数字26表示特定的内存类型,具体为DDR4内存。每种内存类型在SMBIOS(SystemManagementBIOS)规范中都有一个对应的数字码,用来标识不同类型的内存。以下是一些常见......
  • HTTP请求五类状态码详细介绍,以及部分处理思路
    HTTP请求状态码分为五类: 一.消息系列二成功系列三.重定向系列四.请求错误系列五.服务器端错误系列302:临时转移成功,请求的内容已转移到新位置403:禁止访问500:服务器内部错误401代表未授权。以下是常见的一些状态码:1xx(信息性状态码)100Continue:继续,表明客......
  • 【Powershell】超越限制:获取Azure AD登录日志
    你是否正在寻找一种方法来追踪AzureActiveDirectory(AzureAD)中用户的登录活动?如果是的话,查看AzureAD用户登录日志最简单的方法是使用MicrosoftEntra管理中心。打开https://entra.microsoft.com/,然后进入监视和健康状况->登录日志这里查看到的是全部用户的登录日......
  • STM32学习(1)--STM32介绍
    STM32介绍1.STM32简介2.ARM3.STM32F103C8T64.外设5.命名规则6.系统结构7.引脚定义8.启动配置9.最小系统电路课程知识及代码来源均来自b站江协科技,下学期即将做毕设,需要用到STM32单片机,在这个假期我将持续学习相关知识1.STM32简介STM32是ST公司基于ARMCortex-M内......
  • 【Linux杂货铺】期末总结篇4:shell编程
    ......
  • 使用Python编写webshell及防范措施
    本文使用python编写一个简单的webshell脚本,并讨论如何防范webshell。 文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言        在渗透测试和网络安全领域,Webshell是一种用于远程控制和管理受害服务器的工具。Webshell通常是一个脚......
  • 【相机标定】标定板介绍以及优缺点分析
    【相机标定】标定板介绍以及优缺点分析背景介绍附赠自动驾驶最全的学习资料和量产经验:链接准确标定像机对于所有的机器/计算机视觉的成功应用都是非常重要的。然而,对于标定板,有不同的模式可供选择。为了方便进行选择,本文将解释每种方法的主要好处。标定板的选择,有Charu......
  • 杜比音效介绍及设置方式
        在视听艺术的浩瀚宇宙中,音效如同魔法般的力量,能够瞬间将听众带入另一个时空,无论是电影中的惊心动魄,还是游戏内的紧张刺激,亦或是音乐里的细腻情感,杜比音效都是那个幕后英雄,让每一次听觉体验都变得生动无比。自上世纪70年代以来,杜比实验室以其革命性的音频处理技术,彻......
  • 【工具介绍】Yakit——爆破与未授权检测
    声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。文章目录功能背景使用方法参数解释本文介绍了Yakit爆破与未授权检测功能。详情见《Yakit手册》。功能背景爆破和未授权检测是网络安全......
  • 【工具介绍】nuclei-yaml脚本编写
    文章目录YAML脚本语法基础nuclei模板语法常见使用场景命令执行sql延时注入任意文件读取跨站脚本攻击反序列化漏洞弱密码文件上传nuclei是一款基于Go语言开发的快速、灵活的自动化漏洞扫描工具,它使用YAML格式的模板来定义扫描规则。YAML(YAMLAin’tMarkupLa......