标签:图形 家目录 运维 sha 首部 移动 linus dig 学习linux
目录一、什么是桥接
二、什么是shell
三、外部命令和内部命令
1、外部命令
(1)type
(2)hash
2、内部命令
(1) enable
(2) help
四、时间的设置
1、CST 中国标准时间
(1)date
(2)cal
2、文件的时间戳
3、时区的修改
4、硬时间,软时间的操纵方法
五、history查询历史记录
六、通配符
(1)文件通配符
(2)文字通配符
七、man章节
八、总结
在开篇之前,先讲一个关于linux的小故事。 早在遥远的1991年,有个芬兰的计算机专业学生开发了Linux 0.01版,他开发这个Linux的原因是去学校机房上网时总是排队,排队时间都比玩电脑的时间长。linus Torvalds作为一名学生,利用一个暑假重新写出了linux的内核作为一个开源软件。
一、什么是桥接
想要真正的开始学习linux环境下的运维,首先要知道虚拟机和交换机是如何实现连接的。
物理机,本身有一个网卡,VMware虚拟机,也有一个网卡,为了二者互连,VMware又创建出了一个交换机,虚拟机的网线连接在交换机上,交换机又连接在物理机的网卡,物理机的网线连接在教室的交换机上,所以相当于虚拟机也连接在教室的交换机上。
二、什么是shell
shell是linux系统的用户界面,提供了用户与内核进行交互操作的一种接口,是一种人机交互的语言,相当于一个交流的外壳。
也被称为LINUX的命令解释器(command interpreter),它是一种高级程序设计语言。系统默认使用bash shell。
* GUN Bourne-Again Shell(bash)是GUN计划中重要的工具软件之一,目前也是Linux标准的shell,与sh兼容。
*CentOS默认使用
*显示当前使用的shell
echo $(SHELL)
*显示当前系统使用的使用的所有shell
cat /etc/shells
三、外部命令和内部命令
1、外部命令
(1)type //类型 查看内外部命令
type command // 显示命令的类型
(2)hash常见用法(执行外部命令):
hash // 显示所有被hash的命令路径
hash -1 //显示所有被hash的命令路径,包含别名
hash -d //别名,删除指定别名的hash条目
hash -r //清空所有hash
hash -t //别名 显示别名的hash路径
hash -p //路径 别名 手工增加一条hash
2、内部命令
(1)enable 列出所有内部命令
enable command //激活被禁用的内部命令
enable -a //显示所有内部命令
enable |wc -1 //显示激活中的内部命令的数量
enable -a |wc -1 //显示所有内部命令的数量
enable -n echo //禁用了echo内部命令
1>eg: enable -n echo
type echo
enable |wc -l
解释:禁用了echo,文件由原本的61条命令,变为了60条。
echo $PATH 查看路径(由左到右排)
2> eg: mkdir /root/bin .................创建一个目录
mv /bin/echo /root/bin............移动 bin下的echo到root/bin下
/root/bin/echo....................执行成功
echo..............................报错
type echo....................执行,依然在/bin/echo下
为什么依然在/bin/echo下?
因为只有内部命令会把整体放在文件中,外部命令只是把路径缓存到hash当中。
第二次就不用搜索,直接用hash调用。
关于echo
-n //不自动换行
-E // 不开始解释功能,默认
-e //开启解释功能
\a // 警告声
\b // 退格
\c // 不换行
\n // 回车换行
\r //回车,即光标移至行首,但不换行
\t //插入tab
\\ //插入\
(2)help 内部命令 查看内部命令的帮助信息
help help
--help
四、时间的设置
1、CST 中国标准时间
(1)date
date -s ‘2018-0109 14:38:20’.........修改时间
+%Y 年
+%m 月
+%d 日
+%H 时
+%M 分
+%S 秒
+%F 年/月/日
+%T 时:分:秒
102013112020.45 月日时分年[.秒]]
-s ‘年-月-日 时:分:秒’
"+%Y年%m月%d日 星期%W"
(2)cal
显示当前日历
cal 2018 //显示2018年的日历
cal 1 //公元一年
cal -3 //上个月,这个月,下个月
cal 5 2018 // 2018年5月
cal 9 1752 // 代表特殊的一年,这一个月缺失了11天
cal mm yyyy // 显示yyyy年mm月的日历
2、文件的时间戳
atime //访问时间,读取时更新
mtime //数据修改时间
ctime //元数据修改时间
stat filename
touch filename //当文件不存在的时候,则创建一个空问价,名为filename
当文件已存在时,则更新时间戳。
-a //更新atime ctime
-m //更新mtime ctime
touch filename //更新全部时间戳
-t [cc[YY]]MMDDHHmm[.SS] //将a/m time 更新到指定时间
-c //当文件已存在时,则更新全部时间,当文件不存在时,不创建
3、时区的修改
在CentOS的不同版本中,具有不同的表现形式:
centos 6:
eg: ll /etc/localtime
ln -f /usr/share/zoneinfo/America/New_york /etc/localtime
或者 ll /etc/localtime
ln -f /usr/share/zoneinfo/Asia/shanghai /etc/localtime
centos 7:
eg: ln -f -s /usr/share/zoneinfo/America/New_york /etc/localtime
ln -f -s /usr/share/zoneinfo/Asia/shanghai /etc/localtime
timedatectl set-timezone America/New_York
timedatectl set-timezone Asia/Shanghai
4、硬时间,软时间的操纵方式
hwclock //行同于clock
clock -s // 将软时间写入硬时间 关机时自动进行
clock -w // 将硬时间写入软时间 关机时自动进行
五、history查询历史记录
!编号,重复执行某条历史
ctrl+r //进入一个搜索模式(进行历史的查询)
history //查看历史记录
!n //重复执行某条历史
!! // 重复执行上一条命令
ctrl+p // 等于上箭头
ctrl+n //等于下箭头
ctrl+j //等于回车
!string // 重复前一个以“string”开头的命令
!?string
ctrl+r //命令历史中搜索命令
-c // 清除命令历史
-d offset //删除历史中指定的第offset个命令
-a //将当前终端新执行的命令写入历史记录文件(文件由变量HISTORY决定,默认为用户家目录下的.bash_hiatory)
-w /path/filename.txt // 将历史记录写入指定文件
-r //读历史文件附加到历史列表
-p //展开历史参数成多行,但不存在历史列表中
-s //展开历史参数成一行,附加在历史列表后
-n //读历史文件中未读过的行到历史列表
n //显示最近的n条历史
六、通配符
(1)文件通配符
ls [A-Z]* //表示范围
[a-Z] //能表示出所有的大小写字母
ls [[:lower:]]* //只表示小写字母
ls [[:upper:]]* //只表示大写字母
[:digit:] //任意数字,相当于0-9
[:alpha:] //任意大小写字母
ls [a-Z0-9]* // 等同于 ls [[:digit:][:alpha:]]*
[:alumn:】 //任意数字或字母
[:blank:] //水平空白字符
[:space:]等同于 ls *[[:blank:]]* 等同于 ls *[[:space:]]* //水平或垂直空白字符
[:punct:] //标点符号
ls *" "* [:print:] //可打印字符
[:cntrl:] //控制(非打印)
[:graph:] //图形字符
[:xdight:] //十六进制的字符
[^wang] //^是一个托字符,表示被中括号括起来的,表示‘非'的意思。
-a //显示所有文件(隐藏的与不隐藏的)
-d /root/.* //只显示隐藏文件(只显示/root下的隐藏文件和目录)
-d /etc/*/ //显示非隐藏目录(只显示/etc下的非隐藏目录)
注意:如果只写一个中括号,系统会以为所要表示的是,中括号内的范围,从而将包含u,p,e,r,的字母表示出来。
(2) 文字通配符
* 0或多个任意字符
? 任意一个单一字符
~ 表示加目录
[0-9] //表示数字范围
[a-z] //表示所有字母
[mage] // 表示包含m或a或g或e
[^mage] //表示不包含m或a或g或e
七、man章节
man pasword //进入第一章节
man 5 pasword //进入第五章
man -k pasword //模糊搜索,可以查出一共有几个章节
man man //同上,关于自己的帮助
man 帮助
查看man手册页
man[章节]keyword
man -f keyword.....相当于whatis
搜索man手册
man -a keyword //列出所有帮助
man -k keyword //列出所有匹配的页面....相当于whatis
man -w [章节] keyword //打印man帮助文件的路径
man // 命令的操作方法:使用less命令实现
space:^v,^f,^F // 向文件尾翻屏
b,^b //向文件首部翻屏
d,^d //向文件尾部翻半屏
u,^u //向文件首部翻半屏
RETURN,^N,e,^E or j or ^J //向文件尾部翻一行
q //退出
# //跳转至第#行
lG //回到文件首部
G //翻至文件尾部
八、总结
通过这段时间在北京马哥教育的学习,在老师系统的讲解下,思路拓展,也有所进步,开学时,只期望对于运维这一行业,有所了解,并未打算深入学习,但是现在却想要了解的更多,学习的更多,前期知识点零碎,脑容量深感不够用,但是还好,课上讲过的东西,课下有录制的视频,可以及时的查漏补缺,可能是学运维要掌握的东西真的很多,计划长达4个月的系统学习,第一个星期就能感觉到节奏紧凑,同学们也都很用心,丝毫没有怠慢,我觉得这样挺好的,好像都能感受到,自己正在向传说中的大神一步一步靠近,了解到他们成为大神,靠的是什么,脑子里装的是什么,揭开他们神秘的面纱。时间在流动,我们在进步,虽然现在才迈出了第一步,但是以后的每一步都这样走,相信我们都会变得很优秀的,加油,加油,还是要相信,学习使我们快乐!
标签:图形 家目录 运维 sha 首部 移动 linus dig 学习linux
原文地址:http://blog.51cto.com/13570203/2060990