作者:George
归档:学习笔记
2017/12/28
[root@georgekai oldboy]# ifconfig eth0 | awk -F "addr:| Bc" 'NR==2{print $2}'
10.0.0.203
方法一:
[root@georgekai oldboy]# grep -i 'ipaddr' /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=10.0.0.203
注: -i #进行过滤不区分大小写 == igone
方法二:
[root@georgekai oldboy]# sed -n '/^IPADDR/p' /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=10.0.0.203
方法三:
[root@georgekai oldboy]# awk '/IPADDR/' /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=10.0.0.203
方法四:
[george@georgekai ~]$ egrep '^I.*[0-9.]{1,3}' /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=10.0.0.203
方法五:
[george@georgekai ~]$ awk --re-interval '/^I.*[0-9]{1,3}/' /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=10.0.0.203
注:awk 默认不认识 {} , 需要--re-interval 参数的辅助
方法六:
[george@georgekai ~]$ sed -nr '/^IP.*[0-9]{1,3}/p' /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=10.0.0.203
注:sed 默认不认识扩展正则的符号,需要 -r 参数的辅助
例1:
[root@georgekai oldboy]# ls -ldi /oldboy/ett
261648 drwxr-xr-x. 2 root root 4096 Dec 28 08:58 /oldboy/ett
[root@georgekai oldboy]# ls -ldi /oldboy/ett/.
261648 drwxr-xr-x. 2 root root 4096 Dec 28 08:58 /oldboy/ett/.
注:1. . 表示当前目录,所以他的Inode号和ett目录本身一样
2. ls -a 查看隐藏文件和目录
例2:
[root@georgekai oldboy]# ls -ldi /oldboy/
261636 drwxr-xr-x.3 root root 4096 Dec 28 08:58 /oldboy/
[root@georgekai oldboy]# ls -ldi /oldboy/ett/..
261636 drwxr-xr-x. 3 root root 4096 Dec 28 08:58 /oldboy/ett/..
注:他的子目录里面都包含一个.. 表示上一级没有,也就是oldboy 所有Inode号一样
[root@georgekai oldboy]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 网卡配置文件
[root@georgekai oldboy]# vim /etc/resolv.conf DNS配置文件
方法一:
[root@georgekai oldboy]# find -type f | sed 's#www.etiantian.org#www.oldboyedu.com#g' -i
方法二:
[george@georgekai ~]$ sed 's#www.etiantian.org#www.georgekai.com#g' $(find -type f) -i
例1; -n 表示取消了默认的回车,可以在一行显示
[root@georgekai oldboy]# echo -n "oldboy"
oldboy[root@georgekai oldboy]#
例2:\n 表示回车键(换行) , -e 表示使echo能识别转义 符号系列(\n \t)
[root@georgekai oldboy]# echo -e "a\nb"
a
b
例3: \t 表示加一个tab键
[root@georgekai oldboy]# echo -e "a\nb\tc"
a
b c
例1:显示年-月-日
[root@georgekai ~]# date +%F
2017-12-28
注:1. date + 表示按什么格式来显示,如date +%F ,表示年月日 == date +%Y-%m-%d
2. man date 一般格式都在最后面
例2:显示时:分:秒
[root@georgekai ~]# date +%T
10:14:56
注:1. date +%T === date +%H:%M:%S
例3:显示时-分-秒_星期
[root@georgekai ~]# date +%F_%w
2017-12-28_4
注; 1. man date 后面有显示,0 代表周日
例4:显示当前日期的10天之前是哪一天
[root@georgekai ~]# date -d "-10day" +%F
Wed Dec 27 10:29:16 CST 2017
注:1. -d 安装你的描述显示日期
2. +%F 不能放到-d 和"-10day"中间
例5:显示3天前的日期,格式为:年-月-日_小时_星期
[root@georgekai ~]# date +%F_%H_%w -d "-3day"
2017-12-25_10_1
注:建议使用%H显示小时就可以了,%T会显示冒号,避免与其他特殊字符冲突
例1:临时修改时间
[root@georgekai ~]# date -s "20171212 12:12:12"
Tue Dec 12 12:12:12 CST 2017
例2:自动向时间服务器更新时间
[root@georgekai ~]# ntpdate ntp1.aliyun.com
28 Dec 10:44:39 ntpdate[5955]: step time server 182.92.12.11 offset 1377013.589035 sec
注:1. ntp1.aliyun.com 是阿里云的时间服务器
2. pool.ntp.org 国外的官方时间服务器
3. 如果时区不对,时间也是不一样的, PTS 世界标准时间,CUT 中央标准时间
例3:如果时间不对,使用下面俩条命令查看/etc/service
修改时区的配置, 用sz rz 将其他虚拟机的配置文件替换一份。
[root@georgekai ~]# file /etc/services
/etc/services: ASCII English text
[root@georgekai ~]# ls -lh /etc/services
-rw-r--r--. 1 root root 626K Mar 22 2017 /etc/services
date命令总结:
1. 按照制定格式显示时间
#%F 年月日
#%T 时分秒
#%w 星期
2. 按照你说的说明显示日期 -d
3. 临时修改时间,自动同步时间,修改时区
[root@georgekai ~]# export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
注:1. 这些只是外部命令,内置命令还可以使用
2. 有些命令即属于外部命令,也属于内部命令。如echo
注:将临时修改的命令放在最后面,然后用source /etc/profile 使配置文件生效即可
[root@georgekai ~]# vim /etc/profile
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
/var/log/messages 系统默认的日志
/var/log/secure 用户登录信息
/etc/fstab 开机自动挂载 (在开机的时候设备对应什么入口)
/etc/hosts 解析主机名 (ip地址与主机名的对应关系)
注:man hosts 还可以查看系统的配置文件使用方法
/etc/profile 存放环境变量(PS1 PATH)、别名
/var/spool/cron/root 定时任务的配置文件
例1:which
[root@georgekai ~]# which ifconfig
/sbin/ifconfig
例2:find
[root@georgekai ~]# find / -type f -name "ifconfig"
/sbin/ifconfig
例3:whereis 可以找出命令的位置和相关信息
[root@georgekai ~]# whereis ifconfig
ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
例4:locate 根据名字找出文件所在的位置,会根据数据库查找,所以很慢
[root@georgekai ~]# locate ifconfig
/sbin/ifconfig
/usr/sbin/pifconfig
/usr/share/man/de/man8/ifconfig.8.gz
注:uodatedb 更新数据库 (不常用,因为很慢,消耗比较大)
例1:shudown -r now
[root@georgekai ~]# shutdown -r now
注:1. -r 重启
2. now 立刻,马上
3. 建议使用,不会立马重启
4. -r 后面加10 ,表示10分钟后重启
例2:reboot
[root@georgekai ~]# reboot
例3:init 6
[root@georgekai ~]# init 6
注:有可能丢失数据
例1:shutdown -h now
[root@georgekai ~]# shudown -h now
注:1. -h 关机
2. now 立刻,马上
3. -h 后面加 10 ,表示10分钟后关机
4. 建议使用,不会立马关机
例2:poweroff
[root@georgekai ~]# poweroff
例3:init 0
[root@georgekai ~]# init 0
注:有可能丢失数据
例4:halt
[root@georgekai ~]# halt
注:关闭系统,不会关闭电源,风扇还会转
Ctrl + a 把光标移动到行首
Ctrl + e 把光标制动到行尾
Ctrl + c 中断当前命令的执行, 特殊情况yum install 中,需要连续多按几次
Ctrl + d 退出当前用户 / 删除光标所在位置后一个字符
Ctrl + l 清屏
Ctrl + u 把光标所在位置到行首的内容剪切
Ctrl + k 把光标所在位置到行尾的内容剪切
Ctrl + y 粘贴
Ctrl + r 查找历史命令,相当于 history | grep
Ctrl + s 锁屏
Ctrl + q 解锁
Ctrl + → 向右移动单词的宽度
Ctrl + ← 向右移动单词的宽度
移动:
G 移动到文件的最后一行
gg 移动到文件的第一行
$ 把光标移动到行尾
0或^ 把光标移动到行首
编辑:
o 在当前行下一行插入空行并进入编辑模式
O 在行前行上一行插入空行并进入编辑模式
C 把光标所在位置到行尾的内容删除并进入编辑模式
复制剪切粘贴:
yy 复制当前行的内容
p 粘贴 paste
dd 删除当前整行内容
100gg 移动第100行
操作:
u 撤销
ctrl+ r 恢复
特殊符号:
:set nu 显示行号
:set nonu 取消显示行号
/george 默认向下搜索,继续往下搜索 n , 继续向上搜索 N
?george 默认向上搜索
:noh 取消高亮显示
echo的参数、date的参数、PATH、开关机、 vim快捷键
原文地址:http://blog.51cto.com/13055758/2055683