【Shell编程】Shell基本概述与脚本执行方式

简介: 【Shell编程】Shell基本概述与脚本执行方式

概述

Shell是什么?

Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。

Shell还是一个功能相当强大的编译语言,易编译,易调试,灵活度较强,Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令

Shell的分类

Bourne Shell:从1979年去Unix就开始使用Bouren Shell,它的主文件名就是sh。

C Shell:主要在BSD版的Unix系统中使用,其使用语法和c语言类似而出名。

Shel的俩种主要语法类型有Bourne 和C,这俩种语法彼此不兼容,Bourne家族主要包括sh,ksh,Bash,psh,zsh;C家族主要包括csh,tcsh;

Bash:Bash和sh兼容,现在使用的Linux就是使用Bash作为用户的基本Shell。


Linux支持的Shell

命令: /etc/shells

脚本执行方式

echo输出命令

语法:echo [选项] [输出内容]

-e 支持反斜杠控制的字符转换


不加-e就原封不动的输出,加了后就会进行转换等

控制字符表

实例-测试退格符

命令:

echo "ab\bc"
echo -e "ab\bc"


运行效果:

实例-测试退格符和换行符

实例-按照十六进制ASCII码输出


实例-按照颜色输出

\e[1开始颜色输出 \e[0m关闭颜色输出

部分颜色对应表:30黑色,31红色,32绿色,33黄色,34蓝色,35洋红,36青色,37白色

命令:echo -e "\e[1;颜色值m 字符串 \e[0m"


第一个脚本

使用vim命令 打开一个文件(创建一个文件)。

vim hello.sh
\#!/bin/Bash     #格式不能省略,表示以下写的程序是Shell程序
\#The first program
\#Auther:linxi (E-mail:linxi@qq.com)
echo -e "国庆快乐"

脚本执行

  • 赋予执行权限,直接运行
    chmod 755 hello.sh
    ./hello.sh
  • 通过bash调试执行脚本(不需要执行权限)
    bash hello.sh


其他

cat -A 文件名 可以查看文件隐藏字符,这里的$为换行符

windows编写的脚本换行符为^M$ Linux环境下编写的换行符为$

winodws转换Linux换行符转换命令 语法:dos2unix 文件名

同理Linux转Winodws就是 unix2dox 文件名


目录
相关文章
|
2月前
|
Unix Shell Linux
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
本文提供了几个Linux shell脚本编程问题的解决方案,包括转置文件内容、统计词频、验证有效电话号码和提取文件的第十行,每个问题都给出了至少一种实现方法。
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
|
1月前
|
Shell
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
75 1
|
2月前
|
Shell Linux
Linux shell编程学习笔记30:打造彩色的选项菜单
Linux shell编程学习笔记30:打造彩色的选项菜单
|
19天前
|
Shell Linux 测试技术
6种方法打造出色的Shell脚本
6种方法打造出色的Shell脚本
42 2
6种方法打造出色的Shell脚本
|
6天前
|
XML JSON 监控
Shell脚本要点和难点以及具体应用和优缺点介绍
Shell脚本在系统管理和自动化任务中扮演着重要角色。尽管存在调试困难、可读性差等问题,但其简洁高效、易于学习和强大的功能使其在许多场景中不可或缺。通过掌握Shell脚本的基本语法、常用命令和函数,并了解其优缺点,开发者可以编写出高效的脚本来完成各种任务,提高工作效率。希望本文能为您在Shell脚本编写和应用中提供有价值的参考和指导。
17 1
|
10天前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
29 2
|
24天前
|
监控 网络协议 Shell
ip和ip网段攻击拦截系统-绿叶结界防火墙系统shell脚本
这是一个名为“小绿叶技术博客扫段攻击拦截系统”的Bash脚本,用于监控和拦截TCP攻击。通过抓取网络数据包监控可疑IP,并利用iptables和firewalld防火墙规则对这些IP进行拦截。同时,该系统能够查询数据库中的白名单,确保合法IP不受影响。此外,它还具备日志记录功能,以便于后续分析和审计。
43 6
|
21天前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
1月前
|
Shell
Shell编程(下)
Shell编程(下)
88 1
|
1月前
|
Shell Linux Windows
Shell编程(上)
Shell编程(上)
40 1