【shell基础学习】

简介: 【shell基础学习】

今天为大家带来了shell的基础学习

一.基础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.位置参数变量


位置参数变量

作用

 $n: n为数字,$0代表命令本身,$1-$9代表第到第九个参数,十以上的参数需要用大括号包含,如$(10].

 $* :   这个变量代表命令行中所有的参数,$*把所有的参数看成一个整体

$@:   这个变量也代表命令行中所有的参数,不过$@把每个参数区分对待

$#:  这个变量代表命令行中所有参数的个数

9.预定义变量

预定义变量:$?

$!$?:0;0()

:   当前进程的进程号(PID)

$! :    后台运行的最后一个进程的进程号 (PID)

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.配置文件

  shell登录信息

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

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

谢谢大家今天的学习。

相关文章
|
7月前
|
关系型数据库 MySQL Shell
shell学习(十七) 【mysql脚本备份】
shell学习(十七) 【mysql脚本备份】
52 0
|
2月前
|
监控 Unix Shell
shell脚本编程学习
【10月更文挑战第1天】shell脚本编程
71 12
|
7月前
|
Linux Shell 文件存储
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(深入df和dh的区别和探索)
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(深入df和dh的区别和探索)
193 1
|
7月前
|
监控 Linux Shell
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)
在线上排查问题时,查询日志、查看系统配置和分析操作系统信息是至关重要的。这些操作可以帮助我们深入了解软件和服务的兼容性,并解决潜在的问题。在本次学习中,我们将介绍并深入学习一些我在处理类似问题时常用的指令。通过掌握这些指令,你将能够更加高效地定位和解决线上问题,提高系统的稳定性和性能。让我们一同进入这个学习过程吧!
83 0
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)
|
5月前
|
Shell Linux
Shell 脚本编程学习
Shell 脚本编程学习
38 0
|
6月前
|
人工智能 运维 中间件
Linux-shell简单学习
Linux-shell简单学习
33 0
|
7月前
|
运维 Shell Python
Shell和Python学习教程总结
Shell和Python学习教程总结
|
7月前
|
机器学习/深度学习 Shell Linux
shell 学习记录
shell 学习记录
33 0
|
7月前
|
Shell
shell学习(六) 【case多条件分支语句】
shell学习(六) 【case多条件分支语句】
104 1
|
7月前
|
Shell 应用服务中间件 nginx
shell学习(七) 【shell 函数】
shell学习(七) 【shell 函数】
44 1