Linux
什么是Linux?
Linux在操作使用中时通过 输入命令——shell解释——内核处理
Linux的内核一般包含五大部分:进程管理、存储管理、文件管理、设备管理和网络管理,是一组程序模块,具有访问硬件设备和所有主存空间的权限,是仅有的能够执行特权指令的程序,。主要功能是:资源抽象、资源分配、资源共享。(相当于Linux的核心所在)
shell作用:
内核是 如何对资源进行合理的分配 和 如何对用户需要作出处理 ,
1.所有的要执行的进程都要和shell建立连接,shell相当于Linux内核和外界沟通的唯一途径,shell通过分析所有进程的重要性来对各个进程的先后顺序进行合理化分配,从而使得系统更加高效
2.当客户对内核发出指令时,shell将会将客户所发出的指令进行类似翻译后告诉内核,内核在执行相应的命令
Linux常用基础指令
命令行提示符含义:
[外链图片转存失败(img-omyasnHz-1565489353676)(C:\Users\DELL\Desktop\20180806141908806.png)]
[外链图片转存失败(img-1KBehkNT-1565489353679)(C:\Users\DELL\Desktop\20180806142604864.png)]
身份提示符($为为普通用户,#为超级用户)
超级用户登录方式
在命令行输入 su-
再输入密码,登陆成功后命令提示符将会改变为root用户,身份提示符变为#
[外链图片转存失败(img-wXe1fWk6-1565489353684)(C:\Users\DELL\Desktop\20180806143127448.png)]
命令的组成
命令 参数 目标
主机名
# hostname
# hostname 新的主机名
用户切换
# su -l 指定用户名
- 如何退出?
ctrl + D
快捷键 或者 logout
命令
基本命令操作
- 如何查看命令功能?
# whatis 命令名
- 如何获取命令帮助?
# 命令名 --help
# man 1 命令名
-
命令使用帮助?
- [] 可加可不加
- … 可以添加多个
- <> 必须要添加
date 日期时间
ls 列出当前目录下的文件
cat [选项] [文件]...
一次显示整个文件:cat filename
从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.
将几个文件合并为一个文件:cat file1 file2 > file
文件操作
创建编辑文件
# gedit 文件名
# vim 文件名
- vim操作
- i进入插入Insert模式
- 编辑文件内容
- Esc退出插入模式
- :wq 发送指令保存退出
查看文件内容
# cat filename
# more filename
# less filename
# cp /etc/passwd .
# 拷贝/etc/passwd文件到当前目录
# head -n 5 filename
# tail -n 5 filename
获得帮助
command --help
" [] " 选择加入的信息
" <> " 必须加入的信息
" ... " 可加入任意多个
man command
Shell中的历史调用
history 显示历史
上下键 逐条翻找历史
! 数字 调用此编号历史
! 字母 调用最近以此字母开头的历史
ctrl+r+ 关键字 调用最近一条含有此关键字历史
history -c 清空当前 shell 中的历史
当前系统中的快捷键
ctrl+alt+ 上下
ctrl+alt+F2~F6
ctrl+alt+F1|F7
ctrl+alt+L
win 键 +L
ctrl+shift+c
ctrl+shift+v
ctrl+ 左右
ctrl+a ctrl+e
ctrl+u
ctrl+k
更多快捷键可以在设置中心中 设定
Linux系统结构
[外链图片转存失败(img-AwjQ4veD-1565489353685)(C:\Users\DELL\Desktop\2018080712321854.png)]
系统目录各个文件夹介绍:
/bin ##二进制文件,系统常规命令
/boot ##系统启动分区,系统启动时读取的文件
/dev ##设备文件
/etc ##大多数配置文件
/home ##普通用户的家目录
/lib ##32位函数库
/lib64 ##64位库
/media ##手动临时挂载点
/mnt ##手动临时挂载点
/opt ##第三方软件安装位置
/proc ##进程信息及硬件信息
/root ##超级用户家目录
/run ##临时设备的默认挂载点
/sbin ##系统管理命令
/srv ##数据
/var ##数据
/sys ##内核相关信息
/tmp ##临时文件
建立空白文件
touch file 建立空文件,或修改文件的时间戳
touch file1 file2 建立多个文件(file1 file2)
建立文件夹
mkdir ##建立单目录
mkdir -p ##建立多层目录
eg:mkdir -p 123/456/789 在Desktop中创建123文件夹,在123中创建456文件夹,在456中创建789文件夹
实现了文件夹的多级目录创建
文件夹删除
rm file 删除file'文件夹,但是会提示是否删除,选择yes或者no
rm -f file 强行删除文件不提示
rm -fr dir 强行删除目录本身和里面的内容补提时
vim file 进入file文件编译
[外链图片转存失败(img-ZiiNSdMy-1565489353687)(C:\Users\DELL\Desktop\20180807124020324.png)]
进入文件后输入< I >进入文件输入模式,可以向文件中输入内容
[外链图片转存失败(img-Mq76zGgL-1565489353689)(C:\Users\DELL\Desktop\20180807124200491.png)]
出现 - -INSERT- - 则表示已经进入编译模式,可以直接输入内容
[外链图片转存失败(img-3LUfqwEp-1565489353692)(C:\Users\DELL\Desktop\20180807124144112.png)]
退出编译模式
按按退出插入编译模式,进入浏览模式
退出编译模式后可以对文本进行复制粘贴功能和批量操作 通过方向键操作光标进行操作
a:字符基本操作命令
yy 复制一整行
yl 复制一个字母
yw 复制一个单词
p 粘贴
dd 删除一整行
dl 删除一个字母
dw 删除一个单词
cc 剪掉整行
cl 剪贴一个字母
cw 剪贴一个单词
u 撤销
ctrl+r 恢复
b:批量操作管理
文件的退出
在浏览模式下输入:
:q ##当文件没有做任何修改是可用
:q! ##当文件修改但不行保存修改时可用
:wq ##退出保存
:wq! ##当文件属于自己或用户为root时可用
文件的复制和移动
cp file file222 文件复制(将文件file复制到file222中)
cp file file222 123/ 复制多个文件(file file222)到目录(123)中
cp -r file 123/ 复制目录(123)
mv file file222 重名命
mv file 123 移动
mv file 123 移动目录
[外链图片转存失败(img-V8sNVgfb-1565489353696)(C:\Users\DELL\Desktop\20180807131042189.png)]
文件路径
相对路径:(则必须有前提条件,其实在系统底层依然是绝对路径执行,只是用户看到的简略移动)
文件相对当前系统位置的一个名称简写
文件名称省略了当前路径的值
只有当前在此目录中时可以使用
文件名称不以/开头
文件名称会自动在字符前加入'pwd'显示的路径
绝对路径:
是文件在系统中真实的位置
任何时间都可以精确表示一个文件的名称
文件名称以/开头
pwd 显示当前工作目录
cd 切换当前工作目录
cd /mnt 切换到/mnt目录中
cd - 进入当前目录之前所在目录中
cd ~student 进入到student用户家目录
[外链图片转存失败(img-TmezywW0-1565489353700)(C:\Users\DELL\Desktop\20180807131419822.png)]
还有一些常用的命令
head
显示文件的前 N 行,默认前 10 行 • head -n 5 显示文件前 5 行
tail
显示文件后 N 行,默认后 10 行
tail -n 3 显示文件后三行
tail -f file 监控文件后 10 行内容
less
分页浏览文件
当文件过长时使用
/ 关键字 搜索关键字
q 退出
v 编辑模式
wc = word counts
统计文件
常用参数 >> -c >> -m >> -l >> -w
通配符实现文件的批处理
通配符 | 含义 |
---|---|
* | 匹配0-任意字符 |
? | 匹配任意单个字符 |
~ | 匹配当前用户家目录 |
~ user | 匹配到user的家目录 |
~ + | 当前目录 |
~ - | 当前目录之前所在的 |
[abc] | 有a 或者有b或者有c |
[!abc] | 除了含有a 或者b或者c |
[^abc] | 除了含有a 或者b或者c |
[[:alpha:]] | 单个字母 |
[[:lower:]] | 单个小写字母 |
[[:upper:]] | 单个大写字母 |
[[:alnum:]] | 单个字母或数字 |
[[:punct:]] | 单个符号,不包含数字,字母以及空格 |
[[:digit:]] | 数字 |
[[:space:]] | 单个空格 |