第四章 组合命令及命令分类
一、命令分类
1、目录操作命令(6个)
ls tree pwd cd mkdir rmdir
2、文件操作命令(6个)
touch cp mv rm ln find
3、文件查看及处理命令(13个)
cat more less grep head tail cut sort uniq wc dos2unix find
diff egrep tree chattr revtac paste iconv file dd lsattr rename
4、文件打包压缩命令(5个)
gzip bzip2 tar unzip gunzip
5、信息显示命令
uname hostname dmesg uptime file stat du df top free w date cal apropos
6、搜索文件命令
which whereis locate find
7、用户管理命令
useradd adduser userdel passwd chage usermod id su sudo visudo pwcov pwck
pwunconv chfn chsh finger sudoedit
8、用户组管理命令
groupadd groupdel groupmod gpasswd groups newgrp grpck grpconv grpunconv
9、基本网络操作命令
telnet ssh scp wget ping route ifconfig ifup ifdown netstat
10、安全审计类命令
last lastlog who w lastb history
二、组合命令
1、批量创建文件夹
seq-s "," -f "t%01g" 1 5 | xargs mkdir
2、取消passwd的交互信息,直接修改密码
echo123456 | passwd --stdin wddg
3、将/data目录下所有包含app的目录打包
tar cvzfapp.tar.gz `find . type d -name app` #`是反引号
4、按照空间大小对目录(只查一层)下的文件夹和文件排序
du –sh --max-depth=1/wddg |sort -nr|more
第五章 符号
1、输出重定向
> 或 1> : 将输出的内容写入后面的文件,会删除文件原内容
>>或 1>> : 将输出的内容追加到后面的文件,不会删除文件原内容
date> 1.txt
date>> 1.txt
2、输入重定向
< 或 <0 : 用于改变命令的输入,指定输入内容,后面跟文件名
<<或 <<0 : 后面跟字符串,用来表示输入结束,也可用ctrl+d来结束输入
3、错误重定向
2> : 把错误信息输入到后面的文件中,会删除文件原内容
2>>: 把错误信息追加到后面的文件,不会删除文件原内容
4、标准输入输入
标准输入(stdin):代码为0,使用<或<<。从右向左
cat> oldboy.txt <<EOF
>`date`
>EOF
catoldboy.txt
Thu Jan 5 21:45:22 CST 2017
标准输出(stdout): 代码为1,使用>或>>。从左向右
echo'aaaa' > a.txt
标准错误输出(stderr): 代码为2,使用2>或2>>。
datedd2> 1.txt
cat1.txt
-bash: datedd: command not found
特殊表示:
2>&1:把标准错误重定向到标准输出(也可用>&)
第六章 管道
管道是Linux中很重要的一种通信方式,从本质上说,管道也是一种文件。是把一个程序的输出直接连接到另一个程序的输入,数据只能由一个进程流向另一个进程(其中一个读管道,一个写管道);如果要进行双工通信,需要建 立两个管道。管道只能用于父子进程或者兄弟进程间通信。,也就是说管道只能用于具有亲缘关系的进程间通信。
1、管道命令:"|"多个命令的组合,
2、格式如下:
command 1 | command 2 | command 3 ……
3、可以直接用于管道的常用命令
ls、cut、grep、sort、uniq、wc、tee、tr、col、join、paste、expand、xargs
ls -l | wc -l
4、不可以直接用于管道的命令需要借助xargs命令:
find ./ -type f |xargs md5sum >> md5_rc1.txt
find ./ -typef -print| xargs md5sum >> md5_rc1.txt
find ./ -typef -print0| xargs -0 md5sum >> md5_rc1.txt
其中,第一种和第二种的结果相似,第三种是适用于文件名含有空格的文件。原理是:通常xargs用于隔断文件是默认为:空格、TAB、换行符等,-print0则是以NULL隔断文件,xargs -0 就是以NULL来区分文件隔断
第七章 工具集
1、文本比较
diff:简单比较
vimdiff:可视化比较
2、yum
(1)说明:Yellowdog Updater Modified,is aninteractive, rpm based, package manager
(2)查看:cat/etc/yum.repos.d/CentOS-Base.repo
(3)下载yum配置文件:
进入163开源镜像:http://mirrors.163.com/
选择CentOS使用帮助:http://mirrors.163.com/.help/centos.html
选择CentOS6下载:CentOS6-Base-163.repo
wgethttp://mirrors.163.com/.help/CentOS6-Base-163.repo
(4)备份原有yum配置文件
cp/etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repobak
cpCentOS6-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo
(5)安装命令
yuminstall tree telnet dos2unix sysstat lrszrz -y
(6)更新系统
yumupgrade 或 yum update
(7)查看已安装的包
yumgrouplist
(8)安装包组
yumgroupinstall "x software development" #一定要有双引号