回顾:
文件管理、用户管理、权限管理、bash基础特性
1. 文件管理:cp, mv, rm
2. 用户管理:
useradd, usermod, chfn, chsh, chage, userdel
groupadd, groupmod, groupdel
passwd, gpasswd, pwck
id, finger, who, whoami, w
su
配置文件:/etc/passwd, /etc/shadow, /etc/group, /etc/gshadow
3. 权限管理:
chmod
chown
chgrp
-R, --reference=RFILE
FILE: 666 - umask
DIR: 777 -umask
umask [UMASK]
4. bash基础特性
命令行展开:~, {}
命令别名:alias/unalias
命令和路径补全
命令历史:history
glob:?, *, [], [^]
快捷键:Ctrl + [a,e,l,c,u,k]
命令hash: hash
bash 的基础特性(3)
1. 提供了编程环境
程序:指令 + 数据
程序编程风格:
过程式:以指令为中心,数据服务于指令
对象式:以数据为中心,指令服务于数据
shell 脚本:就是文本文件(必须遵循特性格式 - 第一行必须顶格写执行这个 shell 的解释器路径)
#!/bin/bash
#!/usr/bin/python
#!/usr/bin/perl
magic number: 魔数(程序的特征码,例如window的exe程序和linux的elf程序魔数就是不相同的)
运行脚本:
1. 给予执行权限,通过具体的文本路径指定文件执行(否则当成命令,去 $PATH 路径下去查找该命令)
2. 直接运行解释器,将脚本作为解释器的参数运行
变量:
命名的内存空间:
数据存储方式:ASCII
字符:110,24bit(一个字符占8bit)
数值:110,8bit(2^8)
变量:变量类型
作用:
1. 数据储存格式
2. 参与的运算(能够参与的运算)
3. 表示的数据范围
编程程序语言:
强类型:
弱类型:bash
把所有要存储的数据通通当做字符进行,不支持浮点数
运算:&&,||,!,异或(相同为假,不同为真)
短路运算:
与:
第一个为0,结果必定为0
第一个为1,第二个必须参与运算
或:
第一个为1,结果必定为1
第一个为0,第二个必须参与运算
例子:判断用户是否存在?存在则输出 exist,否则输出 no such a user;
id username &> /dev/null && echo 'exist' || echo 'no such a user'
网友评论