VMware软件下载地址: www.vmware.com
CentOS-7文件国内镜像下载:opsx.alibaba.com
创建文件夹C:\VMs\CentOS7.6
典型安装
选择稍后安装操作系统
客户机操作系统:linux,版本:CentOS7 64位
安装位置:C:\VMs\CentOS7.6
磁盘大小200G,存储为单个文件
内存:2G
处理器:2个
CD/DVD:选择CentOS-7文件路径
网卡:选择仅主机模式
选择检测并安装
设置时区,语言
选择GNOME Desktop安装
磁盘分区:手动分区,选择标准分区(Standard Partition)按以下表格进行手动分区:
/dev/sda 200G /dev/sda1 /boot 1G /dev/sda2 / 100G /dev/sda3 /data 50G /dev/sda4 扩展分区 /dev/sda5 swap 4G 打开网卡
设置root用户和密码,设置普通用户和密码
开始安装
shutdown[OPTION]...TIME[MESSAGE]
-r:重启
-h:关机
-c:取消
time是时间
whoami: 显示当前登录有效用户
who: 系统当前所有的登录会话
w: 系统当前所有的登录会话及所做的操作
screen -S创建会话
screen -x加入会话
exit 退出会话
screen -ls显示已打开的会话
Ctrl+a,d后台运行会话
screen -r恢复会话
echo -n不换行显示
echo -e启用\解释功能
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行
\t 插入tab
\\ 插入\字符
echo -E不支持\解释功能
echo "$PS1“ 显示变量内容
''单引号不识别命令和变量;``反单引号识别命令和变量;""双引号识别变量不识别命令
例:echo file{1,3,5}
打印:file1 file3 file5
echo {000..20..2} 输出从000到020步长为2
!n 执行history命令输出对应序号n的命令;
!-n 执行history历史中倒数第n个命令;
history -c清空历史命令;
history -n显示最近的n条命令;
cd 回去家目录
cd …返回上一级
cd - :返回刚才所在文件夹
cd ~回根目录
ls -a 包含隐藏文件
ls -l (别名:ll)显示额外的信息
ls -R 目录递归通过
ls -ld目录和符号链接信息
ls -i查看Inode编号
* 匹配零个或多个字符
*? 匹配任何单个字符
~ 当前用户家目录
~mage 用户mage家目录
~+ 当前工作目录
~- 前一个工作目录
[0-9] 匹配数字范围
[a-z]:字母
[A-Z]:字母
[wang] 匹配列表中的任何的一个字符
[^wang] 匹配列表中的所有字符以外的字符
[:digit:]任意数字;相当于0~9
[:lower:]任意小写字母
[:upper:]任意大写字母
作用:用来创建新的空文件;将已存在的文件的时间标签修改为系统当前的时间;
三个时间戳:
access time:访问时间,atime,读取文件内容;
modify time: 修改时间, mtime,改变文件内容(数据);
change time: 改变时间, ctime,元数据发生改变;
-a 仅改变 atime和ctime;
-m 仅改变 mtime和ctime;
-t :[[CC]YY]MMDDhhmm[.ss];
指定atime和mtime的时间戳;
-c 如果文件不存在,则不予创建;
cp -i:覆盖前提示
cp -r[R]:递归复制目录及内部所有内容
cp -a归档;保留属性
cp -u:--update 只复制源比目标更新文件或目标不存在的文件
cp --backup=numbered 目标存在,覆盖前先备份加数字后缀
rm删除命令:
rm -f: 强制删除
rm -r: 递归
mkdir创建目录
rmdir删除空目录
rm -r递归删除目录树
ln 命令创建;同一个节点编号;链接数增加;不能跨越驱动器或分区;
rm删除:链接数减少;链接数为0时,该文件被删除
ln -s命令创建指向另一个文件名;节点数不一样;不增加链接数;可以跨分区;
rm删除:删除文件后;软链接变红,无法进入文件;
支持的操作符号包括:
> 把STDOUT(正确的输出 )重定向到文件
2> 把STDERR(错误的输出)重定向到文件
&> 把所有输出重定向到文件
> 文件内容会被覆盖
>> 原有内容基础上,追加内容
格式:cmd1 | cmd2
cmd1有标准输出;cmd2有标准输入
tr -d:删除所有字符及的字符
tr -s:连续重复的字符以单独一个字符表示
cat -E: 显示行结束符$
cat -n: 对显示出的每一行进行编号
cat -A:显示所有控制符
cat -b:非空行编号
cat -s:压缩连续的空行成一行
tac:对cat上下反转
rev:对cat上下左右反转
more:翻页结束自动退出
less:"q"键退出
head -c #: 指定获取前#字节
head -n #: 指定获取前#行
head -#: 指定行数
tail -c #: 指定获取后#字节
tail -n #: 指定获取后#行
tail -#: 指定后几行
cut -f: -d结果选取第几段
cut -c: 只选中指定的这些字符
cut -d:指明分隔符抽取
例如:cut -d: -f1 /etc/passwd
格式:paste [OPTION]... [FILE]...
-d 分隔符:指定分隔符
-s : 所有行合成一行显示
例如:
paste f1 f2
paste -s f1 f2
wc story.txt
39 237 1901 story.txt
行数 字数 字节数
wc -l 只计数行数
wc -w 只计数单词总数
wc -c 只计数字节总数
wc -m 只计数字符总数
wc -L 显示文件中最长行的长度
sort -r 执行反方向(由上至下)整理
sort -R 随机排序
sort -n 执行按数字大小整理
sort -f 选项忽略(fold)字符串中的字符大小写
sort -u 选项(独特,unique)删除输出中的重复行
sort -t c 选项使用c做为字段界定符
sort -k X 选项按照使用c字符分隔的X列来整理能够使用多次
格式:uniq [OPTION]... [FILE]...
uniq -c: 显示每行重复出现的次数
uniq -d: 仅显示重复过的行
uniq -u: 仅显示不曾重复的行
常和sort 命令一起配合使用:
sort userlist.txt | uniq -c
grep --color=auto: 对匹配到的文本着色显示
grep -m # 匹配#次后停止
grep -v 显示不被pattern匹配到的行
grep -I 忽略字符大小写
grep -n 显示匹配的行号
grep -c 统计匹配的行数
grep -o 仅显示匹配到的字符串
grep -q 静默模式,不输出任何信息
grep -A # after, 后#行
grep -B # before, 前#行
grep -C # context, 前后各#行
grep -e 实现多个选项间的逻辑or关系
grep –e ‘cat ’ -e ‘dog’ file
grep -w 匹配整个单词
grep -E 使用ERE
grep -F 相当于fgrep,不支持正则表达式
字符匹配:
. 匹配任意单个字符
[] 匹配指定范围内的任意单个字符
[^] 匹配指定范围外的任意单个字符
[:alnum:] 字母和数字
[:alpha:] 代表任何英文大小写字符,亦即 A-Z, a-z
[:lower:] 小写字母
[:upper:] 大写字母
[:blank:] 空白字符(空格和制表符)
[:space:] 水平和垂直的空白字符(比[:blank:]包含的范围广)
[:cntrl:] 不可打印的控制字符(退格、删除、警铃...)
[:digit:] 十进制数字
[:xdigit:]十六进制数字
[:graph:] 可打印的非空白字符
[:print:] 可打印字符
[:punct:] 标点符号
匹配次数:用在要指定次数的字符后面,用于指定前面的字符要出现的次数
* 匹配前面的字符任意次,包括0次
贪婪模式:尽可能长的匹配
.* 任意长度的任意字符
\? 匹配其前面的字符0或1次
\+ 匹配其前面的字符至少1次
\{n\} 匹配前面的字符n次
\{m,n\} 匹配前面的字符至少m次,至多n次
\{,n\} 匹配前面的字符至多n次
\{n,\} 匹配前面的字符至少n次
位置锚定:定位出现的位置
^ 行首锚定,用于模式的最左侧
$ 行尾锚定,用于模式的最右侧
^PATTERN$ 用于模式匹配整行
^$ 空行
^[[:space:]]*$ 空白行
\< 或 \b 词首锚定,用于单词模式的左侧
\> 或 \b 词尾锚定;用于单词模式的右侧
\ 匹配整个单词
分组:\(\) 将一个或多个字符捆绑在一起,当作一个整体进行处理
示例:\(root\)\+
或者:\|
示例:a\|b: a或b; C\|cat: C或cat; \(C\|c\)at:Cat或cat