Linux

文章目录

  • Linux
    • 一、使用Xshell
    • 二、常用命令操作
      • 1、ls(罗列文件)
      • 2、cd(切换)
      • 3、pwd(查看当前目录)
      • 4、touch(创建空文件)
      • 5、cat(查看)
      • 6、echo(编辑简单内容)
      • 7、mkdir (创建目录)
      • 8、rm(删除)
      • 9、mv(移动)
      • 10、cp(拷贝)
      • 11、less
      • 12、vim(查看编辑文件)
        • (1)、如何编辑
        • (2)、如何保存退出
      • 13、date
      • 14、ps
        • (1)、grep
      • 15、netstat
    • 三、认识Linux中的权限
    • 四、在Linux上部署Web程序
      • 1、安装JDK:
      • 2、安装Tomcat
      • 3、安装Mysql
    • 五、部署Web程序
      • a、构造数据库
      • b、微调本地代码
      • c、重新打包
      • d、部署程序

前言:

说一下Linux的notion,Linux是一个操作系统,Linux表示一个“操作系统的内核”;内核包含了操作系统最核心的功能:

1、管理各种的硬件设备

2、给各种软件程序提供一个稳定的运行环境

一个完整的操作系统 = 》 操作系统内核 + 配置的应用程序

Linux的发行版非常的多,现在公司大多最主要使用的发行版,叫作Radhat(红帽),但是红帽是收费的,但是可以用CenOs来代替(Redhat)红帽, 这两个事情只是换了一个logo,其他无本质差别。

一、使用Xshell

1、先要买一个云服务器获取外网ip,可以在打折的时候买

2、选镜像要选 centOs 的镜像

3、在官方下载Xshell ,官网地址:(https://www.xshell.com/zh/xshell/),下载的时候可以选择免费版的。

4、在Xshell中顶部新建会话,然后设置一些属性

5、然后就是设置用户名和填写密码;

6、最后在打开会话目录中点击自己要选的会话,然后连接即可

7、成功连接云服务器;

二、常用命令操作

1、ls(罗列文件)

ls

ls ----> 罗列出当前目录的文件和目录 (也可以理解成 list)

​ 类似于Windows里面的“文件资源管理器”

这种类似于“文件资源管理器”中的大缩略图显示项,只显示名称

ls -l ------> 这里按照列表的方式来显示,会显示详细信息,也可以简写“ll” ,这里的每个结果都占一行,然后显示的信息就更详细了。

文件名的地方:

1、白色的是普通文件

2、蓝色的是目录

3、红色的是压缩包文件

4、绿色的是可执行文件

“ll /” 这里就能看到“/"目录中的内容,/ 也叫作 “根目录” , "/" 也相当于Windows上的“此电脑”

2、cd(切换)

cd(change directory)命令: 切换目录

cd 后面跟一个具体的目录,这个目录就表示要切换到哪里,cd往往是跟ls搭配使用,两个结合,就可以完成Windows 一样的查看文件和目录效果了。

cd /

这个操作就是切换 / 的目录,然后命令提示服里面的 ~ 就变成了 / ,cd 后面可以填写任意的目录

cd 后面填写可以绝对路径,也可以是相对路径!

1、在Linux上,认为以 / 开头的就是一个绝对路径,从根目录往下数,获取到完整的路径

2、以 . 或者 … 开头的就是相对路径,从当前目录开始往下找,找到的一个不太完整的目录

​ 当前命令行所在的目录就称之为工作目录,指定相对路径,都是以工作目录为基准的,如果当前的工作目录不同,要找一个文件的相对路径,也是不同的

​ ./ —> 当前目录

​ …/ ---->上级目录

小技巧:

​ 按 tab 可把其他的单词补全

3、pwd(查看当前目录)

pwd ----> 是用来查看当前目录的绝对路径的


前面这三个命名是常用命令,搭配使用就可以完成“windows”上的“文件资源管理” 这样的程序效果

双击:cd

查看列表:ls -l

目录:pwd

接下来就会还会实现常用的功能。

1、创建文件 touch

2、查看文件内容 cat(concatenate)

3、创建目录 mkdir(make directory)

4、删除 rm(remove)


4、touch(创建空文件)

touch 文件名 -----> 就会创建出一个空的文件出来

5、cat(查看)

cat ------> 通过 cat 文件名,来查看文件里面的内容

6、echo(编辑简单内容)

echo ----> 通过echo操作就能在文件中简单写入一些内容

echo "java hello" > java101.txt

这里的意思就是把“java hello" 写入java101.txt 的文件中

这里的 > 叫做重定向,Linux的重定向意思又是另外的意思了,也就是把内容写到指定的文件中

echo "java hello"

这里只会显示在屏幕上

7、mkdir (创建目录)

mkdir(make directory) 创建目录

mkdir 后面填写的目录也可以是绝对路径,也可以是相对路径

8、rm(删除)

rm(remove) 删除

在删除的时候可能会有提示,输入y(yes)表示确认,输入其他的值都表示取消

rm 不仅可以删除文件,也可以删除目录;因为目录中有很多的文件,此时需要递归所以要加上-r这个选项,完整命令“rm -r”

-r 表示递归,删除的目录里面可能还有文件,或者有其他的目录,要删除这个目录,就要先删除到目录中的子目录

  • 这里出现了一个问题,如果这个目录中 子目录有很多,难道要手动输入多次y吗?

所以我们更常用的情况就是,在加上 -f选项, -f 就表示直接跳过确认,直接删除(强制删除,f表示 force)。完整命令“rm -rf 目录名”

删除的时候一定要小心小心再小心,一旦删掉,Linux是没有回收站的,删掉就无法恢复了!!!!,尤其是有一个命名“rm -rf / ” 的时候,这就删除了这个系统,“ / ”这个就是此电脑,如果收入这个命名“rm -rf / ” 那么就全删了

在公司一定不能用“rm -rf / ” !!!

删除的情况都是无意的,可能要删除某个文件用绝对路径的时候,可能会写成”rm -rf / root/aaa",这里的 “空格/空格” rm就会以为你要删除两个目录,rm支持删除多个目录或者文件,多个文件之间使用空格分割的。

”rm -rf / root/aaa" 这里表示第一个目录就是 “ / ”; 第二个目录就是相对路径 “root/aaa”,这里的“ / ” 就表示删除了“此电脑”!

9、mv(移动)

mv(move)-----> 进行移动

mv 源目录 目标路径

mv 这个操作可以边移动边改名字

所以说 mv 不仅仅可以移动还可以 重命名 。

10、cp(拷贝)

cp(拷贝)用法和 mv 一致 只是没有重命名功能。

cp 复制一个目录并移动 需要用到递归,要加上“-r” ;完整命令“cp -r 源目录 目标目录”

在Linux中有个man命令可以查看命令的手册,说明,输入 “man XX” 就可以看到.

下面就要介绍重要的编辑和查看操作了!!!虽说cat可以用来查看,echo可用来编辑但是在现在已经不流行了。

11、less

这是查看文件,一般是用来查看大文件的时候用的命令,当使用less打开文件的时候用上下箭头来翻页,q是退出,最大的优势在于可以秒开大文件,less打开的时候显示多少就从磁盘读多少出来,不会太吃内存,在很多编辑器中是要把文件读完才显示出来,特别是大文件,读的慢,而且还浪费内存。

12、vim(查看编辑文件)

相当于电脑上面的记事本

直接在Xshell中输入 vim,就会进入vim页面主页面,就是以下这个页面。

vim 文件名,就会打开一个具体文件,然后进入编辑页面

(1)、如何编辑

  • vim 中用两种模式,当我们刚进入vim 时是 Normal Mode(普通模式)这时是不能编辑的,需要却换到 Insert Mode(插入模式)才能编辑,按下小写字母 i 就会进入insert模式,做下角也会显示INSERT提示,进入到插入模式键可以想记事本一样编辑了。

(2)、如何保存退出

1、先要回到 Normal Mode,按下键盘上的 esc 键就会回到 Normal Mode

2、看到 Insert 没有了说明回到了 Normal Mode

3、保存退出,需要先按下 然后在输入 wq 回车,就能保存退出

​ > w : write 保存

​ > q : quit 退出

13、date

查看,设置,格式化时间

1、在Linux机器上,没有显示的时间,可以直接date 命令获取当前时间指定的格式

2、也可以灵活的设置时间的格式

date +"%Y/%m/%d %H:%M:%S"
date +"%Y-%m-%d %H:%M:%S"
date +"%H:%M:%S"
date +"%H:%M"//注意这里 +后面是没有空格的!!!!

这里用date命令再 + 上时间日期的格式化符号,就可以获得自己自定义的时间,这种时间日期格式化的符号在很多编程语言中都是用这种类似的符号体系来表示,而他们的作用是用来是以时间作为后缀,防止文件名重复,更好的辨认文件

3、借助 date 可以用来转换时间戳

date +%s

(1)、这个表示就是查看当前时间戳

(2)、也可以用时间戳转换为可读时间

date -d@时间戳

14、ps

ps(process show)展示进程,相当于windows上的“任务管理器”

ps aux

这是这个命令的常用选项,是个固定搭配,用来看当前主机上面的进程

图片就不展示了,进程太多,懒得截图。

(1)、grep

正因为进程多,当我们要查找指定进程的时候,就要用 grep来进行操作查找了,grep 是对输出的结果进行筛选(按字符串来查找)

ps aux | grep xxx

中间的 “|” 叫做 管道,也是跟 grep 命令 搭配这使用的,这个管道的作用,相当于通过 ps aux把所有的进程都通过管道传递给 grep 这边,grep就根据后面的关键字来进行查找,此时关键字是 vim,那么就把包含了 vim 的字符串的行都留下。

15、netstat

查看网络的状态的,通常也是跟 管道和“grep” 来搭配着使用,他的作用主要是来查看服务器上面的端口号是不是被占用了。

netstat -anp | grep xxxx

此时查看的是3306端口,这里什么都没有出现,说明就没有被占用,如果出现了东西,并且有提示说明,那你的端口号就被占用了。

三、认识Linux中的权限

r ---------> read (可读)
w ---------> write (可写)
x ---------> execute (可执行)
开头是 “d” 表示是一个目录
开头是 “-” 表示是一个普通文件权限中的可执行,是指这个文件是否可以被操作系统加载并运行(当成一个进程来运行),授予了这个权限才能运行,为什么要设置是这个机制,主要还是防止黑客,运行一个程序是可能存在风险的,黑客可能会在程序里面搞破坏。

以第一个 “drwxr-xr-x” 为例,d说明是一个目录,后面的 rwx 是 能读 能写 能执行,后面的 r-x 是 能读 不能写 能执行,依次为例。

这里就有一个疑问了,这里的为什么会出现 三次的rwx 尼?

​ 所谓权限就指,Linux针对用户就分成了三类,然后这三类用户就可以设置不同的权限。

​ 1、文件的拥有者

​ > 可读可写可执行

​ 2、文件的拥有者的同组的用户

​ > 可读 不可写

​ 3、其他用户

​ > 不能读 不能写,不能执行

但是还有一个特例,就是管理员,管理员拥有最高权限,可以无视上面的规则!!!

四、在Linux上部署Web程序

部署Web程序需要搭建环境

1、JDK

2、Tomcat

3、MySQL

环境代建好了基本上把程序部署在Web上面就轻松了。

1、安装JDK:

在Linux中一个类似于应用商店的东西加做 “yum" ,"yum" 叫做包管理器,需要下载什么直接搭配 grep这个关键字来查找就行

现在我们使用命令来查找 jdk

yum list | grep jdk

筛选出来有很多jdk安装包,这里我们选自1.8版本的,后面带有 devel(软件开发包),后缀x86_64 就表示64位系统软件包,如果后缀是i686,表示是32位系统的软件包

选中过后输入命令安装等待即可:

yum install java-1.8.0-openjdk-devel.x86_64

2、安装Tomcat

这里推荐手动安装,因为 yum 里面的tomcat一般版本太老了,有些Servlet的功能可能不支持。

1、这里可以去tomcat的官网把tomcat下载好,(https://tomcat.apache.org/download-80.cgi)

2、找到本地下载好的tomcat压缩包,拷贝到Linux上就行了,直接拖拽的方式拷贝,因为tomcat可以跨平台,然后在通过 unzip apache-tomcat-8.5.72.zip 即可,如果不能,则需要 yum install unzip

这样就说明安装解压成功了。

接下来就是启动tomcat了,启动tamcat需要进入 bin 目录,在 bin 目录中找到 startup.sh 然后打开就行,在Linux中 .sh 是Linux使用的,在Windows中 .bat 是Windows使用的,但是默认情况下不能直接运行,需要给 .sh 赋予可执行权限,

命令:

chmod +x *.sh

这个命令就是赋予 .sh 可执行权限。

这里显示绿色说明后缀是 .sh 的就可以执行了。看前面的权限也可以看出来文件是可执行的。

执行命令:

sh startup.sh
// 或者
./startup.sh

这两个命令任意一个都行

看到这里说明已经打开了tomcat,我们去网页上再看看,使用外网 ip 然后端口号输入 8080,出现tomcat欢迎的画面就说明你已经成功打开了tomcat

注意:第一次访问是访问不了的,还需要配置自己云服务器后台,如果是 ECS 服务器配置就是安全组,如果是轻量应用服务器就要配置防火墙,配置里面添加规则,添加一个8080端口就能访问了!!因为在云服务器是在外网上面的,非常的危险,所以云服务器厂商为了报复我们的云服务器,所以就默认把你机器的端口都给屏蔽了,这样黑客在外网上面无法访问你的服务器的各种端口了,要用端口需要自己打开端口才行。

3、安装Mysql

这里通过 yum 的方式来下载,但是安装的不是正版的 Mysql ,而是 MariaDB,这两个是差不多一样的功能,因为安装 MariaDB 相对正宗的 Mysql 来说要简单一点,正宗的 Mysql 要更复杂,也没必要。

这里推荐一篇帖子,可以按照帖子上面的来,更详细和基础一些:(https://zhuanlan.zhihu.com/p/49046496) 。

使用:mysql -uroot 命令的时候,看到如下内容说明就启动服务器成功了。

帖子后面会提示说没有密码不安全需要设置密码,但是这里的结论可以说不太准确,由于我们数据库用的是3306端口,云服务器石灰包3306端口隐藏在安全组/防火墙里面的,黑客访问不了,因此我们可以不用设置密码,然后默认的密码就是 “”,空字符串。

五、部署Web程序

a、构造数据库

之后我们访问的是云服务器里面的东西,所以要保证数据库的表要部署在Linux上面,构造表的操作就是 建表,添加数据…

b、微调本地代码

这里的微调本地代码,是保证的 Servlet 代码能够连上 Linux 的数据库。

c、重新打包

这里的打包可能默认情况下不一定符合我们的需求,打包出来是一个 jar 包,但是我们需要打的包是 war 包,取名字尽量也是要取短一点的名字。所以在 pom.xml 中配置文件代码

当看到target目录下后缀有 .war 包就可以了

d、部署程序

这一步是最简单的了,直接把 war 包拖到 tomcat 的 webapps 的目录下即可。

拖拽完,tamcat就是自动解压缩

最后的最后再检验下可不可以在浏览器中登录成功


这里就是帖子的所有内容了,部署Web程序挤不上都是以上的步骤来进行部署,再来就是介绍了Linux常用的命令,在部署Web程序是一步关键的步骤,如果一个程序不能被其他人访问,那么你的Web程序也就失去了本身的意义

Linux常用命令 + Web程序部署相关推荐

  1. Linux常用命令(一) 项目部署常用命令

    文章目录 前言 一.部署项目常用命令学习 1.进入目录 cd 2.查询目录 ll 3.新建路径/文件夹 mkdir 4.删除目录rmdir/文件夹 rm 5.vi / vim命令基本操作 6.上传文件 ...

  2. Linux 基本使用和 web 程序部署

    Linux 背景知识 Linux 是什么 Linux 是一个操作系统. 和 Windows 是 "并列" 的关系. Unix & Linux 发展历程图 经过这么多年的发展 ...

  3. Linux常用命令大全-toolfk程序员在线工具网

    本文要推荐的[ToolFk]是一款程序员经常使用的线上免费测试工具箱,ToolFk 特色是专注于程序员日常的开发工具,不用安装任何软件,只要把内容贴上按一个执行按钮,就能获取到想要的内容结果.Tool ...

  4. 【linux常用命令】

    linux常用命令 tcpdump 文件操作 分析信息详情 lsof 获得网络信息 LINUX 系统高级工具 pstack strace proc文件系统 日志监控工具 tail multitail ...

  5. JavaEE - Linux基本使用和程序部署

    Linux 基本使用和 web 程序部署 Linux 背景知识 Linux 是什么 Linux 是一个操作系统. 和 Windows 是 "并列" 的关系. Unix & ...

  6. 2022非常全的软件测试linux常用命令全集,linux面试题及参考答案

    一.前言: 作为一名软件测试工程师,我相信大部分的人都和Linux打过交道,因为我们的服务器一般都是装的Linux操作系统,包括各种云服务器也都是用的Linux,目前主流是CentOS7,那么对于一个 ...

  7. Linux以oracle用户登录,Linux_oracle 10G for linux常用命令,首先以Oracle用户登录1、 - phpStudy...

    oracle 10G for linux常用命令 首先以Oracle用户登录 1. $/oracle/oracle/app/product/101/bin/dbstart:启动数据库. 2. $/or ...

  8. linux常用命令 打开文件,【Linux】常用命令 lsof查看打开的文件

    Linux系统把软硬件都抽象成文件,所以通过文件可以追踪到很多重要信息,如读取的配置文件.打开的端口等. 下面是常见的用法: 默认测试文件名为text.txt 1,显示打开text.txt的进程: l ...

  9. linux中将文本中的单词换掉的指令_干货:Linux常用命令全称及讲解

    从事IT行业的很多人都会使用Linux常用命令,但是知道这些常用命令全称的人并不多,让我们来看看这些常用命令对应的全称吧!小编精心整理了一下,毕竟常用命令比较多,如果没有你常用的还望海涵,可以评论区补 ...

最新文章

  1. 使用OpenCV和Imutils构建图像的蒙太奇效果
  2. 机器学习获量子加速!物理学家与计算科学家「自然联姻」
  3. hackerrank杂记
  4. DButils数据库升级不丢失数据
  5. 你所不知道的端口号知识!
  6. LeetCode:Count Primes
  7. mysql通常使用语句_Mysql 常用SQL语句集锦
  8. linux 查看进程_Linux怎么查看和监控每个进程的实时流量
  9. 神经网络之文本情感分析(一)
  10. Java基础篇:一个简单的类
  11. keras中的EarlyStopping
  12. mac无法充电解决办法!快来get下吧!
  13. 【Effective c++】条款6:若不想使用编译器自动生成的函数就应该明确拒绝
  14. EJB JBOSS的安装
  15. ubuntu server 20.04安装vnc远程桌面xfce4
  16. 农村环境保护之平时作业三
  17. python做一个简单的对战游戏
  18. Why Python is Slow? Looking Under the Hood
  19. 自己写的听力训练软件+背单词
  20. Win10怎么将用户文件夹改名(如中文改成英文名)

热门文章

  1. 百家号自媒体推荐模式:怎么发文章才能“爆文”
  2. 华硕顽石电脑共享名和计算机名称,华硕顽石五代FL8000UF:如同它的名字,像顽石一般实用...
  3. P2863 [USACO06JAN]The Cow Prom S
  4. 工作流中的UEL表达式的使用
  5. Python—爬取简历模板案例(Xpath方法)
  6. Windows下的Nginx部署React项目及解决反向代理跨域问题等-20.8.1更新
  7. 停电后wifi服务器无响应,停电后路由器连不上网(图文)
  8. Python入门初学者“百钱买百鸡”问题
  9. 第一行代码-第二版(郭霖著)笔记四(Fragment)
  10. 配置过滤器报错 JSPs only permit GET POST or HEAD