部署项目时常用的 Linux 命令

目录

  • 1 前言
  • 2 SSH登录命令
  • 3 SCP传输命令
  • 4 CP拷贝命令
  • 5 MV移动命令
  • 6 TAR解压命令
  • 7 DU查看文件夹/文件大小
  • 8 TAIL查看日志
  • 9 NOHUP后台运行
  • 10 结语

1 前言

在应用部署过程中,Linux命令是必不可少的工具。它们能够帮助我们管理文件、连接服务器、拷贝文件、查看日志以及运行应用等。本文将介绍一些在应用部署中常用的Linux命令,包括 SSH登录、SCP传输、CP拷贝、MV移动、Tar解压、DU查看文件大小、Tail查看日志以及Nohup后台运行等命令。
在这里插入图片描述

2 SSH登录命令

作用: 通过安全的加密方式远程登录服务器。

使用情景和场合:

  • 远程管理服务器:用于连接远程服务器进行文件操作、系统管理、软件安装等任务。
  • 维护和管理多台服务器:方便管理分布在不同位置的服务器。

使用方法: ssh [用户名]@[服务器IP] -p [端口号]

常用参数:

  • -p [端口号]:指定连接的端口号。
  • -i [密钥文件路径]:指定用于身份验证的密钥文件。

示例:

# 登录跳板机,再连接到对应服务器
ssh 用户名@跳板机IP
ssh 用户名@服务器IP -l root -p 1234

3 SCP传输命令

作用: 在不同服务器之间安全地复制文件或文件夹。

使用情景和场合:

  • 部署应用:将本地开发完成的应用程序传输到远程服务器进行部署。
  • 数据备份:定期将重要数据传输到备份服务器。

使用方法: scp [本地路径/文件名] [用户名]@[计算机IP]:[远程路径]

常用参数:

  • -r:递归复制整个目录。
  • -P [端口号]:指定连接的端口号。
  • -i [密钥文件路径]:指定用于身份验证的密钥文件。

示例:

# 将本地文件拷贝到远程服务器
scp 本地路径/文件 用户名@计算机IP:远程路径# 传文件
scp 文件.jar 用户名@远程IP:/远程路径# 传文件夹
scp -r 文件夹 用户名@远程IP:/远程路径

在这里插入图片描述

4 CP拷贝命令

作用: 复制文件或文件夹到指定位置。

使用情景和场合:

  • 备份数据:复制文件或目录到另一个位置或设备以进行数据备份。
  • 快速复制文件:将文件复制到其他位置,以便在不同目录下使用相同文件。

使用方法: cp [源文件路径] [目标路径]

常用参数:

  • -r:复制目录及其内容。
  • -p:保留源文件的属性(如权限等)。

示例:

# 将文件拷贝到指定目录
cp 文件名 目标目录# 例如:
cp jdk-8u144-linux-x64.tar.gz /usr/java

5 MV移动命令

作用: 将文件或文件夹移动到指定位置。

使用情景和场合:

  • 重命名文件或文件夹:将文件或文件夹更改名称或移动到其他目录。
  • 文件整理:整理文件系统,将文件移动到更合适的目录。

使用方法: mv [源文件路径] [目标路径]

常用参数:

  • -i:在覆盖文件前进行提示。
  • -b:在覆盖文件前进行备份。

示例:

# 将文件移动到指定目录
mv 文件名 目标目录# 例如:
mv jdk-8u144-linux-x64.tar.gz /usr/java

6 TAR解压命令

作用: 解压缩 .tar.gz.tar 文件。

使用情景和场合:

  • 解压文件:解压下载的软件压缩包以进行安装或使用。
  • 文件打包:将文件或目录打包成一个压缩文件以进行传输或备份。

使用方法: tar -zxvf [文件名.tar.gz]

常用参数:

  • -x:解压文件。
  • -z:使用 gzip 解压缩。
  • -v:显示详细信息。

示例:

# 解压文件
tar -zxvf jdk-8u144-linux-x64.tar.gz

7 DU查看文件夹/文件大小

作用: 显示文件或文件夹的大小。

使用情景和场合:

  • 磁盘空间管理:查看文件夹或文件的大小以了解磁盘使用情况。
  • 查找占用空间较大的文件:快速找出占用大量磁盘空间的文件或目录。

使用方法: du -sh [路径]

常用参数:

  • -h:以易读方式显示文件大小。
  • --max-depth=[深度]:限制显示的目录层级深度。
  • -s:仅显示总计大小。

示例:

  • 查看目录下各文件夹及文件大小并按大小排序
du -sh /home/* | sort -h
  • du -h [路径]:以易读方式显示路径下所有文件及文件夹大小。

    du -h /home/user/Documents
    
  • du -h --max-depth=1 [路径]:显示路径下第一层文件夹的大小。

    du -h --max-depth=1 /home/user
    
  • du -s [路径]:仅显示路径下所有文件和文件夹的总大小。

    du -s /home/user/Documents
    
  • du -h -d 2 [路径]:显示路径下的文件夹和子文件夹的大小,限制最多深度为2级。

    du -h -d 2 /home/user
    

8 TAIL查看日志

作用: 实时查看文件内容(尤其是日志文件)的最后几行。

使用情景和场合:

  • 监控日志:实时监控应用程序的日志变化以进行故障排查和系统状态监控。
  • 查看日志更新:查看最新的系统或应用程序日志以获得最新状态。

使用方法: tail -f [文件路径]

常用参数:

  • -f:实时刷新显示文件新增内容。

  • -n [行数]:显示指定行数的内容。

  • -c [字节数]:从文件末尾开始显示指定字节数的内容。

示例:

  • tail -n 20 [文件路径]:显示文件末尾的最后20行内容。

    tail -n 20 /var/log/syslog
    
  • tail -f [文件路径]:实时刷新显示文件新增内容(适用于监控日志文件变化)。

    tail -f /var/log/nginx/access.log
    
  • tail -c 500 [文件路径]:从文件末尾开始显示最后500个字节的内容。

    tail -c 500 /var/log/auth.log
    

9 NOHUP后台运行

作用: 在后台运行命令,即使退出当前终端也不会中断。

使用情景和场合:

  • 长时间运行任务:运行需要较长时间才能完成的任务,如数据处理、备份等。
  • 远程管理应用程序:部署后台服务或应用程序,使其在服务器上持续运行而不受用户退出影响。

使用方法: nohup [命令] &

示例:

  • nohup java -jar app.jar &:后台运行 Java 应用程序。

    nohup java -jar /path/to/app.jar &
    
  • nohup ./start_server.sh &:后台运行脚本文件启动服务器。

    nohup ./start_server.sh &
    
  • nohup python script.py > output.log &:后台运行 Python 脚本,并将输出重定向到文件。

    nohup python /path/to/script.py > /path/to/output.log &
    

10 结语

这些命令在日常的服务器管理和应用部署中都扮演着重要的角色,能够帮助管理员和开发人员有效地管理服务器和文件,以及监控应用程序状态。在掌握这些基本命令的基础上,可以更高效地管理服务器和部署应用程序。以上命令涵盖了常见的操作,希望能对您在应用部署过程中有所帮助。

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

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

相关文章

vite项目配置vite.config.ts在打包过程中去除日志

在生产环境上,务必要将日志清除干净,其因有二,在webgis系统中,有很多几何数据,体积大、数量多,很容易引起系统卡顿;清除log后,系统看着舒服,协同开发有很多无聊的日志&am…

一款非常优秀的项目管理工具:进度猫(推荐)

在项目管理中,一个好的工具可以极大地提高效率。 进度猫是一款非常优秀的项目管理工具。它具有非常强大的功能,可以帮助团队更好地管理项目进度。 通过可视化的方式,将项目进度、任务分配、需求变更等全面呈现给团队成员,让团队…

需求分析BSA法

👉BSA法(Basic–Satisfier–Attractor)是对客户需求进行优先级划分的需求分析方法。该模型体现了需求满足度和客户满意度之间的非线性关系。BSA法将客户需求分为3种类型,分别是基本型需求、满意型需求和兴奋型需求。下面将对每种需…

ABB机 器 人 操 作 培 训

目 录 1 培训手册介绍 ---------------------------------------------2 2 系统安全与环境保护 ---------------------------------------------3 3 机器人综述 ---------------------------------------------5 4 机器人示教 --------------------------------------------12…

FSCTF2023-Reverse方向题解WP。学习贴

文章目录 [FSCTF 2023]signin[FSCTF 2023]MINE SWEEPER[FSCTF 2023]Xor[FSCTF 2023]EZRC4[FSCTF 2023]ez_pycxor[FSCTF 2023]Tea_apk[FSCTF 2023]ezcode[FSCTF 2023]ezbroke[FSCTF 2023]rrrrust!!![FSCTF2023]ezrev(未解决) [FSCTF 2023]signin UPX壳&am…

redis-cluster集群模式

Redis-cluster集群 1 Redis3.0引入的分布式存储方案 2集群由多个node节点组成,redis数据分布在节点之中,在集群之中分为主节点和从节点3集群模式当中,主从一一对应,数据写入和读取与主从模式一样,主负责写,从只能读4集群模式自带哨兵模式,可…

自然资源土地管理法律法规知识竞赛这么办才高端

近些年,全国各地自然资源厅举办了土地管理法律法规知识竞赛,从我公司承办的这些赛事来看,传统的必答题、抢答题、风险题的方式已无法激起现场比赛气氛,需要更加复杂有趣的环节设置及高端竞赛软件及其配套设备加持才可以让知识竞赛…

什么是交易量价差分析法?anzo Capital一分钟讲明白

交易量价差分析法是一种深入的市场分析方法,它主要探讨了价格、价差和交易量之间的相互关系。在此过程中,交易量主要揭示了市场上的交易活动情况,而价差则反映了这些交易的价格变动。 为了更准确地理解这种关系,定义了交易量价差…

单元测试-java.lang.NullPointerException

报错信息 java.lang.NullPointerException 空指针异常 空对象引用 来源 对Controller层进行单元测试,解决完Spring上下文报错后继续报错。 解决 在测试方法执行前要为字段完成对象的注入,否则就报空指针异常。 测试例子 public class SysUserContr…

前端css粘性布局,顶部吸附效果(position: sticky)

sticky属性设置 /* 设置粘性布局 */ position: sticky; /* 拖动滚动条,当前元素超出文档0的位置时,触发定位效果(同级元素位置不会受影响) */ top: 0;页面初始效果 设置前(滚动页面时,标签栏随页面滚动&a…

【深度学习】六大聚类算法快速了解

在机器学习中,无监督学习一直是我们追求的方向,而其中的聚类算法更是发现隐藏数据结构与知识的有效手段。目前如谷歌新闻等很多应用都将聚类算法作为主要的实现手段,它们能利用大量的未标注数据构建强大的主题聚类。本文从最基础的 K 均值聚类…

【二叉树进阶题目】236. 二叉树的最近公共祖先,JZ36 二叉搜索树与双向链表

二叉树进阶题目 236. 二叉树的最近公共祖先解题思路及实现思路一思路二 JZ36 二叉搜索树与双向链表描述解题思路及实现 236. 二叉树的最近公共祖先 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个…

Axios 拦截器 请求拦截器 响应拦截器

请求拦截器 相当于一个关卡,如果满足条件就放行请求,不满足就拦截 响应拦截器 在处理结果之前,先对结果进行预处理,比如:对数据进行一下格式化的处理 全局请求拦截器 axios.interceptors.request.use(config > { /…

SeaTunnel及SeaTunnel Web部署指南(小白版)

现在你能搜索到的SeaTunnel的安装。部署基本都有坑,官网的文档也是见到到相当于没有,基本很难找到一个适合新手小白第一次上手就能成功安装部署的版本,于是就有了这个部署指南的分享,小主已经把可能遇到的坑都填过了,希…

Web前端—移动Web第五天(媒体查询、Bootstrap、综合案例-alloyTeam)

版本说明 当前版本号[20231122]。 版本修改说明20231122初版 目录 文章目录 版本说明目录移动 Web 第五天01-媒体查询基本写法书写顺序案例-左侧隐藏媒体查询-完整写法关键词 / 逻辑操作符媒体类型媒体特性 媒体查询-外部CSS 02-Bootstrap简介使用步骤下载使用 栅格系统全局…

PTA 六度空间

“六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示…

大白话DDD(DDD黑话终结者)

大白话DDD(DDD黑话终结者) 一、吐槽的话 相信听过DDD的人有很大一部分都不知道这玩意具体是干嘛的,甚至觉得它有那么一些虚无缥缈。原因之一是但凡讲DDD的,都是一堆特别高大上的概念,然后冠之以一堆让人看不懂的解释…

Python教程73:Pandas中一维数组Series学习

创建一维数据类型Series dataNone 要转化为Series的数据(也可用dict直接设置行索引) 若是标量则必须设置索引,该值会重复,来匹配索引的长度 indexNone 设置行索引 dtypeNone 设置数据类型(使用numpy数据类型) nameNone 设置Series的name属性 copyFalse 不复制 (当data为ndarray…

【深度学习】神经网络术语:Epoch、Batch Size和迭代

batchsize:中文翻译为批大小(批尺寸)。 简单点说,批量大小将决定我们一次训练的样本数目。 batch_size将影响到模型的优化程度和速度。 为什么需要有 Batch_Size : batchsize 的正确选择是为了在内存效率和内存容量之间寻找最…

Postgresql源码(116)提升子查询案例分析

0 总结 对于SQL:select * from student, (select * from score where sno > 2) s where student.sno s.sno; pullup在pull_up_subqueries函数内递归完成,分几步: 将内层rte score追加到上层rtbable中:rte1是student、rte2带…