Linux12.21
学习目标:
1 Shell解析
2 理解内核
3 行提示符
4 如何录入命令
5 系统中常用的快捷键
6 调用历史
为提供者提供操作界面的软件(命令解析器)、内核保镖,shell是在app和内核之间传输沟通的桥梁,它是保护内核的工具,shell是一个应用程序,连接用户和内核,用户可以通过shell使用内核,调动内核操控硬件,shell的种类有bash、sh、tcsh、ksh、等。
Shell种类: 图形界面shell--GUI shell
命令行式shell--CLI shell
内核是系统的核心程序,负责管理系统的进程,内存,设备,驱动程序,文件和网络系统,并决定了系统调用资源的顺序与方式,由于特别重要,所以一般不允许修改内核,且由shell进行保护。
linux是一款内核而不是操作系统,linuxos操作系统由linux内核和厂家提供的各种软件等组成,使用uname -r 可以查询版本。3.10.0-514.el7.x86_64 ##我的内核版本
[kiosk@foundation0 Desktop]$
kiosk #开启Shell的用户
@ #分隔符
foundtation0 #主机短名称
Desktop #当前工作目录名称
$ #身份提示符 $为普通用户 #为超级用户
[kiosk@foundation0 Desktop]$<命令>空格<参数>空格<目标>
ls -l caoaoyuan
-表示缩写 --表示单词的全拼
命令需要在行提示符之后输入,CTRL+c 释放提示符
使用参数 -a -b -c= -abc=-bca
用于命令补全
+ #取消命令执行,解放$
+ #关闭当前shell
++ #打开一个新shell
++ #打开一个新页面
+ #移动光标到命令首字母
+ #命令结尾
+ #从光标所在位置删除到行首,配合 CTRL+E使用
+ #删除到行尾,配合CTRL+A使用
++ #复制
++ #粘贴
history #查看即使记录
上下健 #逐行调用
!数字 #调用第几行
!字母 #指定首字母调用
++关键字 #指定关键字调用
history -c #清空当期shell中的历史,但不会彻底删除,打开新shell则重新出现
history > filename #导出历史到filename文件中
学习目标:
1 文件建立及删除
2 文件编辑
3 文件查看
4 文件复制及移动
5 文件统计
6 Linux系统结构及二级目录信息
7 文件寻址
8 寻址相关命令
9 文件批处理技术
Linux特性:Everything is file 都是文件!
在Linux中对系统管理归根到底就是 对文件进行管理 删改查
Linux下对文件的建立:
touch :通常在系统中用于建立文件或者修改时间戳 watch -n 1 stat filename
stat filename 查看时间戳 access time | modify time | change time
(打开文件变动) (修改内容变动) (改属性或内容变动)
目录的建立:
mkdir -p (有层级时)dir1/dir2/dir3
linux下文件的删除
rm -f file1 file2 (-f强制删除,不询问)
rm -fr dir1 dir2 (-r表示递归删除,不加时目录下有内容不可删除)
查看层级目录:ls -R dir (此时会显示di r 下的层级目录清单)
1 gedit file 直接编辑文件,类似txt记事本
2 vim 伴随运维生涯的文本编辑器
vim和emacs是全球两大文本编辑器
基本用法:vim file
按i进入插入模式 按esc推出插入模式 按 :wq保存退出
vim工作模式: 命令行模式 插入模式 退出模式
ctrl+w s :上下分屏
ctrl+w v :左右分屏
ctrl+w c :关闭光标所在屏幕
ctrl+w 上下左右 :光标移动到制定屏幕
:sp file :同时编辑当前文件和file2
如何移动分屏:
向上移动:ctrl+w K
向下移动:ctrl+w J
向右移动:ctrl+w L
向左移动:ctrl+w H
增加高度:ctrl+w +
降低高度:ctrl+w -
让所有屏幕高度一致:ctrl+w =
左加宽度:ctrl+w >
右加宽度:ctrl+w <
右增加n宽(如:n=30):ctrl+w n<
左增加n宽(如:n=30):ctrl+w n>
复制:
yl: 复制一个字符 yw: 复制一个单词
yy: 复制一行
删除:
dl: 删除一个字符 dw : 删除一个单词
dd : 删除一整行
剪切:
cl:剪切一个字符 cw:剪切一个单词
cc: 剪切一整行 **注意:剪切会进入插入模式**
粘贴:p
撤销:u
恢复:ctrl+R
%s:表示全文中所有的行
g :表示全文所出现原字符的列
示例:
:%s/:/@/g 替换全文的:为@
:1,5/:/@/g 替换1-5行的:为@
:/adm/,/halt/s/:/@/g 替换adm行到halt行之间的:为@
cat file:显示 文件的所有内容
cat -b file:显示 文件的所有行号,但不统计空行
cat -n file:显示 文件的内容并显示行号,统计空行
less: 当文件的内容比较长使用less进行浏览
上/下 逐行移动
pageup/pagedown 逐页移动
/关键字 高亮显示关键字,n向上匹配,N向上匹配
v 进入vim 模式 在vim模式中按:wq退回到less 模式
q 退出
head
显示文件前多少行
head file 默认显示文件前10行
head -n 3 file 显示文件前三行
tail
显示文件后多少行
tail file 默认显示文件后10行
tail -n 3 file 显示文件后3行
tail -f file 监控文件后10行变化,通常用于监控系统日志
history > westos 把历史内容保存到westos
cp
cp -r 源文件目录 目的地目录:复制目录到目录中
cp 源文件1源文件2 目的地目录:复制多个文件到一个目录中(目 的地目录必须存在)
cp -r 源目录1源目录2 目的地目录:复制多个目录或文件到一个目录中(目的地目录必须存在)
注意:复制是按照模板新建的过成
mv
mv 源文件 目的地文件:重命名,当目的地文件存在或者会被覆盖
mv 源目录 目的地目录:不需要加任何参数,直接移动就可
mv文件还是同一个文件 名字变了,是一个重命名的过程(同一磁盘)地址相同 【 mv westos(以存在) linux(不存在) 】 则会将westos更名为linux。
不同磁盘之间的移动是一个删除新建的过程
mv 文件夹也是一个重命名过程
中文输入法下一个字符等于三个字节
当前目录
touch不可以用[] 可以用大括号 且无反选
file : 文件的名称不能代表文件的类型
例如:file.mp3 不能从文件名的后缀来确定文件的类型
file 可以查看文件的真实类型是什么
wc
用于统计文件的字数.字符数和行数
wc -l file :文件的行数
wc -w file :文件的字数
wc -m file :文件的字符数
wc -c file :文件的字节数
相对路径:
相对于当前系统所在目录的一个简写
此名称系统当前所在的目录名称
此名称不以“/”开头
此名称在命令执行时会自动在操作对象前加入“pwd”所显示的值
绝对路径:
绝对路径是文件在系统的真实位置
此命令是以“/”开头的
此命令在执行时系统不会现在所在位置的信息
注意:
当操作对象是 对象1 空格 对象2 时
这两个对象之间没有任何关系
显示路径:pwd
切换路径:
cd 目录名称:进入到指定目录中
cd - :当前目录和当前目录值所在目录之间的切换
cd .. : 进入当前目录的上级目录
文件信息查看
ls -l file 文件属性
ls dir 目录中所包含内容
ls -d dir 目录本身
ls -a dir 所有文件包含隐藏的
ls -S dir 查看并按照大小排序
ls -s dir 查看文件大小
系统中通用配置符号
?:匹配单个字符
[[:alpha:]] :单个字母
[[:lower:]] :单个小写字母
[[:upper:]] :单个大写字母
[[:digit:]] :单个数字
[[:punct:]] :单个符号
[[:space:]] :单个空格
[[:alnum:]] :单个数字或者字母
[[:punct:][:upper:]] :单个符号 或单个大写字母
字符集合
精确匹配
{} 用于精确匹配内容
{1..3} 3个,123
{1,4,7} 3个,1,4,7这三个
模糊匹配
[] 用于模糊匹配内容
[1-9] 1位,这位是1到9的任意数字
[!3-5] 1位,不是3-5的数字
[^3-5] 1位,不是3-5的数字
[a-z] 1位,a-z中任意字母
~ 当前用家目录
~username 指定用户的家目录
~+ 当前目录
~- 进入当前目录之前所在的目录