Linux---Day7

短路逻辑运算:

与:一个为假结果一定为假
或:一个为真结果一定为真
非:
抑或:
1:真 0:假

变量类型:

字符
数值
--- 整形
--- 浮点型

shell:弱类型编程语言
强:变量在使用前必须事先声明,甚至还需要初始化;
--- NULL:空
弱:变量随用随声明:甚至不区分类型;

变量赋值:VAR_NAME=VALUE

bash: 变量类型:

--- 环境变量
--- 本地变量(局部变量)
--- 位置变量
--- 特殊变量(bash内置)

环境变量:作用域为当前shell进程及子进程

export VARNAME = VALUE ''导出''
/VARNAME = VALUE
/export VARNAME
脚本在进行时会启动一个子shell进程;命令行中启动的脚本会继承当前shell环境变量。系统自动执行的脚本(非命令行启动)就需要自我定义各种环境变量。

本地变量:

VARNAME = VALUE:作用域整个bash进程
局部变量:
local VARNAME = VALUE 作用域为当前代码段
---- bash:

位置变量:用于引用脚本参数

$1, $2, ...

特殊变量:

用于保存特殊数据:$?: 用于保存上一个的命令执行状态返回值
程序执行后可能有两类返回值:程序执行结果 / 程序状态返回代码
(0:正确执行 / 1-255:错误执行)

引用变量:${VAR_NAME}(花括号某些情况可省略)

内部有变量,想完成变量替换使用双引号

撤销变量:unset VARNAME(撤销变量本身)

查看当前shell中的变量:
set
查看当前shell中的环境变量:
printenv
env
export

###附加变量内容
animals=pig
animals=$animals:goat
echo $animals
pig:goat

nano first.sh
cat /etc/fstab
ls /var

bash first.sh

!shell默认所有变量为字符串,无法对变量进行逻辑运算
脚本即为命令的堆砌,结合命令流程控制机制实现的语言程序。
shebang: magic number 魔数 #! /bin/bash

输出重定向:
> 覆盖重定向
>> 追加重定向
2> 错误重定向
2>> 错误追加重定向
&> 同时重定向
dev/null 软件模拟设备, bit bucket,数据黑洞

  1. 添加5个用户,user1-user5:
  2. 每个用户的密码同用户名,且要求,添加密码完成后不显示passwd命令的执行结果,添加完成后显示某某已经成功添加:
  3. 写一个脚本:
    3.1使用一个变量,保存一个用户名
    3.2删除此变量中的用户,且一并删除其家目录
    3.3显示用户‘删除完成’的信息

ps: &>可以将错误信息或者普通信息都重定向输出

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容