LinuxLinuxLinux系统

Linux基础知识

2018-11-14  本文已影响3人  wangchuang2017

Linux
一.操作系统

  1. 操作系统的作用
    是现代计算机系统中最基本和最重要的系统软件
    承上启下的作用
    向下对硬件设备进行封装
    向上对用户和应用程序提供方便访问硬件的接口

操作系统的应用领域:
桌面操作系统(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的区别

  1. centos源于red hat,red hat是商业版,centos是社区版(完全免费)
    centos比ubuntu更稳定,桌面不友好,软件更新慢
  2. ubuntu源于debian,debian是商业版,ubunru是社区版(完全免费)
    ubuntu桌面非常友好,软件更新很快

4.linux 文件和目录
1.单用户与多用户操作系统(了解)
指一台计算机在同一时间可以由多个用户使用
现在的操作系统都是多用户的操作系统
文件的访问权限: 不同用户对同一文件的访问权限是有差异的

2.Linux文件系统
a.根目录'/'
所有文件都是在'/'根目录下
b.用户家目录,用户工作目录
/home/admin
可简写为'~'
当前用户对用户家目录及其子目录有绝对的权限:创建,删除文件,文件夹
c.根目录下面的以及子目录介绍(了解)
/:根目录
/home/admin:用户家目录,用户工作目录
/bin:可执行程序目录/

二.常见的Linux命令01

  1. ls: list列出文件列表信息
    格式: ls [-option] [parameter]
    ls [选项] [文件]

常用选项:
-l : 详细查看
-a : 查看所有文件(隐藏和非隐藏文件都查看)
-h : 与-l一起使用,以更人性化的方式显示文件大小

问题1:详细查看家目录下的文件
ls -l ~
ls -l /home/admin/

问题2:查看家目录下的所有文件
ls -a ~

问题3:详细查看家目录下的文件,并且以友好方式显示文件大小
ls -lh ~

  1. clear : 清除命令终端的屏幕
    快捷键: Ctrl + L

  2. pwd : print work directory 显示当前的工作目录

  3. 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/

  1. 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

  1. 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

  1. rm : remove 删除文件或者文件夹
    格式 : rm [选项] 文件

选项:
-i : 删除文件时给予提示(确认是否删除)
-f : 强制删除,假如要删除的文件不存在,也不会报错
-r : 递归删除,假如要删除的是目录(文件夹),则要用改选项

问题1:删除桌面的abcdir目录中a.txt的文件
(在abcdir中) rm a.txt

问题2:删除桌面的abcdir目录中的a目录
(在abcdir中) rm -r a

  1. 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/ ../

  1. 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. 通配符

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. 重定向命令 > 和 >>

将命令结果重定向到一个文件,本应显示在终端上的内容保存到指定的文件中

(当前目录在桌面)
问题1:把家目录的文件信息写到桌面的files.txt文件中
ls ~ > files.txt
问题2:把test目录下的文件信息追加到files.txt内容后面
ls test >> files.txt

注意:>输出重定向会覆盖原来的内容, >> 输出重定向会追加到文件尾部

  1. 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

  1. more : 分屏显示文件内容

问题1:使用more查看桌面的files02.txt文件内容
more files02.txt

最先显示的是第一屏幕的内容
空格: 显示下一屏内容
回车: 显示下一行
数字+回车 : 指定接下来的显示行数
b: 显示上一屏
q: 退出

  1. 管道命令

管道:一个命令的输出可以通过管道作为另一个命令的输入

问题1:用ls详细查看/bin目录下的内容,且分屏显示
ls /bin | more

  1. 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

软链接与硬链接的相同点和区别:

  1. 软链接和硬链接最终都指向同一个文件
  2. 当源文件名删除,软链接变成无效链接,而硬链接还可以打开源文件内容
  3. 文件详细列表显示时,软链接的文件类型是l ,而硬链接是-
  4. (注意)软链接可以链接文件和目录,而硬连接只能链接文件

注意:如果软链接文件和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径,否则将创建无效文件

  1. 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"

  1. 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

  1. tar : 打包压缩命令
    格式 : tar [选项] <打包的文件名> <要打包的文件>

选项:

  1. c: 创建打包文件,归档文件
  2. v: 显示打包文件名称
  3. f: 指定打包或者拆包文件名称
  4. x: 解包,拆包
  5. z: 以gzip压缩或者解压文件
  6. j: 以bzip2压缩或者解压文件
  7. 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/

  1. gzip : 压缩解压命令
    格式: gzip [选项] <被压缩文件>
    选项:
    -d 表示解压
    -r 可以压缩文件夹,但无法形成一个压缩包,会把文件夹里的子文件分别单独压缩

问题1: 对test目录下的rview文件使用gzip格式压缩
gzip rview

问题2:使用gzip命令解压文件rview.gz
gzip -d rview.gz

  1. 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

  1. 与用户相关命令(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 桌面]mkdir /opt/myopt mkdir: 无法创建目录"/opt/myopt": 权限不够 [admin@localhost 桌面] su
密码:(root的密码)
[root@localhost 桌面]# mkdir /opt/myopt
[root@localhost 桌面]# exit

13、(了解)关机相关命令(reboot、shutdown)

a. reboot: 重启
b. shutdown: 关机

  1. shutdown -r now: 立即重启
  2. shutdown -h now: 立即关机
  3. shutdown -h 20:25: 指定某个时间关机
  4. 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. 进入编辑模式

  1. i或者a
    b. 移动光标
  2. 方向箭头(上下左右)
  3. hjkl(上下左右)
  4. G和gg(G文档最后一行,gg文档首行,数字G跳到指定行)
    c. 删除命令
  5. dd 或者 数字dd(dd删除所在行,5dd删除指定行数,从光标所在行开始计算)

d. 撤销与恢复命令

  1. u (撤销)
  2. ctrl+l+r (恢复)

e. 复制粘贴命令

  1. yy 或者 数字yy(yy复制当前行,5yy复制5行)

  2. p 或者 数字p (p在光标所在位置向下新开一行粘贴, 5p 粘贴5次)

问题1:复制第2行内容,放在末尾进行粘贴
光标调到第2行: 2G
复制第二行内容 yy
光标移动到最后一行 G
粘贴 p

问题2:删除当前光标所在行,及下2行的数据
3dd

3、末行模式下的简单操作
保存和退出
命令模式下按shift + 冒号进入末行模式

  1. w 只保存
  2. q 退出,没保存会询问
  3. wq: 保存退出(或者x)
上一篇下一篇

猜你喜欢

热点阅读