shell基础学习(命令解释器)

简介: 1.echo输出命令语法:echo [选项] [输出内容]

一.基础shell

1.echo输出命令

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


选项: -e:支持反斜线控制的字符转换


                     \\:输出\本身


                     \b:退格键


                     \n:换行符


                     \t:制表符


                     \v:垂直制表符


2.脚本执行

chmod 755 hello.sh赋予执行权限,直接运行

./hello.sh

通过bash调用执行文件

bash helle.sh

脚本文件转换:win转unix:dos2unix [文件名]


                                  unix转win:unix2dos


3.历史命令

      语法:history [选项] [历史保存文件]


历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile中进行修改


      选项:


             -c:清空历史命令


             -w:把缓存中的历史命令保存文件【~/.bash_history】


4.别名

      alias 自定义名称 = 命令


      永久生效:/root/.bashrc


      unalias:删除别名


5.多命令顺序执行

      ; :多个命令执行,没有逻辑关系


      &&:当命令1正确执行,则命令2才执行,命令1执行错误,2则不执行


      ||:当命令1执行不正确,则命令2才执行,执行正确,命令2不执行


格式:命令1&&命令2


6.本地变量

      变量定义:name=“love 233”


      变量叠加:aa=123


                           aa=“$aa”456


                           aa=${aa}789


      变量调用:echo $name


      变量查看:set


      变量删除:unset name


7.环境变量

      申明变量:export 变量名=变量值


      查询变量:env


      删除变量:unset 变量名


8.位置参数变量

   

9.预定义变量


10.键盘输入

语法:read 【选项】 【变量名】


      选项:


             -p“提示信息”:在等待read输入时,输出提示信息


             -t 秒数:read命令等待用户的指定时间


             -n 字符数:read命令只接受指定的字符数,在到达指定字节自动下一步


             -s:隐藏输入的数据


11.变量类型

      1.declare 声明变量类型

             语法:declare [+/-] [选项] 变量名


                    选项:


                           -:给变量设定类型属性


                           +:取消变量的类型属性


                           -i:将变量声明为整数型


                           -x:将变量声明为环境变量


                           -p:显示指定变量的被声明的类型


      2.expr或let数值运算工具

             格式:变量名=$(expr $aa + $bb)   #运算符两侧加空格


      3.  $((运算符)) 或 $[运算符]

12.变量测试与内容替换



13.配置文件

      source命令  让配置文件直接生效


      语法:source 配置文件


      或:              .配置文件


14.配置文件



 2.登录后欢迎信息:/etc/motd


      不管是本地,还是远程登录,都可以显示此欢迎信息


二.正则表达式


字符截取命令-cut

格式:cut [选项] 文件名


选项:

       -f列号:提取第几列


       -d分割符:按照指定分割符分割列


2.    字符截取命令-printf命令

      格式:printf ‘输出类型输出格式’  输出内容


      输出类型:


             %ns:输出字符串,n是数字指定输出第一个字符


             %ni:输出整数


             %m.nf:输出浮点型,m和n是数字,指代输出的整数位数和小数位数。


3.截取命令-awk命令:

      格式:awk ‘条件1{动作1} 条件2{动作2}’ 文件名


      条件:一般使用关系表达式作为条件


             条件:


‘BEGIN {动作}‘  #在开始的时候执行什么动作


‘END{动作}’  #在结尾执行什么动作


      动作:格式化输出,流程控制语句


             动作:


                    {FS=‘’} #指定分割符


4.字符截取-sed命令

      格式:sed [选项] ‘[动作]’  文件名


      选项:


      -n:只会把经过处理的行输出


      -e:允许对输入数据应用多条sed命令编辑


      -i:用sed的修改结果直接修改读取数据的文件,而不是由屏幕输出


动作:



5.排序

相关文章
|
8月前
|
存储 Unix Shell
Shell 输出命令完全指南:echo 与 printf 的深度剖析
本文深入解析了 Shell 编程中 `echo` 和 `printf` 两个核心输出命令的用法与区别。`echo` 简单易用,适合基础输出;`printf` 功能强大,支持复杂格式化。文章从语法、转义序列、高级技巧到实际应用场景(如日志记录、进度显示)逐一讲解,并对比两者的性能与适用场景,帮助开发者根据需求灵活选择。最后通过进阶技巧和常见问题解答,进一步提升对两者的掌握程度。
391 1
|
9月前
|
网络协议 Shell 网络安全
面试官想听的不仅是命令——如何结构化回答“容器无Shell时如何测试外网”?
“说说看,如果一个Pod的容器没有Shell,如何测试它能否访问外网?”
面试官想听的不仅是命令——如何结构化回答“容器无Shell时如何测试外网”?
|
11月前
|
运维 Shell 数据库
Python执行Shell命令并获取结果:深入解析与实战
通过以上内容,开发者可以在实际项目中灵活应用Python执行Shell命令,实现各种自动化任务,提高开发和运维效率。
320 20
|
11月前
|
安全 Shell 数据处理
使用Python执行Shell命令并获取结果
在实际应用中,可以根据需要选择适当的参数和方法来执行Shell命令,并处理可能出现的各种情况。无论是系统管理、自动化任务还是数据处理,掌握这些技巧都将极大地提高工作效率。
366 12
|
人工智能 Shell iOS开发
AI Shell:在命令行里“对话” AI ,微软推出将 AI 助手引入命令行的 CLI 工具,打造对话式交互命令行
AI Shell 是一款强大的 CLI 工具,将人工智能直接集成到命令行中,帮助用户提高生产力。AI Shell 支持多种 AI 模型和助手,通过多代理框架提供丰富的功能和灵活的使用模式。
1623 7
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
317 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
Java Shell Windows
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
282 1
|
3月前
|
存储 安全 Unix
七、Linux Shell 与脚本基础
别再一遍遍地敲重复的命令了,把它们写进Shell脚本,就能一键搞定。脚本本质上就是个存着一堆命令的文本文件,但要让它“活”起来,有几个关键点:文件开头最好用#!/usr/bin/env bash来指定解释器,并用chmod +x给它执行权限。执行时也有讲究:./script.sh是在一个新“房间”(子Shell)里跑,不影响你;而source script.sh是在当前“房间”里跑,适合用来加载环境变量和配置文件。
420 9
|
3月前
|
存储 Shell Linux
八、Linux Shell 脚本:变量与字符串
Shell脚本里的变量就像一个个贴着标签的“箱子”。装东西(赋值)时,=两边千万不能有空格。用单引号''装进去的东西会原封不动,用双引号""则会让里面的$变量先“变身”再装箱。默认箱子只能在当前“房间”(Shell进程)用,想让隔壁房间(子进程)也能看到,就得给箱子盖个export的“出口”戳。此外,Shell还自带了$?(上条命令的成绩单)和$1(别人递进来的第一个包裹)等许多特殊箱子,非常有用。
310 3
|
6月前
|
Shell
Shell脚本循环控制:shift、continue、break、exit指令
使用这些命令可以让你的Shell脚本像有生命一样动起来。正确使用它们,你的脚本就能像一场精心编排的舞蹈剧目,既有旋律的起伏,也有节奏的跳跃,最终以一场惊艳的表演结束。每一个动作、每一个转折点,都准确、优雅地完成所需要表达的逻辑。如此,你的脚本不只是冰冷的代码,它透过终端的界面,跳着有节奏的舞蹈,走进观众——使用者的心中。
270 60