Linux 是市场份额 相当大的操作系统
最开始诞生于 1991,前身是 Unix
贝尔实验室开发了 Unix 操作系统
Unix 火了之后,衍生出很多的分支
其中有一只为 “Minix”,由荷兰的Andrew S. Tanenbaum 教授开发
MINIX 含义为 “小型的UNIX”,源代码开放给大学教学和研究工作
1991 年, 还在读大学的 芬兰人 Linus Benedict Torvalds (1969年12月28日出生, 当时 22 岁) 基于Minix 的启发,开发出了 Linux 的第一个版本
经过这么多年的发展,Linux 已经成为 世界第一大操作系统
主要有四种:
这个环节我们最重要的是得到三个信息:
这里我们使用的是 XShel
ubuntu:是用户名
VM-8-2-ubuntu:是主机名
ls:list 列出当前目录下都有哪些内容(文件/目录)
直接输入 ls,是查看当前目录的情况
ls /
加上 / 意思就是看看 / 这个目录下的情况
(/ 称为“根目录”,就是 Windows 上的此电脑,Linux 是没有盘符的)
这些就是 / 目录下包含的内容
这些都是系统自带的文件和目录
ls -l /
后面是 小写 L 不要写成 大写的 i 或者数字1
按照列表的方式显示(最常见的功能)
也可以简化成 ll /
前面的第一列是文件的权限(当前用户,是否刻度可写可执行)
权限字符串的第一个字母,表示了文件的类型
-普通文件(显示成白色)
d 目录文件(文件夹)(显示成蓝色)
l 连接文件(快捷方式)(显示成浅蓝色)
第二列就是表示文件的拥有者是谁
此处的文件是 root 所拥有的
第三列是文件的大小
第四列是修改时间
cd:change directory 修改(当前)目录
将当前工作目录改变到指定的目录下
使用 pwd 可以查看到当前所处的路径的绝对路径
在Linux 的命令中,但凡涉及到 目录 相关的操作,都是可以支持 绝对路径 和 相对路径的
Linux 上,绝对路径,是以 / 开头的
相对路径,以 . 或者 … 开头的(有的时候 . 可以省略)
cat:查看文件内容(把文件内容打印到控制台上)
由于目前没有内容,所以显示空
输入一个命令,没有任何提示
此时就是“成功”
如果失败,就会告诉你一些报错信息
echo:打印内容到控制台上
此处这里的 > 就是“重定向”
但是重新写入之后,只会存在这一次写入的内容
使用 >> 就可以保存上一次的
但是这里的 echo + 重定向,只能写一些简单的字符串内容
如果你的需要写的内容很多,就不太方便了,也不方便修改
vim:这个是 Linux 上自带的一个文本编辑器,使用 vim 就可以更灵活的对文件进行编辑了
虽然和 记事本 的定位差不多,实际上 vim 的使用要复杂很多
vim 更期望输入单个按键, 就能起到快捷键的效果
vim 引入了“模式"概念
启动 vim 之后,默认处于 normal mode (普通模式),键盘按键,都是快捷键, 而不是输入文本
要想输入文本, 就需要进入 inset mode (插入模式)
进入插入模式的方法, 有很多,最简单的就是 i
在 xshell 中,按 ctrl + s 是冻结屏幕的意思
有的时候,服务器打印的日志太快了,滚动太快看不清,就可以冻结屏幕
按 ctrl + q 就能接触冻结
先按 esc,回到普通模式
再按 : 进入命令模式
此时输入的内推,就是vim 的命令
w:保存
q:退出
mkdir:make directory 创建目录
rm:remove 删除文件/目录
有的系统上(centos)输入 rm 删除,会有一个提示,是否确认要删除,输入 y 就是删除,n 就是不删除
删除目录,不仅仅是删除目录本身,还要删除目录包含的其他目录和文件
需要使用 rm -r 来删除,-r 表示“递归”
有的系统上,删除的事后,也会和上面一样,提示你是否要真的删除
如果是删除目录的话,递归过程比较麻烦,每个目录都会提示你要进行确认
就可以使用 rm -rf 的方式直接删除
f 表示“强制删除”不需要进行确认
此处的 rm 其实是一个危险操作!!
一旦删除,数据就没了!!
删除的时候,一定要确保,你删的这个东西确实是不再使用了
mv:move 移动(剪切,粘贴)
mv 要移动的源 移动的目标
也可以移动目录(把目录内部包含的所以内容都进行移动)
使用 mv 还可以针对文件/目录进行重命名
cp:copy 复制(复制,粘贴)
cp 要复制的源 要复制的目标
也可以拷贝普通文件,也可以拷贝目录
拷贝目录的时候,和 rm 类似,都是要加上 -r 选项,表示要递归的拷贝目录里的内容
grep:字符串匹配/查找
比如,想查找某个文件中是否包含某个关键字,这个关键字在第几行,都可以使用 grep 来查看
加上 -n 选项,就可以显示行号
grep 不仅仅可以在文件中查找还能搭配其他的命令,完成更复杂的查找操作
ps:process show 显示进程
显示当前系统上都有哪些进程
这样只能看到当前会话(终端)对应的进程,非常不安全
很多时候 ps 都会搭配 grep 来使用
比如,查看 mysql 进程的进程 pid
| 叫做管道
(把前一个命令的输出,作为有一个命令的输入)
netstat:查看网络信息
可以用来查看某个某个端口是否被某个进程使用
也可以查询某个进程使用了哪个端口
基于 包管理器 进行安装
Linux 会把一些软件包,放到对应的服务器上通过包管理器这样的程序,来把这些软件包给下载安装
ubuntu 系统,包管理器 apt
centos 系统,包管理器 yum
这里需要确保是处于 root 用户下(如果不是管理员,需要使用 sudo su 切换到管理员)
在 Linux 命令行中,复制 ctrl + insert,粘贴 shift + insert(Windows 也支持)
由于我们使用的是 tomcat 8.5,搭配的是 servlet 3.1
只能手动安装了
由于 tomcat 就是 基于 java 来实现的,java 是跨平台的
把要上传的压缩包,往 xshell 上一拖, 就过去了1) 一次只能拖一个文件(打成压缩包)
2)要想能拖上去需要先安装 lrzsz 这样的软件包
ubunt uapt install Irzsz
centos yum install Irzsz
sz 把linux 上的文件传到 Windows
rz 把 windows 上的文件传到 linux 上
上面的 .bat 是 Windows 上使用的
下面的 .sh 是 Linux 上使用的
先 cd 到 bin 目录中
chmod +x *.sh
x 表示可执行
*.sh 表示给所有的 .sh 文件都进行修改
执行完这个操作,顺利完成没报错 说明就成功了
此时这些 .sh 文件都 变绿了
使用ps查看java进程有没有
使用 netstat 查看 8080 是香被绑定
访问 tomcat 的欢页面
直接通过 apt 来安装 / yum 安装
把数据库/数据表都在云服务器上创建好
当把程序放到云服务器上执行,程序访问的就是云服务器上的数据库了
需要确保数据库里面有数据(有表,有库)
把之前代码中的 db.sql 中的内容 复制到 云服务器中的 mysql 客户端中
打包之前,还需要确认一下 mysql 相关的配置是否需要修改
把密码置空就可以了
将 war 包拷贝到 Tomcat 的 webapps 目录中
tomcat 对自动针对 war 包进行解压缩
解压缩成功,基本上就是部署成功了
如果出现错误,在 tomcat 中查找
etc 目录大部分就是放各种程序的配置文件的
设置一下密码就可以了
ALTER user ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘’;
这样就可以访问了!