【Linux】常用基础命令 | 搭建云服务器优化环境 | 程序的部署

文章目录

  • Linux常用命令及搭建环境
    • 一、Linux
            • Linux发行版
        • 1.常用命令
            • 1.ls
            • 2.cd
            • 3.pwd
            • 4.touch
            • 5.cat
            • 6.echo
            • 7.vim
            • 8.mkdir
            • 9.rm
            • 10.mv
            • 11.cp
            • 12.man
            • 13.grep
            • 14.ps
            • 15.netstat
        • 2.搭建Java Web程序的运行环境
            • 包管理器
            • 1.安装JDK
            • 2.安装Tomcat
            • 3.安装mysql
        • 3.程序的部署

Linux常用命令及搭建环境

一、Linux

​ 诞生于1991年,前身是Unix。云服务器,一般都是Linux系统。日常用的安卓,本质上也是Linux。Linux系统不仅用于服务器领域,也用于嵌入式设备和移动端设备。

Linux发行版

Linux严格来说,不是"一个操作系统",而是一个操作系统内核

操作系统=内核+配套的应用程序

不同的发行商根据内核,搭配应用程序,就形成了不同的Linux发行版

1.常用命令
1.ls
ls

ls:list 列出当前目录下都有哪些内容

  • ls查看的是当前目录
ls /
  • ls / 查看的是/这个目录下的情况

/是根目录 ,相当于windows上的此电脑

ls -l /
简写:ll /
  • 按照列表的方式显示

在这里插入图片描述

文件权限:第一个字母表示的是文件的类型

-:普通文件 (白色)

d:目录文件(文件夹)(蓝色)

l : 链接文件 (浅蓝色 )

2.cd

change directory 修改(当前)目录

ctrl+l :清屏
tab键可以补全路径。按两下,列出所有可能的结果
cd /
回到根目录cd etc/
回到etc目录cd .. 返回上一路径

/是根目录

~是home目录(用户主目录):是用户登录时默认进入的目录

etc目录:存放Linux系统的配置文件

3.pwd

​ 查看当前所处位置的绝对路径

pwd

Linux中,绝对路径以/开头。相对路径以.或…开头

4.touch
touch test.txt

创建一个空文件

5.cat
cat test.txt 

查看文件内容(把文件内容打印到控制台上)

6.echo
echo 'hello'
hello

打印一个内容到控制台上

echo 'hello' > test.txt
cat test.txt
'hello'

‘>’就是”重定向“ 把原本要打印在控制台的内容,写进test.txt。替换掉原有的内容

echo 'Java' >> test.txt
cat test.txt
'hello'
'Java'
  • ">>"不会替换掉原来的内容

  • echo 只是方便写一些简短的内容,

7.vim
  • Linux上自带的一个文本编辑器,能更灵活的对文件进行编辑

1.打开文件

vim 文件名

2.编辑文件

普通模式只能按快捷键。按i 从普通模式进入插入模式进行文本编辑

3.保存退出

ctrl +s 是冻结屏幕的意思

ctrl + q 恢复

先按esc回到普通模式 。:进入命令模式

:wq

保存并退出

8.mkdir

创建目录

mkdir->make directory

mkdir 目录名
mddir -p 多级目录/11/22/33
9.rm

remove 删除

rm test.txt
rm -i tsst.txt  
删除文件rm -r 目录名
递归删除目录和目录中的文件
rm -rf 目录名
强制删除

-i 会进行询问

-r 表示递归

f 表示’强制删除‘不需要进行确认

rm命令相当危险,以至于/后多打一个空格,可能就会把所有东西删的一干二净

Linux命令中可以定义变量,可以通过变量来进行删除。

10.mv

move 移动(剪切,粘贴)

mv 要移动的源 移动的目标
mv test.txt bbb
mv test.txt ../123.txt
移动的过程中修改名字
mv 123.txt 456.txt
原地修改名字(重命名)

mv操作,无论是移动的是啥,都是o(1)

11.cp

copy 复制(复制,粘贴)

拷贝文件

cp 要复制的源 要复制的目标
cp 456.txt 123.txt
复制成123,txt
cp 456.txt bbb/
复制到bbb目录下

拷贝目录

  • 加上-r,递归的拷贝目录里的内容
cp -r ccc/ eee
12.man

查看命令手册

man mkdir   按q退出
13.grep

字符串匹配/查找

查看某个文件是否包含某个关键字,这个关键字在第几行
grep qwer 123.txt-n显示行号
grep -n qwer 123.txt
2:qwer
14.ps

process show展示进程

  • 显示出当前系统下都有哪些进程
ps 显示当前会话下的进程
ps aux 显示服务器的所有进程ps搭配grep使用
ps aux | grep mysql  查看mysql进程的进程pid

| 管道符,把前一个命令的输出,作为后一个命令的输入

15.netstat

查看网络信息

可以用来查看当前某个端口是否被进程使用

也可以查询进程使用了哪个端口

 netstat  不全natstat -anp  完整的natstat -anp | grep mysqlnetstat -anp | grep 8080
2.搭建Java Web程序的运行环境

1.JVM(JDK)

2.Tomcat

3.MySQL数据库

包管理器

基于包管理器(类似于中央仓库)进行安装

ubuntu 的包管理器apt

centos的包管理器 yum

1.安装JDK

使用apt命令来查看服务器上有哪些软件包

确保处于root用户下

sudo su
切换到管理员用户
apt list | grep jdkapt install openjdk-8-jdk

ctrl + insert 复制

shift+insert 粘贴

2.安装Tomcat

将windows上面的Tomcat压缩包传上去,进行解压缩

unzip apache-tomcat-8.5.100.zip

3.修改.sh文件的可执行权限,让这些.sh都可执行

先cd到bin目录
chmod +x *.sh

x表示可执行

4.启动tomcat

sh startup.sh

5.验证是否成功

ps 查看有没有Java进程netstat查看8080是否被绑定
netstat -anp | grep 8080ps aux | grep 433494 查看这个进程访问tomcat的欢迎页面
3.安装mysql
apt list | grep mysql

ubuntu上不方便装mysql5,直接装mysql8

apt install mysql-server-8.0

进行安装

service mysql status

查看mysqL的运行状态

3.程序的部署

1.把数据库/数据表在云服务器上创建好

把程序放在云服务器上执行,访问的就是云服务器上的数据库,要确保数据库里有数据

先在数据库上建库建表

2.对程序进行打包,并修改好mysql的配置

                    ((MysqlDataSource)dataSource).setPassword("");

把密码设置成空字符串

在pom.xml中,把项目打成war包:

    <packaging>war</packaging><build><finalName>blog_system</finalName></build>

3.把war包上传到服务器上tomcat的webapps目录中

ctrl + d 退出mysql (EOF表示输入完了)

把war包拖到webapps目录中

就可以根据云服务器的公网ip,和文件路径来访问项目

点击移步博客主页,欢迎光临~

偷cyk的图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/15175.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

有趣的css - 移形换位加载动画

大家好&#xff0c;我是 Just&#xff0c;这里是「设计师工作日常」&#xff0c;今天分享的是一个移形换位动态加载小动效&#xff0c;适用于 app 列表加载&#xff0c;页面加载或者图片懒加载等场景。 最新文章通过公众号「设计师工作日常」发布。 目录 整体效果核心代码html…

2024上海初中生古诗文大会倒计时4个月:单选题真题解析(持续)

现在距离2024年初中生古诗文大会还有4个多月时间&#xff0c;我们继续来看10道选择题真题和详细解析&#xff0c;以下题目截取自我独家制作的在线真题集&#xff0c;都是来自于历届真题&#xff0c;去重、合并后&#xff0c;每道题都有参考答案和解析。 为帮助孩子自测和练习&…

C#基础一

使用Visual Studio 2022&#xff08;VS2022&#xff09;编写C#控制台程序 1. 安装Visual Studio 2022 确保已安装Visual Studio 2022。如果未安装&#xff0c;请从Visual Studio官网下载并安装。 另一篇文章中已经有详细描述&#xff0c;这里就不在细说了。 VisualStudio2022…

【LeetCode】【209】长度最小的子数组(1488字)

文章目录 [toc]题目描述样例输入输出与解释样例1样例2样例3 提示进阶Python实现前缀和二分查找滑动窗口 个人主页&#xff1a;丷从心 系列专栏&#xff1a;LeetCode 刷题指南&#xff1a;LeetCode刷题指南 题目描述 给定一个含有n个正整数的数组和一个正整数target找出该数组…

微信小程序报错:notifyBLECharacteristicValueChange:fail:nodescriptor的解决办法

文章目录 一、发现问题二、分析问题二、解决问题 一、发现问题 微信小程序报错&#xff1a;notifyBLECharacteristicValueChange:fail:nodescriptor 二、分析问题 这个提示有点问题&#xff0c;应该是该Characteristic的Descriptor有问题&#xff0c;而不能说nodescriptor。 …

axios如何传递数组作为参数,后端又如何接收呢????

前端的参数是一个数组。 前端编写&#xff1a; 后端接收&#xff1a;

Iterater迭代器和增强for循环

1、Collection接口遍历元素—Iterator迭代器 看一下下面这张图片&#xff1a;可以看出Collection接口有一个父接口Iterable&#xff0c;Iterable接口有一个iterator()方法&#xff0c;iterator()方法的类型是Iterator迭代器&#xff0c;实际上当我们使用方法时&#xff0c;返回…

Go语言的pprof工具是如何使用的?

文章目录 Go语言的pprof工具详解pprof的使用runtime/pprofnet/http/pprof 快速开始获取采样数据通过pprof工具进行性能分析总结 Go语言的pprof工具详解 Go语言作为一个高性能、高并发的编程语言&#xff0c;对性能优化有着极高的要求。在Go语言的标准库中&#xff0c;pprof是一…

linux 安全 iptables防火墙 (一)

Linux包过滤防火墙概述 Linux 系统的防火墙 &#xff1a;IP信息包过滤系统&#xff0c;它实际上由两个组件netfilter 和 iptables组成。 主要工作在网络层&#xff0c;针对IP数据包。体现在对包内的IP地址、端口、协议等信息的处理上。 两大组件 netfilter内核组件 iptables应…

blender安装cats-blender-plugin-0-19-0插件,导入pmx三维模型

UE5系列文章目录 文章目录 UE5系列文章目录前言一、Blender安装二、cats-blender-plugin-0-19-0插件下载三、下载bmp文件四、在blender2.93中安装cats-blender-plugin-0-19-0插件 前言 blender本身不支持pmx三维模型&#xff0c;需要用到cats-blender-plugin-0-19-0插件。 一…

构建全面的无障碍学习环境:科技之光,照亮学习之旅

在信息与科技日益发展的当下&#xff0c;为所有人群提供一个包容和平等的学习环境显得尤为重要&#xff0c;特别是对于盲人朋友而言&#xff0c;无障碍学习环境的构建成为了一项亟待关注与深化的课题。一款名为“蝙蝠避障”的辅助软件&#xff0c;以其创新的设计理念与实用功能…

Offline RL : Context-Former: Stitching via Latent Conditioned Sequence Modeling

paper 基于HIM的离线RL算法&#xff0c;解决基于序列模型的离线强化学习算法缺乏对序列拼接能力。 Intro 文章提出了ContextFormer&#xff0c;旨在解决决策变换器&#xff08;Decision Transformer, DT&#xff09;在轨迹拼接&#xff08;stitching&#xff09;能力上的不足…

新定义单片机的说明

新定义的官网是https://www.rdsmcu.com/shop/#/,主要经营的是1T系列的51单片机&#xff0c;之前从他们官网上申请了评估板&#xff0c;自己页玩了一段时间&#xff0c;不过玩的不多&#xff0c;特开此专栏记录学习过程&#xff0c;并帮助刚入门的道友快速上手。 我申请的是评估…

DQL(数据查询)

目录 1. DQL概念 2. DQL - 编写顺序 3. 基础查询 3.1 查询多个字段 3.2 字段设置别名 3.3 去除重复记录 3.4 案例 4. 条件查询 4.1 语法 4.2 条件 4.3 案例&#xff1a; 5. 聚合函数 5.1 常见的聚合函数&#xff1a; 5.2 语法 5.3 案例&#xff1a; 6. 分组查…

VScode SSH连接远程服务器报错

一、报错 通过VScode SSH插件远程连接服务器&#xff0c;输入密码后没有连接成功&#xff0c;一直跳出输入密码界面&#xff0c;在输出界面里&#xff0c;一直是Waiting for server log或者是显示Cannot not find minimist 二、处理 &#x1f431;&#xff1a; 这个时候应该…

CTF网络安全大赛web题目:字符?正则?

题目来源于&#xff1a;bugku 题目难度&#xff1a;难 题目描  述: 字符&#xff1f;正则&#xff1f; 题目htmnl源代码&#xff1a; <code><span style"color: #000000"> <span style"color: #0000BB"><?php <br />highl…

类图的六大关系

类图中的六大关系包括&#xff1a;继承关系、实现关系、关联关系、聚合关系、组合关系和依赖关系。 1. 继承关系 继承是一种类与类之间的关系&#xff0c;表示一种泛化和特化的关系。子类继承父类的特性和行为。 class Animal {void eat() {System.out.println("This an…

【JavaEE 初阶(十)】JVM

❣博主主页: 33的博客❣ ▶️文章专栏分类:JavaEE◀️ &#x1f69a;我的代码仓库: 33的代码仓库&#x1f69a; &#x1faf5;&#x1faf5;&#x1faf5;关注我带你了解更多进阶知识 目录 1.前言2.JVM内存区域划分3.类加载3.1双亲委派模型 4.垃圾回收&#xff08;GC&#xff0…

【智能优化算法】粒子群优化算法(PSO)【附python实现代码】

写在前面&#xff1a; 首先感谢兄弟们的订阅&#xff0c;让我有创作的动力&#xff0c;在创作过程我会尽最大能力&#xff0c;保证作品的质量&#xff0c;如果有问题&#xff0c;可以私信我&#xff0c;让我们携手共进&#xff0c;共创辉煌。 路虽远&#xff0c;行则将至&#…

【软件设计师】下午题总结-数据流图、数据库、统一建模语言

下午题总结 1 试题一1.1 结构化语言 2 试题二弱实体增加权限增加实体间联系和联系的类型 3 试题三3.1 UML关系例子 3.2 例子&#xff08;2016上半年&#xff09;3.3 设计类分类3.3.1 接口类3.3.2 控制类3.3.3 实体类 3.4 简答题3.4.1 简要说明选择候选类的原则3.4.2 某个类必须…