Linux(一)linux的安装与基本命令

1. Linux与Windows的比较


对于windows操作系统而言,列举一些windows的不足:

  1. 个人用户正版windows需要收费
  2. 系统长时间运行不稳定,变慢,容易死机
  3. windows常招到病毒攻击

相反,上述windows的不足,恰好是另一款操作系统Linux的优势所在,这里是一些Linux的优点:

  1. 个人用户正版Linux不需要收费或安装特殊功能需要收费
  2. 系统长时间运行稳定,不会变慢,不容易死机
  3. Linux不常招到病毒攻击,也很难攻击

总之,做为一个后端JavaEE程序员,在windows中开发完程序后,得部署到一个相对比较安全稳定的服务器中运行,这台服务器上安装的不是windows操作系统,而是Linux操作系统。为了顺利的操作Linux操作系统,我们得学会:安装Linux操作系统,对目录,文件,权限等基本操作命令。

2. Linux的概念


Linux是基于Unix的开源免费,多用户,用任务的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境。

3. Linux的分类


3.1 根据市场需求不同,分为两个方向


  1. 图形化界面版:注重用户体验,但目前成熟度不够。
    在这里插入图片描述
  2. 服务器版:没有好看的界面,是以在控制台窗口中输入命令操作系统的,是我们架设服务器的最佳选择,类似于DOS界面。
    在这里插入图片描述

3.2 根据原生程度不同,分为两个方向


  1. 内核版本:在Linux之父领导下的内核小组开发维护的系统内核的版本号。
  2. 发行版本:一些个人/组织/公司在内核版基础上进行二次开发而重新发行的版本号。

3.3 根据发行不同,分为多个版本


  1. ubuntu
  2. redhat
  3. centos
  4. lubuntu
  5. freeBSD
  6. 等等
    在这里插入图片描述

4 Linux的安装


我们要安装的是:服务器版 + 发行版 + CentOS版

4.1 虚拟机简介


虚拟机是一个软件,它可以使你在一台真实PC机器上同时运行二个或更多window / linux等操作系统。它可以模拟一个标准PC环境。这个环境和真实的计算机一样,都有芯片组、CPU、内存、显卡、声卡、网卡、软驱、硬盘、光驱、串口、并口、USB控制器。

目前市场上流行的虚拟机有两种:

  1. VMware(威睿)公司的虚拟机软件,功能强大,收费产品,有30天试用期
  2. VitrualBox (甲骨文)公司的虚拟机软件,免费商品

4.2 安装虚拟机


VMware安装与使用

4.3 安装CentOS 7.0系统


Linux(CentOS)安装

5. Linux的分类


5.1 客户端简介


在实际开发中,Linux服务器都在其他的地方,我们要通过windows客户端工具远程去连接Linux并操作它,连接Linux的windows客户端工具有很多,企业中常用的有secureCRT、Putty、xshell、SSH Secure等。
课程中我们使用secureCRT客户端工具进行连接Linux操作系统,该工具是免费的图形化界面和命令行窗口集一身客户端工具。

5.2 安装客户端及使用客户端连接Linux

CRT安装与连接linux

6. Linux 的目录结构


在这里插入图片描述

在这里插入图片描述
上述Linux目录结构中,主要关注:

  1. root目录:超级管理员所在的目录,用~表示
  2. home目录:普通用户所在的目录
  3. usr目录:安装用户文件所在的目录
  4. etc目录:Linux系统管理和配置文件所在的目录

7. 目录操作


7.1 查看


语法:ls [参数]
查看目录下的内容

参数解释:

  1. -l 以详细形式查询当前目录下所有文件和目录,不包括隐藏文件和目录
  2. -a 以精简形式查询当前目录下所有文件和目录,包括隐藏文件和目录
    命令:
cd /   		进入根目录
ls       	以精简形式查询当前目录下的内容
ls ‐l 		以详细形式查询当前目录下的内容,d表示目录,‐表示文件;此命令可以简写为ll
ls ‐a 		以精简形式查询当前目录下的隐藏内容
ls ‐la 		以详细形式查询当前目录下的隐藏内容,la和al都可
clear 		清屏

在这里插入图片描述
在这里:

  • d: 表示目录
  • -: 表示文件
  • l: 表示快捷方式

7.2 目录


切换目录

语法: cd 目录
命令:

cd ~ 		当前用户目录
cd / 		根目录
cd ‐ 		上一次访问的目录
cd .. 		上一级目录
cd 		缺省当前用户目录

显示当前工作目录

命令 :

pwd

在这里插入图片描述

7.3 增加


语法:mkdir 目录
创建目录

命令:

cd / 		定位于根目录
mkdir aaa 	在当前目录下创建aaa目录,相对路径
mkdir ./bbb 	在当前目录下创建bbb目录,相对路径
mkdir /ccc 	在根目录下创建ccc目录,绝对路径

在这里插入图片描述

7.4 搜索


语法:find 目录 -name ‘条件’
根据条件,搜索目录下的内容

命令:

cd /
find / ‐name 'b' 		查询根目录下(包括子目录),名为b的目录和文件
find / ‐name 'b*' 		查询根目录下(包括子目录),名以b开头的目录和文件
在Linux中,按ctrl+c 		强行终止程序执行

在这里插入图片描述

7.5 修改


语法:mv 旧目录 新目录
对目录进行重命名

命令:

cd /
mv aaa aaaa  	将根目录下的aaa目录修改为aaaa

在这里插入图片描述

7.6 剪切


语法:mv 原目录位置 新目录的位置
对目录进行移动

命令:

cd /
mv /aaaa /bbb 		将根目录下的aaaa目录,移动到bbb目录下,在bbb目录下也叫aaaa目录
mv bbbb usr/bbbbb 	将当前目录下的bbbb目录,移动到usr目录下,且修改名为bbbbb

在这里插入图片描述

7.7 拷贝

语法:cp [参数] 目录 目录的新位置
对目录进行复制

参数解释:

  1. -r 递归处理,将指定目录下的文件与子目录一并处理

命令:

cd / 				定位于/目录
cp ‐r /aaa /bbb 		将/目录下的aaa目录复制到/bbb目录下,在/bbb目录下名字为aaa
cp ‐r /aaa /bbb/aaaa 		将/目录下的aaa目录复制到/bbb目录下,且修改名为aaaa

7.8 删除


语法:rm [参数] 目录
对目录进行删除

参数解释:

  1. -r 递归处理,将指定目录下的所有文件及子目录一并处理,它会询问你,y表示是删除,n表示不删除
  2. -f 强制删除目录,它不会询问你

命令:

cd /
rm ‐r /aaa	 	询问式删除/目录下的aaa目录,y表示确认,n表示取消
			如果aaa目录中还有子目录,则进入aaa目录下的所有子目录,依次询问
rm ‐rf /bbb 		强行式删除/目录下的bbb目录
			如果bbb目录中还有子目录,也会被强行式删除

在这里插入图片描述

8. 文件操作


8.1 增加


语法:touch 文件
在指定的目录中,创建文件

命令:

cd /aaaa 	 定位于/aaaa目录
touch a.java	 在aaaa目录中创建a.java文件
touch b.txt 	 在aaaa目录中创建b.txt文件
touch c.xml 	 在aaaa目录中创建c.xml文件

在这里插入图片描述

8.2 查看


语法:cat/more/less/head/tail 文件
以只读方式查看文件的内容

命令:

cd /aaaa
cat a.java 		查看a.java文件的最后一页内容
more a.java 		从第一页开始查看a.java文件内容,按回车键一行一行的看,按空格健一页一页的看,q退出
less a.java 		从第一页开始查看a.java文件内容,按回车键一行一行的看,按空格健一页一页的看,
			支持使用PageDown和PageUp翻页,q退出
head a.java		查看a.java文件的前10行内容
tail a.java 		查看a.java文件的后10行内容
head ‐n 7 a.java 	查看a.java文件的前7行内容
tail ‐n 7 a.java 	查看a.java文件的后7行内容

8.3 删除


语法:rm [参数] 文件
从目录中删除文件

参数解释:

  1. -r 递归处理,对于文件删除,这个参数可带,也可不带,它会询问你,y表示是删除,n表示不删除
  2. -f 强制删除文件,它不会询问你

命令:

cd /aaaa
rm ‐rf a.java 		强行式删除当前目录下的a.java文件
rm ‐rf ./a* 		强行式删除当前目录下以a开头的所有文件
rm ‐rf ./* 		强行式删除当前目录下所有文件

在这里插入图片描述

8.4 修改


修改已存在文件的内容

8.4.1 vi编辑器

linux 下的vi 是一种文字编辑器,后来的升级版本是vim。vi 分为三种模式:一般模式、编辑模式(插入模式)、命令模式(底行模式)。

8.4.2 vi编辑器的使用

两种语法 :

  • vim 文件
  • vi 文件

使用方式:

  • 输入“vim 文件名”进入“一般模式”
  • 按下“i”从一般模式,进入“插入模式”
  • 按下“esc”从“插入模式”退出到“一般模式”
  • 在“一般模式”下,输入“:wq”,退出编辑。
    在这里插入图片描述
    命令演示:
vim a.txt 	用vi编辑器打开/创建a.txt文件
按i键,进入编辑模式
输入内容
按esc键,进入一般模式
按 Shift : 进行命令模式
输入wq回车,表示存盘退出;输入q!回车,表示不存盘强行退出

在这里插入图片描述

8.4.3 常用快捷键

编辑模式快捷键

快捷键 作用
yy 复制当前行
p 粘贴
dd 删除当前行
G 到文件的最后一行

底行模式快捷键
在这里插入图片描述

9 压缩

windows的压缩文件的扩展名: .zip或.rar
Linux中的打包文件扩展名:.tar
Linux中的压缩文件扩展名:.gz
Linux中打包压缩的文件扩展名:.tar.gz

9.1 打包压缩包

压缩语法:tar [参数] 打包压缩后的文件名 要打包压缩的文件看,支持通配符*号
将多个文件打包并压缩成一个特定的文件

参数解释:

  1. -c 创建新的文件(必选项)
  2. -f 文件名由命令台设置(必选项)
  3. -v 输出文件清单(可选项)
  4. -z 自动识别压缩或解压(可选项)

常用方式:tar -zcvf

命令:

cd / 				定位于/目录
mkdir aaa 			创建aaa目录
cd aaa 				定位于aaa目录
touch a.java 			创建a.java文件
touch b.java 			创建b.java文件
touch c.java 			创建c.java文件
tar ‐zcvf haha.tar.gz a.java b.java c.java
或
tar ‐zcvf haha.tar.gz ./* 	将当前目录下的所有文件打包压缩成haha.tar.gz文件

9.2 解压压缩包

解压语法:tar [参数] 压缩文件
解压后的文件在当前目录中

解压语法:tar [参数] 压缩文件 –C目录
解压后的文件放入指定目录中,注意-C是大写字母C,后面不用接空格符
将一个特定的文件解包成多个文件,放在指定的目录下

参数解释:

  1. -x 取出文件中的内容(必选项)
  2. -f 文件名由命令台设置(必选项)
  3. -v 输出文件清单(可选项)
  4. -z 自动识别压缩或解压(可选项)

命令:

cd /soft 		 定位于/目录
rm ‐rf ./*.java		 强制式删除当前目录下所有扩展名为java的文件
tar ‐xvf haha.tar.gz 	 解压haha.tar.gz这个压缩文件,里面的文件释放到当前目录下
tar ‐xvf haha.tar.gz ‐C/usr/local
			 解压haha.tar.gz这个压缩文件,里面的文件释放到/usr/local目录下

10 其他


10.1 查看进程


语法:ps [参数]
进程,正在执行的一个应用程序

常用参数组合:

  • ps -ef
  • ps -au

参数解释(了解):

  1. 无 显示当前用户通过终端启动的所有进程
  2. -a 显示所有用户通过终端启动的所有进程
  3. -u 显示所有用户通过终端启动的所有进程详细信息
  4. -x 显示所有用户通过终端和非终端启动的所有进程详细信息,内容相当多,少用
  5. -e 此参数的效果和指定"A"参数相同,显示所有程序
  6. -f 显示UID,PPIP,C与STIME栏位

10.2 杀死进程


语法:kill [参数] 进程号
最好只删当前用户在终端中启动的进程,而不要删除其它用户的进程,尤其是root用户的进程。
先用ps -au或者ps -ef来确认一下当前需要杀死进程号,再用kill 进程号将这个进程杀死

参数解释

  1. 无 普通式删除进程号对应的进程
  2. -9 强制式删除进程号对应的进程

命令:

ps au 		显示所有用户通过终端启动的所有进程详细信息
kill 1128 	杀死1128进程号,如果这个1128的进程杀不死,用下面这个命令:
kill ‐9 1128 	强制性杀死1128进程号

在这里插入图片描述

10.3 搜索


语法:grep [参数] 搜索字符串 文件名
grep是Linux中强大的文本搜索命令。

参数解释:

  1. -i 搜索时不区分大小写,大小写不敏感
  2. -n 显示匹配行及行号,大小写敏感
  3. -v 显示不匹配行及行号,大小写敏感

命令:

cd /
grep as 123.txt 	在123.txt文件中搜索as字符串,大小写敏感,显示行
grep ‐n as 123.txt 	在123.txt文件中搜索as字符串,大小写敏感,显示行及行号
grep ‐v as 123.txt 	在123.txt文件中搜索as字符串,大小写敏感,显示没搜索到行
grep ‐i as 123.txt 	在123.txt文件中搜索as字符串,大小写不敏感,显示行
grep ‐ni "Q q" 123.txt 	在123.txt文件中搜索Q q字符串,大小写不敏感,显示行及行号

10.4 管道


语法:
一个命令的输出,可以作为另一个命令的输入,至少有二个命令参与执行。
常用的需要使用管道命令有more ,grep 。

命令:

ps ‐au | more 		分屏显示Linux中所有用户通过端终和非终端启动的所有进程的详细信息
ps ‐au | grep ‐i a 	在ps ‐au的结果中,搜索字符串a,大小写不敏感

10.5 关机


语法:halt

命令:

halt 正常关闭安装Linux的虚拟机

也可以使用虚拟机软件将机器关闭.linux系统启动后,一般不做关机处理.
在这里插入图片描述

10.6 重启

语法:reboot

命令:

reboot 重新启动安装Linux的虚拟机

10.7 文件权限


10.7.1 权限的简介

Linux中对每个目录和文件都做了规定,只能由满足条件的用户才能操作,这个规定叫权限。

在这里插入图片描述

10.7.2 操作权限

chmod(change mode) 功能:变更文件或目录的权限。

语法:
在这里插入图片描述
参数如下:

-R 递归处理,将指定目录下的所有文件及子目录一并处理。
权限范围的表示法如下:

u:User,即文件或目录的拥有者。
g:Group,即文件或目录的所属群组。
o:Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。
a:All,即全部的用户,包含拥有者,所属群组以及其他用户。

符号如下:

+ 添加权限
- 取消权限

有关权限代号的部分:

r:读取权限,数字代号为"4"。
w:写入权限,数字代号为"2"。
x:执行或切换权限,数字代号为"1"。
-:不具任何权限,数字代号为"0"。

命令:

chmod u+x 1.txt 	 # 给1.txt的拥有者添加执行权限,这种写法稍微有点麻烦,开发中一般使用数字代号
chmod 755 1.txt		 # 给1.txt的拥有者设置读写执行权限,给所属组添加读和执行权限,给其他用户添加读和执行权限
chmod 777 a.txt 	 # 给所有人添加对此文件操作的所有权限

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_36662478/article/details/88855033