Linux基础知识
Linux
一.操作系统
- 操作系统的作用
是现代计算机系统中最基本和最重要的系统软件
承上启下的作用
向下对硬件设备进行封装
向上对用户和应用程序提供方便访问硬件的接口
操作系统的应用领域:
桌面操作系统(Windows,MacOS,linux)
服务器操作系统(linux,windows_sever)
嵌入式操作系统(linux,用于家电操作界面,网络电视,机顶盒)
移动设备操作系统android(底层也是Linux),IOS,
2.虚拟机
虚拟出来的计算机系统:
硬件系统: vmware
软件系统: 操作系统(centos/Ubuntu) + 应用软件 (例:谷歌)
3.Linux操作系统:
a.Linux操作系统的发展史
Unix--minix--linux
linux 由林纳斯·托瓦兹 1991年 研发
b.linux发行版
1.centos
2.red hat
3.ubuntu
4.debian
5.android
拓展题目:(了解)
centos 与 red hat的区别
- centos源于red hat,red hat是商业版,centos是社区版(完全免费)
centos比ubuntu更稳定,桌面不友好,软件更新慢 - ubuntu源于debian,debian是商业版,ubunru是社区版(完全免费)
ubuntu桌面非常友好,软件更新很快
4.linux 文件和目录
1.单用户与多用户操作系统(了解)
指一台计算机在同一时间可以由多个用户使用
现在的操作系统都是多用户的操作系统
文件的访问权限: 不同用户对同一文件的访问权限是有差异的
2.Linux文件系统
a.根目录'/'
所有文件都是在'/'根目录下
b.用户家目录,用户工作目录
/home/admin
可简写为'~'
当前用户对用户家目录及其子目录有绝对的权限:创建,删除文件,文件夹
c.根目录下面的以及子目录介绍(了解)
/:根目录
/home/admin:用户家目录,用户工作目录
/bin:可执行程序目录/
二.常见的Linux命令01
- ls: list列出文件列表信息
格式: ls [-option] [parameter]
ls [选项] [文件]
常用选项:
-l : 详细查看
-a : 查看所有文件(隐藏和非隐藏文件都查看)
-h : 与-l一起使用,以更人性化的方式显示文件大小
问题1:详细查看家目录下的文件
ls -l ~
ls -l /home/admin/
问题2:查看家目录下的所有文件
ls -a ~
问题3:详细查看家目录下的文件,并且以友好方式显示文件大小
ls -lh ~
-
clear : 清除命令终端的屏幕
快捷键: Ctrl + L -
pwd : print work directory 显示当前的工作目录
-
cd : 切换到指定目录
a.相对路径 : 相对于当前的路径
cd ./ 当前目录
cd .. 上一级目录
cd 目录/ 该目录的下一级
b.绝对路径 : 以根目录开始的路径
/ : 根目录
~ : 家目录(/home/admin)
c.常用的目录切换
cd . 当前目录
cd .. 切换到 上一级目录
cd ~ 迅速切换到家目录
cd - 切换到 上一次目录
cd / 切换到根目录
问题1:分别以相对路径和绝对路径进入到桌面目录中(当前目录是用户家目录)
[admin@localhost ~]$
相对路径: cd ./桌面/ cd 桌面
绝对路径:
cd ~/桌面/
cd /home/admin/桌面/
问题2:分别以相对路径和绝对路径进入/bin目录中(当前目录是用户家目录)
相对路径:
cd ../../bin/
绝对路径:
cd /bin/
- mkdir : make directory 创建目录
格式 : mkdir [选项] 目录
问题1: 在桌面创建abcdir目录
(当前目录~) mkdir 桌面/abcdir
(当前目录桌面) mkdir abcdir
问题2:在abcdir目录中一次创建a/b/c 级联目录
mkdir -p a/b/c
问题3:在abcdir目录中一次创建a1 b1 c1 3个同级的文件夹
mkdir a1 b1 c1
- touch : 创建文件
格式 : touch [选项] 文件
问题1: 在桌面的abcdir目录中创建info.txt文件
(在abcdir中) touch info.txt
问题2: 在桌面的abcdir目录中一次创建a.txt, b.txt, c.txt三个文件
(在abcdir中) touch a.txt b.txt c.txt
- rm : remove 删除文件或者文件夹
格式 : rm [选项] 文件
选项:
-i : 删除文件时给予提示(确认是否删除)
-f : 强制删除,假如要删除的文件不存在,也不会报错
-r : 递归删除,假如要删除的是目录(文件夹),则要用改选项
问题1:删除桌面的abcdir目录中a.txt的文件
(在abcdir中) rm a.txt
问题2:删除桌面的abcdir目录中的a目录
(在abcdir中) rm -r a
- cp : 拷贝,复制
格式 : cp [选项] <源文件> <目标文件>
问题1:拷贝桌面的abcdir目录的info.txt到当前a目录下
(在abcdir中) cp info.txt a/
问题2:拷贝桌面abcdir目录的info.txt到当前a目录下,且改名为info_backup.txt
(在abcdir中) cp info.txt a/info_backup.txt
问题3:拷贝当前a目录到桌面
(在abcdir中) cp -r a/ ~/桌面
cp -r a/ ../
- mv : 移动到/重命名
格式 : mv <源文件> <目标文件夹/目标文件>
(当前的目录是桌面/abcdir)
问题1: 把桌面abcdir目录的a.txt移到当前a目录下
mv a.txt ./a/
问题2:把桌面abcdir目录的b.txt 重命名为body.txt
mv b.txt body.txt
问题3:把桌面abcdir目录下的a目录移动到家目录下
注意:移动文件夹的时候不需要 -r
mv a ~/
- 通配符
1 * : 代表0个多个任意字符
问题1: 查看列举/bin目录中以r开头的所有文件
ls r*
2 ?: 代表1个任意字符
问题2: 查看列举/bin目录中以r开头的只有两个字符的文件
ls r?
3 [] : 字符集,匹配字符集中任意一个字符,可使用-表示范围([a-z])
问题3: 查看列举/bin目录中以文件名是以数字结尾的文件
ls *[0-9]
4 : 转义字符
问题4: 在桌面创建文件名为hello1.txt hello2.txt hello.txt的文件 ,然后再只删除 hello.txt文件
touch hello1.txt hello2.txt hello.txt
rm hello*.txt(注意:如果只是写rm hello.txt, 会把hello1.txt hello2.txt也删除了,因为有特殊意义,所以需要转移符号\来将转义成普通字符*)
三. 常见的Linux命令02
- 重定向命令 > 和 >>
将命令结果重定向到一个文件,本应显示在终端上的内容保存到指定的文件中
(当前目录在桌面)
问题1:把家目录的文件信息写到桌面的files.txt文件中
ls ~ > files.txt
问题2:把test目录下的文件信息追加到files.txt内容后面
ls test >> files.txt
注意:>输出重定向会覆盖原来的内容, >> 输出重定向会追加到文件尾部
- cat : 在终端直接查看文件内容,或者配合重定向符号>完成合并文件内容
格式 : cat [文件]
问题1:在桌面创建one.txt, two.txt文件,并且通过cat查看文件内容
touch one.txt two.txt
gedit one.txt ----编辑文本内容
gedit two.txt
cat one.txt two.txt
问题2:把one.txt, two.txt合并到three.txt文件中再通过cat查看three.txt
cat one.txt two.txt > three.txt
cat three.txt
问题3:把/bin目录下的文件内容写到桌面的files02.txt,使用cat查看它的内容
ls /bin > files02.txt
cat files02.txt
- more : 分屏显示文件内容
问题1:使用more查看桌面的files02.txt文件内容
more files02.txt
最先显示的是第一屏幕的内容
空格: 显示下一屏内容
回车: 显示下一行
数字+回车 : 指定接下来的显示行数
b: 显示上一屏
q: 退出
- 管道命令
管道:一个命令的输出可以通过管道作为另一个命令的输入
问题1:用ls详细查看/bin目录下的内容,且分屏显示
ls /bin | more
- ln : 链接命令
格式 : ln [选项] <源文件> <链接名>
选项 -s 用于创建软连接
问题1:在桌面创建一个01.txt文件,对该文件创建软链接01_s_link.txt
ln -s 01.txt 01_s_link.txt
问题2:在桌面创建一个01.txt文件,对该文件创建硬链接01_link.txt
ln 01.txt 01_link.txt
软链接与硬链接的相同点和区别:
- 软链接和硬链接最终都指向同一个文件
- 当源文件名删除,软链接变成无效链接,而硬链接还可以打开源文件内容
- 文件详细列表显示时,软链接的文件类型是l ,而硬链接是-
- (注意)软链接可以链接文件和目录,而硬连接只能链接文件
注意:如果软链接文件和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径,否则将创建无效文件
- grep : 查找文本
格式 : grep [选项] '搜索内容串' <文件名>
选项 :
-i 不区分大小写
-n 显示匹配行的行号
-v 显示不匹配的内容(取反)
问题1:把/bin目录中的文件信息写入桌面的home.txt中,并且查找"d"字符
ls /bin > home.txt
grep "d" home.txt
grep除了上面的格式,另外,还配合管道|使用:cat xxx.txt | grep "s" 表示xxx.txt中查找"s"
- find : 查找文件
格式 : find [路径] [-name/-perm] [匹配原则]
a.按名称查找
问题1:查找桌面目录中扩展名是txt的文件
find ./ -name "*.txt"
b. 按权限查找
find ./ -perm 权限值
问题2:查找出test目录中属主用户有读写执行权限,其他用户只有读和执行权限的文件
find ./test -perm 755
755=rwx r-x r-x
r=4
w=2
x=1
- tar : 打包压缩命令
格式 : tar [选项] <打包的文件名> <要打包的文件>
选项:
- c: 创建打包文件,归档文件
- v: 显示打包文件名称
- f: 指定打包或者拆包文件名称
- x: 解包,拆包
- z: 以gzip压缩或者解压文件
- j: 以bzip2压缩或者解压文件
- C: 解压到指定路径, -C选项后面解压后存放文件的目录
问题1:对test目录下的所有文件打包成my.tar
(操作目录是test目录) tar -cvf my.tar ./*
问题2: 对my.tar 文件进行拆包
tar -xvf my.tar
问题3: 对test目录下的所有文件打包且以gzip格式压缩成 my.tar.gz文件
tar -czvf my.tar.gz ./*
问题4: 对my.tar.gz解压及拆包
tar -xzvf my.tar.gz
问题5: 对test目录下的所有文件打包且以bzip2格式压缩成 my.tar.bz2文件
tar -cjvf my.tar.bz2 ./*
问题6: 对my.tar.bz2 解压及拆包到桌面到的test2目录中
(操作目录是test目录) tar -xjvf my.tar.bz2 -C ../test2/
- gzip : 压缩解压命令
格式: gzip [选项] <被压缩文件>
选项:
-d 表示解压
-r 可以压缩文件夹,但无法形成一个压缩包,会把文件夹里的子文件分别单独压缩
问题1: 对test目录下的rview文件使用gzip格式压缩
gzip rview
问题2:使用gzip命令解压文件rview.gz
gzip -d rview.gz
- chmod : 对文件或文件夹设置权限
a.字母法
格式:chmod u/g/o/a +/-/= rwx 文件 (顺序不能颠倒,先设置权限再指定文件)
问题1:对test目录下的raw文件的拥有者用户及同组用户添加执行权限,对其他用户添加写权限
chmod u+x,g+x,o+w raw
问题2:对test目录下的raw同组用户移除执行权限,对其他用户设置无权限
chmod g-x,o= raw
b.数字法
格式: chmod 权限数字表示法 文件名
问题3:对test目录的raw所有用户均设置读写执行权限
chmod 777 raw
- 与用户相关命令(who , exit , passwd)
a. who : 查看用户登录情况
b. su root : 切换到超级用户(拥有超级权限#)
再输入超级用户密码
c. exit : 退出登录
1、如果是centos图形界面打开的命令终端,退出当前终端
2、如果是使用ssh远程登录,退出登录账户
3、如果是切换后的登录用户,退出则返回上一个登录账号
d. passwd: 设置密码
在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户密码。
用户也可以直接使用该命令来修改自己的密码,而无需在命令后面使用用户名。
问题1:尝试在/opt目录中创建myopt文件夹
mkdir /opt/myopt
[admin@localhost 桌面] su
密码:(root的密码)
[root@localhost 桌面]# mkdir /opt/myopt
[root@localhost 桌面]# exit
13、(了解)关机相关命令(reboot、shutdown)
a. reboot: 重启
b. shutdown: 关机
- shutdown -r now: 立即重启
- shutdown -h now: 立即关机
- shutdown -h 20:25: 指定某个时间关机
- shutdown -h +10: 10分钟后关机
四. ssh 服务
1.ssh介绍
ssh(Secure Shell):安全外壳,安全网络协议
SSH是目前可靠的,专为远程登录会话和其他网络服务提供安全性的协议。
常用于远程登录,以及用户之间进行资料拷贝。利用SSH协议可以有效防止远程管理过程中的信息泄露问题.
2.远程登录格式: ssh 用户名@IP
提示:linux上查看ip地址的命令是ifconfig
问题1:通过远程登录方式,在虚拟机CentOS桌面上创建hello.txt文件
ssh admin@192.168.85.74
输入的密码:admin的密码
五. vim 软件的使用
1.三种工作模式
a.命令模式:
打开文件,默认进入此模式,通过命令的方式,通过命令的方式对文档进行编辑,比如复制,粘贴,删除行等操作
b.编辑模式:
在命令模式中按i或者a进入编辑模式,可以输入文本进行编辑文档。按‘esc’退出编辑模式,进入命令模式
c.末行模式:
在命令模式按‘:’进入末行模式,在末行模式中可实现查找替换文本、保存退出文件等操作,按‘esc’进入命令模式
2、命令模式下的vim操作(了解)
a. 进入编辑模式
- i或者a
b. 移动光标 - 方向箭头(上下左右)
- hjkl(上下左右)
- G和gg(G文档最后一行,gg文档首行,数字G跳到指定行)
c. 删除命令 - dd 或者 数字dd(dd删除所在行,5dd删除指定行数,从光标所在行开始计算)
d. 撤销与恢复命令
- u (撤销)
- ctrl+l+r (恢复)
e. 复制粘贴命令
-
yy 或者 数字yy(yy复制当前行,5yy复制5行)
-
p 或者 数字p (p在光标所在位置向下新开一行粘贴, 5p 粘贴5次)
问题1:复制第2行内容,放在末尾进行粘贴
光标调到第2行: 2G
复制第二行内容 yy
光标移动到最后一行 G
粘贴 p
问题2:删除当前光标所在行,及下2行的数据
3dd
3、末行模式下的简单操作
保存和退出
命令模式下按shift + 冒号进入末行模式
- w 只保存
- q 退出,没保存会询问
- wq: 保存退出(或者x)