更新时间:2018-05-03 来源:黑马程序员 浏览量:
一·对linux的认识
1.什么是linux
linux整个基于Linux内核,是linux的内核+GNU组织的软件 GNU/linux的操作系统
2.什么是shell
shell是一个解释器,是保护系统内核不被篡改的软件,我们所使用的系统中默认启动的shell是bash
注:
bash是一个为GNU计划编写的Unix shell,它是Bourne-Again SHell的缩写
3.怎样在shell中执行命令
命令必须在行提示符之后输入,如果行提示符被占用,那么,ctrl+c可以结束占用当前行提示符的程序从而释放行提示符
4.在shell中输入命令的格式:命令+空格+参数+空格+对象
命令就是程序,参数就是程序指定的某种功能 -a -b -c =-abc = -bac,对象是操作的目标
举例: rm -f -r /*==rm -fr /*
二·虚拟机的基本操作
1.虚拟机的控制
[kiosk@foundation0 Desktop]$ rht-vmctl view desktop #显示虚拟机
[kiosk@foundation0 Desktop]$ rht-vmctl start desktop #打开虚拟机
[kiosk@foundation0 Desktop]$ rht-vmctl poweroff desktop #关闭虚拟机
[kiosk@foundation0 Desktop]$ rht-vmctl reset desktop #重置虚拟机
注:
kiosk //表示shell的运行人是谁
@foundation0 //shell开启主机的主机名称
Desktop //你当前所在文件夹的名字
2. 虚拟机的报错情况以及改正
[kiosk@foundation0 Desktop]$ rht-vmctl start desktop
Error: desktop not started (is already running) //虚拟机正在运行
Correction:停止‘rht-vmctl start desktop’操作,直接执行当前准备执行的命令
[kiosk@foundation0 Desktop]$ rht-vmctl view desktop
Error: unable to view desktop - not currently running. //虚拟机没有运行
Correction:先执行命令‘rht-vmctl start desktop’,再执行下一步操作
[kiosk@foundation0 Desktop]$ rht-vmct1 start desktop
bash: rht-vmct1: command not found... //命令输入错误
Correction:检查输入的命令‘rht-vmctl’是否正确,注意区分‘数字1’和‘字母l’
[kiosk@foundation0 Desktop]$ rht-vmctl stat desktop
Error: bad option, stat //参数写入错误
Correction:检查输入的参数‘start/view/poweroff/reset’是否正确,注意区分大小写
[kiosk@foundation0 Desktop]$ rht-vmctl start deskop
Error: unrecognized VMNAME specified, deskop. #虚拟机名称错误
Correction:检查输入的名称‘desktop’是否正确,注意区分大小写
3.系统用户登陆
$ //普通用户,这个用户只能使用系统,但是权力比较低,比如不能删除 home---->computer ----> boot
student ----> student
# //超级用户,系统管理员,权力绝对大,可以破坏系统,比如删除 home---->computer ----> boot
not list ---->root ----->redhat
注意:
删除boot以后,在系统中选择reset 那么系统启动成功
系统启动不了可以直接重置虚拟机
4.在系统内添加中文输入法
application ------> setting ---> 蓝旗(region&language)---->china pinyin
5.文本编辑
gedit 文件名称+& //"&"的作用是让gedit命令在后台运行而不占用当前接口
6.文件管理命令
<1>新建文件
touch ‘文件名’
注:建立多个文件时,touch ‘文件名’ ‘文件名’ ... //多少个文件,就用引号引多少个
<2>新建目录
mkdir ‘目录名’
<3>删除文件
rm -f ‘文件名’ //-f 是force的缩写,表示强制删除不提示
区分 rm/rm -f
<4>删除目录
rm -f -r/rm -fr ‘文件名’ //-r 表示递归,包括目录本身和里面的所有内容
7.查看
<1>cat ‘文件名’ //查看文件或者目录里的具体内容
<2>ls ‘文件名’ //显示当前文件下的目录名称
注:
ls -a //显示所有文件包括以点开头的隐藏文件
ls -R //递归显示目录中的所有内容
<3>file //查看文件类型
操作步骤(可以清楚的体现file的作用以及文件的作用)
touch westos
file westos
vim westos
hello
file westos
vim westos
#!/bin/bash
hello
file westos
vim westos
#include
hello
file westos
<4>wc //统计文件的字数,字符数,字节数
wc -l //行数
wc -m //字符数
wc -c //字节数
wc -w //字数
注:
区分wc -m 与 wc -c
在输入中文时,会有不同;输入英文时,两个差不多
8.复制
cp file 新文件名称|目录
cp -r dir 新名称|目录
注:复制根目录下文件里的全部内容时,需要在文件最后加一个‘.’
举例:
cp /etc/passwd .
9.移动
mv file 目录
mv dir 目录
mv 目录/* , 把目录中的所有内容移动到当前所在系统位置 "."代表当前所在系统目录
10.系统结构
/bin //常用系统命令
/sbin //系统管理命令
/boot //启动分区
/sys //内核参数调整
/dev //设备文件
/lib //32位库文件
/lib64 //64文库文件
/media /run /mnt //临时设备的挂载点
/opt //第三方软件安装位置
/proc //系统信息
/etc //系统配置目录
/home //普通用户家目录
/root //超级用户家目录
/var,/srv //系统数据
11.关于路径的命令
<1>路径的分类
绝对路径:文件所在系统的真实位置,在系统的任何位置都可以使用通常以"/"开头
相对路径:相对当前所在系统位置的一个文件名称的简写,他通常会自动添加"pwd"的值在名称前
举例:
pwd //print work directory 显示当前所在系统位置的路径
touch /mnt/file //用绝对路径的方式在/mnt/中建立file文件
rm -fr /mnt/file //用绝对路径的方式删除/mnt/中的file文件
mv hello /mnt //把当前的hello文件移动到/mnt目录中
mv /mnt/hello . //用绝对路径的表示方式把/mnt中的hello文件移动到当前位置
12.切换工作目录
cd 目录名称
cd .. //进入当前目录的上层目录
cd . //进入当前目录
13.如何在系统中获得帮助
1.whatis 命令:得到一个命令但不知道这个命令的作用时使用
举例:
whatis cal 显示cal命令的用途
cal (1) - display a calendar
cal (1p) - print a calendar
2.--help命令:当知道命令的用途,但是不知道命令的运行格式或者方法时使用
注:--help只适用与命令
举例:
cal --help
useage:
cal [options] [ [ [day] month] year]
注:如果只写‘年’的话,就不需要加[],想要显示哪一月或者哪一天,必须给‘月’和‘天’加[].
[] //选加,可以加也可以不加
... //加的个数可以时任意多个
<> //必须加不可缺少的信息
3.man == manual:当查看文件的帮助时,--help是不能使用的,必须用man命令来查看帮助了
man的级别
1 命令,2 内核调用的接口,3 函数库;4 特殊文件比如设备文件;5 系统文件,6 游戏;7 包信息;8 系统密令;9 内核规则
举例:
man date //查看date命令的帮助手册
man 5 passwd //查看/etc/passwd 文件的帮助手册
<2>man使用时的快捷键
进入man页面后
pageup //向上翻页
pagedown //向下翻页
q //退出
注:当man或者whatis命令无法查询帮助是,是因为系统没有加载帮助数据库
解决办法:执行 mandb
三·*******vim*********
1.编辑文件
vim ‘文件名’ 进入浏览模式,按"i"键 进入插入模式开始编写字符,编写结束后按"ESC"键 退出插入模式,按":wq" 保存退出,文件编写完成。
vim同时编辑多个文件 :
先打开一个文件,再进行操作‘:sp ’+‘filename’
ctrl + w 上 //光标进入上边文件窗口
ctrl + w 下 //光标进入下边文件窗口
注:
<1>当文件名称存在,那么进入文件直接编辑,当文件名称不存在,vim会在退出保存时自动建立文件,当vim命令后没有跟任何文件名称时,时无法实现‘:wq’退出保存的那么可以用":wq filename"
<2>当vim异常退出时,系统会建立.file.swp这个缓存文件,这个文件中保存着在‘:wq’动作之前保存的信息,当用vim对文件做编辑的时候会提示
O //只读打开
E //直接忽略.file.swap信息编辑文件
R //利用.file.swap进行为保存数据恢复
D //删除.file.swap
Q //退出
A //终止
//图片,出现以上几个提示的图片
2.vim的三种模式
<1>命令模式
A:vim工作方式设定(命令模式是vim打开文件后默认进入的模式,这个模式中不能插入字符,但是可以设定vim的工作方式)
:set 指定信息
:set nu
:set nonu
:set cursorline
:set mouse=a
注:在vim中直接设定vim的工作方式是临时设定,也就是说当vim关闭,设定失效
如果要永久设定需要编写vim的配置文件 ‘/etc/vimrc’
B:在命令模式下如何管理字符
"x" : 删除光标所在字符
"u" : undo 恢复
"ctrl+r" : redo 撤销恢复
"y” : 复制
"yw" : 复制一个单词
"yl": 复制一个字母
"yy" : 复制一整行
"y5y" : 复制5行
"c": 剪切
"cw" : 剪掉一个单词
"cl" : 剪掉一个字母
"cc" : 剪掉一整行
“c5c": 剪掉5行
注:"用C做剪切时,会进入插入模式,如果要粘贴需要退出插入模式按‘ESC’键再按‘P’
"d" : 删除
"dw" 删除一个单词
"dl" 删除一个字母
"dd" 删除一整行
"d5d" 删除5行
"p": 粘贴
C:vim的可视化操作
a:可视化模式的基本操作
在vim中是不能用鼠标选择区域操作的,如果要操作某个区域,需要进入到可视化模式,在命令模式下 "ctrl + v" 就可以进入到可视模式了
按"上|下|左|右"移动光标选择区域,按相应操作键就可以对选择区域进行操作
b.可视化模式下批量添加字符
。把光标停留在想要加入字符所在的列的第一行
。移动光标选择添加字符所在列
。"I"进入插入模式
。写入要插入的字符
。按"ESC"退出插入模式,字符批量添加成功
D:vim的字符替换
%s/原有字符/新字符/g //全文替换
1,5s/原有字符/新字符/g //替换1到5行的字符
g //替换出现的所有关键字,如果不加"g"只替换没行出现的第一个
E:总字符的查找及光标的移动
<1>字符的查找
/关键字 //搜索关键字
n //向下匹配关键字
N //向上匹配关键子
注:按‘v’ 由浏览模式进入vim模式,按‘i’进入编辑模式,按‘ECS’后按‘:wq’退出编辑模式进入浏览模式
<2>光标的移动
:‘数字’ //光标快速移动到指定行
gg //光标移动到文件的第一行
G //光标移动到文件的最后以行
<2>插入模式
"i" //在光标所在位置插入字符
"I" //光标所在行的行首插入字符
"o" //光标所在行的下一行新行插入字符
"O" //光标所在行的上以行新行插入
"s" //删除光标所在字符并插入字符
"S" //删除光标所在行并插入字符
"a" //光标所在字符的下一个字符插入
"A" //光标所在行的行尾插入字符
<3>退出模式
:q //当vim进入文件没有对文件内容做任何操作可以按"q"退出
:q! //当vim进入文件对文件内容有操作但不想保存退出
:wq //正常保存退出
:wq! //强行保存退出,只针对与root用户或文件所有人生效
四.通配符
1.字符匹配
* //匹配0到任意字符
? //匹配单个字符
[[:alpha:]] //匹配单个字母
[[:lower:]] //匹配单个小写字母
[[:upper:]] //匹配单个大写字母
[[:digit:]] //匹配单个数字
[[:alnum:]] //匹配单个数字或字母
[[:punct:]] //匹配单个符号
[[:space:]] //匹配单个空格
//图片,删除带数字或者带字母的文件
{} //精确指定目标,前提是指定的所有目标都必须存在
{}{} //两个括号里的目标分别进行有顺序的组合组合
举例:
{1..3} 指定1,2,3,而且1,2,3都存在
{1..3}{a..c} 1a 2a 3a 2a 2b 2c 3a 3b 3c
[] //模糊指定目标
举例:
[1-3] //1或者2或者3
[^abc]|[!abc] //除了a并且除了b并且除了c
2.常用文本处理工具 //在命令输入窗口直接输入
<1>head //显示指定文件的前多少行
head -n 1 passwd //显示文件的第一行
head -n 3 passwd //显示文件的前3行
head passwd //默认显示文件的前10行
<2>tail //显示文件的后多少行,在阅读文件时,直接按此字符
tail -n 1 passwd //显示文件的最后以行
tail -n 5 passwd //显示文件的最后5行
tail passwd //显示文件的最后10行
<3>less //分页浏览
less passwd
<4>‘!’or‘^’ //表示非,相反的
3. 鼠标点不动时, ctrl alt f2 , init 3,ctrl f1 init5