1. 字符处理
搜索和查看工具
find 搜索文件
grep 行过滤 -i 不分大小 -n 显示匹配的行 -v -AX -BX
cat 滚屏查看
head 查看头部分
tail 查看日志等信息 -f 动态跟随文件 -n 改变数字
less 查看末尾
用于处理制作脚本:
awk 裁取 :awk '{ print $6 }'+文件名 ; awk -F:'{ _print_$ }'+文件名
sed 改变字符串 sed 's/dog/cat/g' +文件名 ; sed '1,50s/dog/cat'
统计工具:
wc
sort 整理文本工具 -r 倒排
uniq 从输入中删除重复的行 -l 行数 -w 单词 -c 字节数
diff 比较不同
path
test
两种语言:
perl
python
如:从psswd中抽取第7列并整理去除重复的行后,写入log文件中:
# cut -d: -f7 passwd |sort -r |uniq -c |wc -l >log
如监控sda分区的使用:
# df |grep sda2 |awk '{ print $5 }' |sed 's/%/g'
2. bash shell
sh
for do 语句
with do 语句
3.系统邮件:
mail -s 主题 username@xxx.xxx.com
等待输入内容
. 结束内容
Cc 发送
所有邮件都存放在/var/spool/mail/用户名命名目录中
利用脚本写邮件内容批量发送:
!/bin/bash
for i in $(seq 1 100)
do
mail -s wellcome student$i@xxx.xxx.com <<END
……内容……
END
利用管道: echo this is a test |mail -s wellcome student$i@xxx.xxx.com
4.归档和压缩
压缩 ——> 解压缩 后缀名
gzip ——>gunzip .gz
bzip2 ——>bunzip2 .bz2
tar
归档功能:
# tar -cvf /home/log.bac /var/log/ 把var/log下的所有文件归纳到home下的log.bac文件中
# tar -xvf /home/log.bac 还原文件
先进入要备份的目录,再运行tar还原也可以
注:备份时如果不进入要还原的目录,则归档会把路径也备份进去,在还原时就不能正确还原了!
压缩功能:
#tar -zcvf /tmp/log.bac.gz passwd ——> tar -zxvf /tmp/log.bak.gz
#tar -jcvf /tmp/log.bac.bz2 passwd ——> tar -jxvf /tmp/log.bak.gz
5.进程管理
fock行为
父进程先于子进程结束则子进程为僵死进程。
init有kernel创建,进程号pid=1,所有进程都由init直接或间接创建
ps -ef |grep xxx 查看某个程序的进程
TTY=?表示不占用终端
xorg 子进程创建TTY=7;
sshd远程连接创建的进程为PTS/1 称为伪终端;图形化下打开的终端也称为终端;查看 ll /dec/pts/
kill -l 列出当前系统支持的信号
9 强杀进程 如:kill 9 进程号
19 暂停进程 如:kill 19 namedpid进程号
18 重新启动进程
15 终止进程
1 让进程重新读取配置文件
while true; do echo a>>log; done
ctrl +c 终止
while true; do echo a>>log; done &
加个&表示把进程放到后台运行
jobs 查看后台作业
fg %1(作业号) 将后台作业1放置前台运行
kill -19 %1 暂停作业1
kill -18 %1 重启作业1
ctrl +Z 把当前进程放置后台并暂停 相当于信号17
bg %1 把后台暂停作业激活
kill %1 终止作业1 相当于默认信号15
ps -efl 查看进程优先级 ni值 ,默认-20 、-19 数字越低优先级越高;未指定的进程默认为0
nice -n 5 PID 更改某PID运行优先级为5
renice 5 PID 调整已运行的进程
top查看cpu运行
6.文件系统
superblock 超级块 目录映射 记录多少个inode,多少个block
inode号 inode表 元数据区
block区 数据区
ext3特性:日志区 提供缓存状态,数据先调入ext3日志缓存区再写入block,因而断电后只需检查日志缓存区域即可。
7.磁盘配额
1)分区/dev/sdax ;设置好挂载点,如:/home
2)vi /etc/fstab
/dev/sdax /home usrquota,grpquota,default 0 0
3)# mount -o remount /home
4)# quotacheck -mcug /home/ 初始化磁盘配额,创建数据库。
#ls /home/
5)# quotaon /home 启动/home目录磁盘配额功能,quotaoff /home 关闭磁盘配额功能;
6)# edquota -u student 为student用户设置配额
filesystem block soft(软限制) hard (硬限制) grace(期限) inode soft hard
对block:以K为单位 对inode:以文件个数为单位
8.包管理
包的命名:包名.版本号.安装平台.rpm
noarch标记为不区分平台
rpm -qa |grep fonts-chinese
rpm -ivh /路径/包名
rpm -ivh /路径/包名 --force 强制安装已安装过的包。(其配置文件不发生变化)
rpm -e fonts-chinese 卸载
rpm -ql 包名
rpm -qf /bin/data 查看data命令有哪个包提供
rpm -qlp 查询rpm包或光盘内容需要加参数p
rpm -U 包名 更新包
rpm -V 包名
S T c
字符 时间 发生变化
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 导入redhat的公钥key。
rpm -K /路径/包名 对某个包进行签名认证检查