部署项目时常用的 Linux 命令

news2024/11/28 16:44:21

目录

  • 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.coloradmin.cn/o/1254222.html

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

相关文章

大数据项目--学习笔记

新零售项目介绍 1,行业背景介绍 一,百货商店 百货商店是世界商业史上第一个实行新销售方法的现代大量销售组织。其新型销售方法有: 1.顾客可以毫无顾忌地、自由自在地进出商店; 2.商品销售实行“明码标价…

java基础语法总结

导言: Java语言是一种面向对象的编程语言,具有简单、可移植、安全、高性能等特点。本篇文章主要对java的基础的语法进行一个简单的总结和概述。 目录 导言: 正文: 1. 数据类型与变量 2. 运算符与逻辑控制 3. 方法 4. 数组…

数据结构 / 结构体字节计算

1. 结构体的存储 结构体各个成员的地址是连续的结构体变量的地址是第一个成员的地址 2. 64位操作系统8字节对齐 结构体的总字节大小是各个成员字节的总和,字节的总和需要是最宽成员的倍数结构体的首地址是最宽成员的倍数结构体各个成员的偏移量是该成员字节的倍数…

服务号和订阅号哪个好

服务号和订阅号有什么区别?服务号转为订阅号有哪些作用?在推送频率上来看,服务号每月能推送四条消息,而订阅号可以每天(24小时)推送一条消息。如果企业开通公众号的目的是提供服务,例如售前资讯…

JOSEF约瑟 BLD-20高压漏电保护继电器 50-1000ma AC220V

系列型号 BLD-20A高压漏电保护继电器 BLD-20高压漏电继电器 BLD-20高压漏电保护继电器 BLD-20X高压漏电保护装置 BLD-G20X高压漏电保护装置 用途 BLD-20高压漏电保护装置 (以下简称继电器)主用于交流电压1-10KV系统中,频率为50HZ,对供电系统的漏电(或接地)实现有选择性保…

MyBatis 操作数据库(入门)

一:MyBatis概念 (1)MyBatis 💗MyBatis是一款优秀的持久层框架,用于简化JDBC的开发 (2)持久层 1.持久层 💜持久层:持久化操作的层,通常指数据访问层(dao),是用来操作数据库的 2.持久层的规范 ①…

【Web】Ctfshow Thinkphp3.2.3代码审计(1)

目录 ①web569 ②web570 ③web571 ④web572 ①web569 基础考察 /index.php/Admin/Login/ctfshowLogin ②web570 提示找路由 查看附件源码 (config.php) 发现定义了一个可执行命令的路由规则 /index.php/ctfshow/assert/eval($_POST[1]) 1system(tac /f*); ③web571 提…

The module to import is incompatible with the current project【鸿蒙开发-BUG已解决】

文章目录 项目场景:问题描述原因分析:解决方案:心得体会:知识点OpenHarmony:HarmonyOS:项目场景: 报错: The module to import is incompatible with the current project 问题描述 希望通过 import module 将该模块引入到我的项目。 导入后出现错误,因为项目和模块…

Scannet v2 数据集介绍以及子集下载展示

Scannet v2 数据集介绍以及子集下载展示 文章目录 Scannet v2 数据集介绍以及子集下载展示参考数据集简介子集scannet_frames_25kscannet_frames_test 下载脚本 download_scannetv2.py 参考 scannet数据集简介和下载-CSDN博客 scannet v2 数据集下载_scannetv2数据集_蓝羽飞鸟的…

pandas分组选中最大值并且新增列

题目 根据每个session_id分组,将popular最大的值设为这个session中所有popular的值 category item_id label popular session_id 0 4729 True 53.0 4069 0 4729 True 53.0 4069 0 4729 True 53.0 4069 0…

C++ PCL点云dscan密度分割三维

程序示例精选 C PCL点云dscan密度分割三维 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《C PCL点云dscan密度分割三维》编写代码,代码整洁,规则,易读。…

hdlbits系列verilog解答(7420 chip)-49

文章目录 一、问题描述二、verilog源码三、仿真结果一、问题描述 本次将实现7420逻辑芯片,它内部有2个4输入的与非门电路,外部有8个输入和2个输出管脚,功能框图如下所示: 二、verilog源码 module top_module ( input p1a, p1b, p1c, p1d,output p1y,input p2a, p2b, p2c…

Proteus仿真--基于数码管显示的频率计设计

本文介绍基于数码管的频率计设计(完整仿真源文件及代码见文末链接) 仿真图如下 本设计中80C51单片机作为主控,用数码管作为显示模块,按下按键K1后可进行频率测量并显示 仿真运行视频 Proteus仿真--数码管显示的频率计 附完整Pro…

如何使用nginx部署静态资源

Nginx可以作为静态web服务器来部署静态资源,这个静态资源是指在服务端真实存在,并且能够直接展示的一些文件数据,比如常见的静态资源有html页面、css文件、js文件、图片、视频、音频等资源相对于Tomcat服务器来说,Nginx处理静态资…

学习.NET验证模块FluentValidation的基本用法(续3:ASP.NET Core中的调用方式)

FluentValidation模块支持在ASP.NET Core项目中进行手工或自动验证,主要验证方式包括以下三种:   1)手工注册验证类,并在控制器或其它模块中调用验证;   2)基于ASP.NET验证管道(validation …

【版本管理 | Git】Git rebase 命令最佳实践!确定不来看看?

🤵‍♂️ 个人主页: AI_magician 📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。 👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!&…

webshell之内置函数免杀

原始webshell 查杀的点在于Runtime.getRuntime().exec非常明显的特征 利用ProcessBuilder替换Runtime.getRuntime().exec(cmd) Runtime.getRuntime().exec(cmd)其实最终调用的是ProcessBuilder这个函数,因此我们可以直接利用ProcessBuilder来替换Runtime.getRunti…

css优化滚动条样式

css代码: ::-webkit-scrollbar {width: 6px;height: 6px; }::-webkit-scrollbar-track {background-color: #f1f1f1; }::-webkit-scrollbar-thumb {background-color: #c0c0c0;border-radius: 3px; }最终样式:

大数据面试大厂真题【附答案详细解析】

1.Java基础篇(阿里、蚂蚁、字节、携程、快手、杭州银行等) 问题:HashMap的底层实现原理 答案: 在jdk1.8之前,hashmap由 数组-链表数据结构组成,在jdk1.8之后hashmap由 数组-链表-红黑树数据结构组成&…

Java抽象类和接口(1)

🐵本篇文章将对抽象类和接口相关知识进行讲解 一、抽象类 先来看下面的代码: class Shape {public void draw() {System.out.println("画");} } class Cycle extends Shape {public void draw() {System.out.println("圆形");} } …