shell学习笔记

echo

echo [选项] [输出内容]
选项:
-e: 支持反斜线控制的字符转换

\\ 输出\本身
\a 输出警告音
\b 退格键,也就是向左删除键
\c 取消输出行末的换行符。和“-n”选项一致
\e ESCAPE 键
\f 换页符
\n 换行符
\r 回车键
\t 制表符,也就是 Tab 键
\v 垂直制表符
\0nnn 按照八进制 ASCII 码表输出字符。其中 0 为数字零,nnn 是三位
八进制数
\xhh 按照十六进制 ASCII 码表输出字符。其中 hh 是两位十六进制数

#!/bin/bash

shell脚本开头

脚本的执行

1 首先要赋予脚本x权限,输入脚本的绝对路径或相对路径 /root/helloWorld.sh ./helloWorld.sh
2 不用赋予脚本+x权限,sh /root/helloWorld.sh sh helloWorld.sh

变量

1 查看变量
set 显示当前 shell 中所有变量
env显示所有的环境变量
2 定义变量
变量=值
变量定义规则
(1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头。
(2)等号两侧不能有空格
(3)变量名称一般习惯为大写
(4)双引号和单引号有区别,双引号仅将空格脱意,单引号会将所有特殊字符脱意

3 将命令的返回值赋给变量
A=ls -la 反引号,运行里面的命令,并把结果返回给变量 A
A=$(ls -la) 等价于反引号
4 设置环境变量
export 变量名=变量值 (功能描述:设置环境变量的值)
echo $变量名 (功能描述:查询环境变量的值)
source 配置文件 (功能描述:让修改后的配置信息立即生效 )

5 参数
$n (功能描述:n 为数字,$0 代表命令本身,$1- 9 代 表 第 一 到 第 九 个 参 数 , 十 以 上 的 参 数 , 十 以 上 的 参 数 需 要 用 大 括 号 包 含 , 如 9 代表第一到第九个参数,十以上 的参数,十以上的参数需要用大括号包含,如 9{10})
∗ ( 功 能 描 述 : 这 个 变 量 代 表 命 令 行 中 所 有 的 参 数 , * (功能描述:这个变量代表命令行中所有的参数, *把所有的参数看成一个整体)
@ ( 功 能 描 述 : 这 个 变 量 也 代 表 命 令 行 中 所 有 的 参 数 , 不 过 @ (功能描述:这个变量也代表命令行中所有的参数,不过 @@把每个参数区分对待)
$# (功能描述:这个变量代表命令行中所有参数的个数)

6 预定义变量
$? (功能描述:最后一次执行的命令的返回状态。如果这个变量的值为0,证明上一个命令正确执行;如果这个变量的值为非0(具体是哪个数,由命令自己来决定),则证明上一个命令执行不正确了。)
$$ (功能描述:当前进程的进程号(PID))
$! (功能描述:后台运行的最后一个进程的进程号(PID))

7 运算符
(1)“ ( ( 运 算 式 ) ) ” 或 “ ((运算式))”或“ (())[运算式]”
(2)expr m + n expr 运算符间要有空格
8 条件判断
[ condition ](注意 condition 前后要有空格)
1)两个整数之间比较
= 字符串比较
-lt 小于
-le 小于等于
-eq 等于
-gt 大于
ge 大于等于
-ne 不等于
2)按照文件权限进行判断
-r 有读的权限
-w 有写的权限
-x 有执行的权限
3)按照文件类型进行判断
-f 文件存在并且是一个常规的文件
-e 文件存在
-d 文件存在并是一个目录
8 read 读取控制台输入

read(选项)(指定读取值的变量名)
选项:
-p:指定读取值时的提示符;
-t:指定读取值时等待的时间(秒)。

9 流程控制
(1)if

	if [ 条件判断式 ];then
 		程序
	fi
	或者
	if [ 条件判断式 ]
	 then
	 程序
	fi
	注意事项:(1)[ 条件判断式 ],中括号和条件判断式之间必须有空格

(2)case

case $变量名 in
 "值 1")
 如果变量的值等于值 1,则执行程序 1
 ;;
 "值 2")
 如果变量的值等于值 2,则执行程序 2
 ;;
 …省略其他分支…
 *)
 如果变量的值都不是以上的值,则执行此程序
 ;;
esac

3)for

for 变量 in 值 1 值 2 值 3…
 do
 程序
 done

(4)while

while [ 条件判断式 ]
 do
 程序
 done

10

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学习Shell命令时,以下是一些重要的注意事项和学习建议: 1. 基本语法:Shell命令通常由命令名称和参数组成。命令名称是要执行的操作,而参数则提供了命令所需的信息。了解Shell命令的基本语法是学习的第一步。 2. 命令帮助:大多数Shell都提供了内置的命令帮助功能。通过使用命令后跟`--help`或`-h`选项,或者使用`man`命令(例如`man ls`)来获取有关特定命令的详细信息。 3. 常用命令:有一些常见的Shell命令对于日常使用非常有用。这些包括`cd`(更改目录)、`ls`(列出目录内容)、`mkdir`(创建目录)、`rm`(删除文件或目录)等。逐步学习和掌握这些命令是很重要的。 4. 管道和重定向:Shell命令非常强大,可以通过管道和重定向符号将多个命令组合在一起。了解如何使用管道(`|`)将一个命令的输出作为另一个命令的输入,并使用重定向符号(`>`、`>>`、`<`)来控制输入和输出。 5. 脚本编写:Shell脚本是一种将多个命令组合在一起以自动化任务的方法。学习如何编写简单的Shell脚本可以提高工作效率。 6. 实践和练习:最重要的是进行实践和练习。尝试使用不同的Shell命令来完成各种任务,并在实际场景中应用所学知识。 记住,Shell命令的学习是一个逐步的过程。开始时可能会有些困惑,但随着实践和经验的积累,你会变得越来越熟练。希望这些提示对你有帮助!如有任何具体问题,随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值