Linux基本操作复习

 history 5 # 列出最近五个记录
# !ls 	  # 执行最后一次以ls开头的命令

变量:

  • 环境变量:系统提供,不用定义,可以修改
  • 内部变量:系统提供,不用定义,不能修改
  • 用户变量:用户定义,可以修改

内部变量在程序中用来作出判断。在shell程序内这类变量的值不能i修改。如:

$# 传送给shell程序的位置参数的个数
$? 命令执行后返回的状态
$0 当前执行的进程的名称
$* 调用shell程序时所传送的全部参数组成的字符串

 

测试脚本:

echo "参数的个数是: " $# 
echo "当前执行的进程的名称: " $0
echo "把传入参数作为一个字符串: " $*

注意:在给变量赋值时,等号两边一定不能留空格,若变量中本身就包含了空格,则整个字符串要用双引号括起来

            在给变量赋值的过程中也是声明一个变量的过程

给某个变量设置只读属性 readonly

  • 变量清除 unset

  • 在shell脚本中通常使用$1 $2 $3 来访问第几个位置的参数
# 名字展示脚本
if [ $# -eq 0 ]
then
echo "没有提供名字"
else
echo "你的名字是 $1"
fi

  • 特殊字符
特殊字符
字符说明
$直初shell变量名的开始
把标准输出通过管道传送到下个命令
#标记注释开始
&在后台执行进程
匹配一个字符
*匹配一个或多个字符
>输出重定向操作符
输入重定向操作符
>>

输出重定向操作符{添加到文件}

<<跟在输入结束字符串后(HERE)操作符
[]列出字符的范围
[a-z]意指a到z的全部字符
[a,z]指a或者z字符

 

  • 如下可以看出 单引号可以阻止解析环境变量

  • 反斜杠\ 可以阻止shell把后面的字符解释为特殊字符。

  • 使用反引号可以将执行命令的结果存入变量中

  • . 和./的作用一样都是执行当前目录下的可执行文件

  • 管道:可以通过管道把一个命令的输出传递给另一个命令作为输入。管道用竖杠 | 表示

格式 命令1 | 命令2

ls -l | grep "test.txt"

  • $[] 表示形式告诉shell对方括号中的表达式求值

echo $[2+8]

echo $((2+8))

echo `expr 2 + 8`

  • 赋值运算符
=
+=
-=
*=
/=
%=
&=
^=
|=
<<=
>>=
  • read语句可以从键盘或文件的某一行文本中读入信息,并将其赋给一个变量

如果只指定一个变量,那么read将会把所有的输入赋给该变量,直到遇到第一个文件结束符或回车;

如果给出了多个变量,他们呢按顺序分别被赋予不同的变量,shell将用空格作为变量之间的分隔符

  • test命令用于计算一个条件表达式的值,其经常在条件语句和循环语句中被用来判断某些条件是否满足

test expresion 或者 [expression]

 

数字比较
-eq比较两个数是否相等
-ne比较两个数是否不等
-gt比较一个数是否大于另一个数
-ge比较一个数是否大于或等于另一个数
-lt比较一个数是否小于另一个数
-le比较一个数是否小于或等于另一个数字

 

字符串比较
-=比较两个字符串是否相等
!=比较两个字符串是否不相等
-z判断字符长度是否等于0,等于就是 “是”
-n判断字符长度是否大于零,大于零则为"是"
文件操作符
-e如果文件存在则为真
-r确定是否对文件设置了读许可
-w确定是否对文件设置了写许可
-x确定是否对文件设置了可执行许可
-s确定文件是否具有大于零的长度
-d确定文件是否为目录
-f确定文件是否为普通文件
-L确定文件是否为符号连接文件

exist read write excute size directory file link

  • 逻辑操作符

逻辑操作符用来根据规则比较表达式。!, -a ,-o字符表示 NOT AND OR

! 求反逻辑表达式

-a 逻辑与表达式

-o 逻辑或表达式、

p78

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值