命令和文件的自动补齐

快捷键

命令的历史记录

别名

============================================================================

输入输出重定向

==输出重定向 

> 覆盖

>> 追加

[root@station230 ~]# date 1> date.txt 

[root@station230 ~]# date 2> date.txt 

[root@station230 ~]# ls /home/  /aaaaaaaaa 1>list.txt 2>&1

[root@station230 ~]# ls /home/  /aaaaaaaaa 2>/dev/null        //输出到/dev/null 的信息自动删除


[root@station230 ~]# ls /home/  /aaaaaaaaa >/dev/null 2>&1

[root@station230 ~]# ls /home/  /aaaaaaaaa &>/dev/null //混合输出


==输入重定向

[root@localhost ~]# mail -s "ssss" alice没有改变输入的方向,默认键盘

111

222

333

^d

Cc: 

[root@localhost ~]# su - alice

[alice@localhost ~]$ mail

Mail version 8.1 6/6/93.  Type ? for help.

"/var/spool/mail/alice": 1 message 1 new

>N  1 root@localhost.local  Mon Oct 29 14:09  18/657   "ssss"


[root@localhost ~]# mail -s "test01" alice < /etc/hosts

[root@localhost ~]# mysql -uroot -p123 < 11.sql//暂不执行


[root@station230 ~]# cat

222

222

^d

[root@station230 ~]# cat </etc/hosts

[root@station230 ~]# cat < /etc/hosts > 1.txt


[root@station230 ~]# cat > file1仅改变了输出的方向,输入依然来自键盘

111

222 

^d


[root@station230 ~]# cat >file2 <<EOF

> 555

> 666

> 777

> EOF

[root@station230 ~]# cat file2 

555

666

777


===使用脚本创建文件

[root@station230 ~]# vim a.sh //建立脚本

cat >/yang.txt <<EOF

1111

222

3333

yyy

EOF

[root@station230 ~]# sh a.sh//执行脚本

[root@station230 ~]# cat /yang.txt 

1111

222

3333

yyy


[root@station80 ~]# vim b.sh

cat  <<EOF

1111

222

3333

yyy

EOF

[root@station80 ~]# sh b.sh 

1111

222

3333

yyy


===管道

程序小,功能单一

[root@station230 ~]# ll /dev/ |less

[root@station230 ~]# rpm -qa  |grep 'chinese' 查询所有安装的软件包,过滤包含chinese的包

scim-tables-chinese-0.5.6-7

scim-chinese-standard-0.0.2-1.el5

fonts-chinese-3.02-12.el5



[root@station230 ~]# sort -t":" -k3 -n /etc/passwd以: 分隔,将第三列按字数升序

[root@station230 ~]# sort -t":" -k3 -n /etc/passwd -r  降序

[root@station230 ~]# sort -t":" -k3 -n /etc/passwd |head

-t 指定分隔符

-k 指定列

-n 按数字



统计当前/etc/passwd中用户使用的shell类型

取出第七列(shell) | 排序(把相同归类)| 去重

[root@station230 ~]# cut -d":" -f7 /etc/passwd |sort |uniq 


/bin/bash

/bin/sync

/sbin/halt

/sbin/nologin

/sbin/shutdown

[root@station230 ~]# cut -d":" -f7 /etc/passwd |sort |uniq |grep -v '^$'

[root@station230 ~]# cut -d":" -f1-3 /etc/passwd


[root@station80 ~]# awk -F: '{print $7}' /etc/passwd

[root@station80 ~]# awk -F: '{print $7}' /etc/passwd |sort |uniq 

[root@station80 ~]# awk -F: '{print $7}' /etc/passwd |sort |uniq |grep -v  '^$'

[root@station80 ~]# awk -F: '{print $7}' /etc/passwd |sort |uniq -c

      1 

     19 /bin/bash

      1 /bin/sync

      1 /sbin/halt

     32 /sbin/nologin

      1 /sbin/shutdown



找出当前最占内存的5个进程:

查看所有进程 | 按第四列排序(%MEM)|找出最后5个进程

==sort分隔符默认是空格或tab

[root@station230 ~]# ps aux |sort -k4 -n |tail -5



打印当前所有IP

[root@station230 ~]# ip addr |grep 'inet ' |awk '{print $2}' |awk -F"/" '{print $1}'

127.0.0.1

192.168.2.115


/分区已用空间的百分比

[root@station230 ~]# df |grep '/$' |awk '{print $5}'|awk -F"%" '{print $1}'


#dmesg |grep -i 'eth'         //查看系统是否识别到网卡

[root@station3 ~]# lspci |grep -i 'eth'         //查找PCI设备



[root@station230 ~]# echo yang | tr [a-z] [A-Z]

YANG

[root@station230 ~]# cat /etc/hosts | tr [a-z] [A-Z]

//tr, 将第集团中的字符转换第二集团中的字符

[root@station230 ~]#cat /etc/passwd |tr [abcdefghij] [0987654321]