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

news2025/1/9 17:00:17

文章目录

  • 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 mysql
 netstat -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 jdk

apt 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 8080

ps 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.coloradmin.cn/o/1709297.html

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

相关文章

springcloud-服务拆分与远程调用

一 微服务 1.1简单了解 SpringCloud SpringCloud是目前国内使用最广泛的微服务框架。官网地址&#xff1a;Spring Cloud。 SpringCloud集成了各种微服务功能组件&#xff0c;并基于SpringBoot实现了这些组件的自动装配&#xff0c;从而提供了良好的开箱即用体验&#xff1a…

温故而知新-Spring篇【面试复习】

温故而知新-Spring篇【面试复习】 前言版权推荐温故而知新-Spring篇IOCAOP循环依赖springboot如果要对属性文件中的账号密码加密如何实现&#xff1f;SpringBoot的优点Spring Boot 的核心注解是哪个&#xff1f;它主要由哪几个注解组成的&#xff1f; 最后 前言 2023-7-31 15:…

React18 apexcharts数据可视化之折线图

基础折线图 import ApexChart from react-apexcharts;export function Basic() {// 数据序列const series [{name: "Desktops",data: [10, 41, 35, 51, 49, 62, 69, 91, 148]},]// 图表选项const options {// 图表chart: {height: 650,type: line,zoom: {enabled:…

QT学习(20):QStyle类

Qt包含一组QStyle子类&#xff0c;这些子类&#xff08;QWindowsStyle&#xff0c;QMacStyle等&#xff09;模拟Qt支持的不同平台的样式&#xff0c;默认情况下&#xff0c;这些样式内置在Qt GUI模块中&#xff0c;样式也可以作为插件提供。 Qt的内置widgets使用QStyle来执行几…

基于vuestic-ui实战教程 - 页面篇

1. 简介 前面介绍了基本的内容比如如何获取动态数据&#xff0c;下面就到登录进来后的页面实现了&#xff0c;相信各位读者或多或少都有 element-uijs 的实战经历&#xff0c;那么 vuestic-uits 实现的页面又该如何写呢&#xff1f;带着疑问开启今天的学习&#xff08;声明由于…

【个人博客搭建】(20)获取操作用户信息(IHttpContextAccessor)

IHttpContextAccessor在ASP.NET Core中扮演着至关重要的角色。它为开发者提供了一种方便的方式来访问和操作HttpContext对象&#xff0c;从而允许在整个应用程序中轻松地管理和使用HTTP请求和响应的相关信息。下面将深入探讨IHttpContextAccessor的作用、使用方法以及如何通过它…

Round-Robin 调度逻辑算法

Round-Robin 调度逻辑算法 1 Intro1.1 固定优先级1.2 Round-Robin算法 之前上学还是工作&#xff0c;都接触过调度算法&#xff1a;Round-Robin和weight-Round Robin算法&#xff0c;但只知道它的功能和目的是什么&#xff0c;没有具体了解如何实现的&#xff1b; 现在是工作上…

【漏洞复现】用友NC registerServlet JNDI 远程代码执行漏洞(XVE-2024-10248)

0x01 产品简介 用友NC是 用友软件股份有限公司开发的一套企业级管理软件系统。它是一个基于互联网的多层应用系统&#xff0c;旨在为中大型企业提供全面、集成的管理解决方案。是一种商业级的企业资源规划云平台&#xff0c;为企业提供全面的管理解决方案&#xff0c;包括财务…

什么情况下JVM内存中的一个对象会被垃圾回收?

什么情况下JVM内存中的一个对象会被垃圾回收? 1、什么时候会触发垃圾回收?2、被哪些变量引用的对象是不能回收的?3、Java中对象不同的引用类型4、finalize()方法的作用1、什么时候会触发垃圾回收? 平时我们系统运行创建的对象都是优先分配在新生代里的,如图: 然后如果…

技术驱动未来,全面揭秘 Sui 的生态发展和布局

在不到一年的时间里&#xff0c;由 Mysten Labs 团队创立的 Layer1 区块链 Sui 迅速崛起&#xff0c;成功跃升至去中心化金融&#xff08;DeFi&#xff09;的前十名。根据 DeFi Llama 的数据&#xff0c;Sui的总锁定价值&#xff08;TVL&#xff09;在短短四个月内增长超过 100…

java第十八课 —— 重载、可变参数

方法重载 基本介绍 java 中允许同一个类中&#xff0c;多个同名方法的存在&#xff0c;但要求形参列表不一致&#xff01; 比如&#xff1a;System.out.println(); out 是 PrintStream 类型 重载的好处 减轻了起名的麻烦减轻了记名的麻烦 注意事项和使用细节 方法名&…

登录记住密码背景颜色修改

1&#xff0c;在login.vue中&:-webkit-autofill里面的css替换成如下 &:-webkit-autofill {box-shadow: 0 0 0px 1000px $bg inset !important;-webkit-text-fill-color: $cursor !important;}

scp问题:Permission denied, please try again.

我把scp归纳三种情况&#xff1a; 源端root——》目标端root 源端root——》目标端mysql&#xff08;任意&#xff09;用户 源端&#xff08;任意用户&#xff09;——》目标端root用户 在scp传输文件的时候需要指导目标端的用户密码&#xff0c;如root用户密码、mysql用户…

拖线无人机技术:像风筝一样飞行,无人能干扰

拖线无人机技术是一种独特且高效的无人机应用技术&#xff0c;其设计理念源于风筝。这种无人机不仅能够在空中稳定飞行&#xff0c;而且具备极强的抗干扰能力&#xff0c;使其在各种复杂环境下都能保持通信畅通和任务执行的高效。 拖线无人机技术的核心在于其拖线系统。与传统的…

【高校科研前沿】湖北工业大学为第一署名单位在《Science》发表Letters文章:应对青藏高原河流泥沙激增

文章简介 论文名称&#xff1a;Combating sediment surge in Tibetan rivers&#xff08;应对青藏高原河流泥沙激增&#xff09; 相关作者及单位&#xff1a;杨洪教授&#xff08;英国雷丁大学&#xff09;&刘德富教授&#xff08;湖北工业大学&#xff09;&Julian R…

vite+js配置

vite js 配置路径 npm install types/node --save-dev vite.config.js import { defineConfig } from vite import vue from vitejs/plugin-vue //需要引入 import path from path// https://vitejs.dev/config/ export default defineConfig({plugins: [vue()],resolve: {a…

sql注入利用group_concat函数

1.group_concat函数的作用&#xff1a; 首先根据group by指定的列进行分组&#xff0c;将同一组的列显示出来&#xff0c;并且用分隔符分隔。 2.group_concat运用 这里我使用的是sqllab-less1&#xff0c;通过对数据库的查询&#xff0c;我们发现数据库表名&#xff0c;列名&a…

大模型日报|今日必读的 5 篇大模型论文

大家好&#xff0c;今日必读的大模型论文来啦&#xff01; 1.Meta 领衔&#xff1a;一文读懂视觉语言建模&#xff08;VLM&#xff09; 人们正在尝试将大型语言模型&#xff08;LLMs&#xff09;扩展到视觉领域。从可以引导我们穿越陌生环境的视觉助手&#xff0c;到仅使用高…

“2024 亚马逊云科技中国峰会,挑战俱乐部 Hands On 动手实验课程正在直播中,点击链接畅享生成式AI建构之旅,赢心动好礼

只看不过瘾&#xff1f;别急&#xff01;我们为您准备了【生成式AI助手 Amazon Q 初体验】动手实验&#xff0c;一款生成式人工智能 (AI) 支持的对话助理&#xff0c;可以帮助您理解、构建、扩展和操作 Amazon 应用程序&#xff0c;您可以询问有关 Amazon 架构、最佳实践、文档…

AD使用问题

设计流程&#xff1a; 1.先创建项目——添加原理图&#xff0c;原理图库&#xff0c;PCB&#xff0c;PCB库 2.画原理图库和封装库 主要有三种方法&#xff1a; &#xff08;1&#xff09;手动画库和封装&#xff0c;常常用于嘉立创查询不到的器件 &#xff08;2&#xff0…