linux、docker、git相关操作

news2025/6/2 3:50:19

1 linux

1.1解压缩


1.1.1 zip


zip xxx.zip file   把file压缩成xxx.zip
-r 递归压缩:
zip -r example_new.zip 示例集  # 新建压缩包并命名为 example_new.zip
zip -r xxx.zip file1 file2 dir1 将多个文件+目录压成zip包
unzip file.zip -d target_dir #把file.zip解压到目标文件夹磁盘路径target_dir下

1.1.2 tar


tar -cvf xxx.tar file 创建非压缩tar包
tar -cvf xxx.tar file1 file2 dir1 将多个文件+目录打tar包
tar -tf xxx.tar    查看tar包的内容
tar -xvf xxx.tar   解压tar包
tar -xvf xxx.tar -C /dir 将tar包解压至指定目录
tar -cvfj xxx.tar.bz2 dir 创建bz2压缩包
tar -jxvf xxx.tar.bz2 解压bz2压缩包
tar -cvfz xxx.tar.gz dir 创建gzip压缩包
tar -zxvf xxx.tar.gz 解压gzip压缩包
~bz2
bunzip2 xxx.bz2    解压bz2压缩包
bzip2 filename     压缩文件
~gzip
gunzip xxx.gz      解压gzip压缩包
gzip filename      压缩文件
gzip -9 filename   最大程度压缩

1.2 文件操作命令

1.2.1 基础命令

1 查看当前的系统路径:pwd

2 改变当前目录:cd

1.2.2 文件夹的操作命令

1 创建文件夹

mkdir 文件夹名称

mkdir -p a/b/c:一次创建多个文件

2 复制文件夹

cp只能用来复制文件,需要复制文件夹要加上-r

cp [选项] 源文件或目录  目标文件或目录

常用选项:

-f 或 --force : 强行复制文件或目录, 不论目的文件或目录是否已经存在。
-r :递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理。

3 查看文件夹大小

  • du -sh .:查看当前目录下所有的文件夹的大小

选项:-s:忽略子目录详情

示例
(base) marui@amax:~/elevator/data$ du -sh .
3.3M

  • du -h --max-depth=2:查看当前文件夹以及下面的一、二级文件夹的大小

4 重命名文件夹

mv file_name new_file_name

1.2.3 文件的操作命令

1 新建文件

touch 文件名

2 删除文件以及文件夹

rm [选项] 文件名或文件夹名

选项

  • -f:文件属性为只读也直接删除 
  • -i:删除前逐一确认
  • -r:加上该选项,可以删除文件夹

3 查看文件

cat 文件名

4 搜索内容

grep [ 选项 ] 搜寻字符串 文件

选项

-i 忽略大小写的不同,所以大小写视为相同

  • -n 顺便输出行号
  • -v 反向选择,亦即显示出没有 ' 搜寻字符串 ' 内容的那一行

5 查找文件

find pathname [选项]

功能: 用于在文件树中查找文件,并作出相应的处理(可能访问磁盘)

常用选项:

-name: 按照文件名查找文件

6 重命名文件

rm file_name new_file_name

7 复制文件

cp example.txt /usr/men/tmp/example1.txt

把文件example.txt复制到/usr/men/tmp/下并改名为example1.txt

/usr/men/tmp/必须是存在的

2 docker

2.1 基础命令

systemctl start docker:启动docker服务

2.2 镜像命令

2.2.1 拉取镜像

docker pull+镜像源地址+/+要拉取的镜像名
docker pull docker.m.daocloud.io/hello-world

注:镜像名必须全是小写

2.2.2查看所有的镜像

docker images

2.2.3 删除镜像

docker rmi 镜像名

2.3.4 给镜像重命名

不能说重命名

首先该命令只有在该镜像未创建容器的时候才生效

其次,该命令只是额外创建了一个镜像,名称为新名字

docker tag 原镜像名称:原标签 新镜像名称:新标签

2.3.5 将镜像导出为一个镜像img文件

docker  save  redis  -o  redis.img

2.3.6 将img镜像文件导入,复制出一个完全一样镜像

docker load  --input  redis.img

2.3 容器命令

2.3.1 通过镜像启动容器

指定镜像创建容器(镜像名docker.m.daocloud.io/hello-world)

docker run docker.m.daocloud.io/hello-world

常用选项

-p:指定端口映射,指定容器的某端口映射到服务器的某端口上。-p 宿主机端口:容器端口

例:-p 9506:3306

2.3.2 创建但不运行容器

docker create --name my-hello-world-container docker.m.daocloud.io/hello-world

2.3.3 运行已经创建好了的容器

docker start my-hello-world-container

2.3.4 给创建好了的容器改名

docker rename old-container-name new-container-name

2.3.5 查看容器

docker ps(只查看运行中的容器)

docker ps -a(查看所有的容器)

2.3.6 查看容器的日志

docker logs my-hello-world-container

2.3.7 进入容器内部

docker exec -it my-container /bin/bash
docker exec :在运行的容器里执行命令
-i:交互模式,保持 STDIN 打开
-t:分配一个伪终端
/bin/bash:在容器中启动一个 Bash shell。如果你的容器使用的是其他 shell(如 /bin/sh),可以相应地替换。

2.3.8 删除容器

#删除一个容器
docker rm -f 容器名/容器ID
#删除多个容器 空格隔开要删除的容器名或容器ID
docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID
#删除全部容器
docker rm -f $(docker ps -aq)

选项

-f:指强制删除,加上该选项可以删除正在运行的容器。docker是不允许直接删除正在运行的容器的。

2.3.9 查看容器的端口与服务器端

口的映射情况

docker port 容器名或者容器ID
示例:docker port mysql
22/tcp -> 0.0.0.0:10102
22/tcp -> [::]:10102
3306/tcp -> 0.0.0.0:10104
3306/tcp -> [::]:10104
容器内部的 22 端口(通常用于 SSH 服务)被映射到宿主机的 10102 端口
容器内部的 3306 端口(MySQL 默认端口)被映射到宿主机的 10104 端口
[::]:10102 和 [::]:10104
注意:1 这是 IPv6 格式的地址,表示同样的端口映射也适用于 IPv6 网络。2 你看到的 TCP 是端口映射使用的传输协议,表明容器通过 可靠的 TCP 连接 暴露服务(如 SSH 和 MySQL)。如果后续遇到 UDP 协议的端口映射,原理类似。


2.3.10 修改容器的端口

方法之一是将现有的容器打包成镜像,然后在使用新的镜像运行容器时重新指定要映射的端口

第一步 将现有的容器打包成镜像

(base) marui@amax:~$ docker export myMysql > myMysql.tar

myMysql.tar会在~目录下出现

第二步 把镜像tar文件导入,生成一个新镜像

(base) marui@amax:~$ docker import - mymysql1 < myMysql.tar
sha256:d44cf9b50c3817b8993a5fa97358fe43b0fe90564fa6d5129f2682f9bdabc269
注意:镜像的名称必须全是小写

2.3.11 将现有的容器打包成镜像

(base) marui@amax:~$ docker export myMysql > myMysql.tar

2.3.12 把文件复制到容器里/复制到容器外

把文件复制到容器里

ocker cp 【在xftp中的路径】【容器ID】:【要复制到容器的路径】

(base) marui@amax:~$ docker cp /data1/marui/docker的基本命令.txt fb1420165160:/
Successfully copied 5.63kB to fb1420165160:/


把文件复制到容器外

docker cp [容器ID或容器名称]:[容器内的文件路径] [宿主机上的目标路径]

例:

(base) marui@amax:~$ docker cp 8f78a2e49b87:/docker1.txt /data1/marui
Successfully copied 4.61kB to /data1/marui

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

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

相关文章

实测,大模型谁更懂数据可视化?

大家好&#xff0c;我是 Ai 学习的老章 看论文时&#xff0c;经常看到漂亮的图表&#xff0c;很多不知道是用什么工具绘制的&#xff0c;或者很想复刻类似图表。 实测&#xff0c;大模型 LaTeX 公式识别&#xff0c;出乎预料 前文&#xff0c;我用 Kimi、Qwen-3-235B-A22B、…

Linux入门(十一)进程管理

Linux 中每个执行的程序都称为一个进程&#xff0c;每个进程都分配一个ID号&#xff08;PID&#xff09; 每个进程都可能以两种方式存在&#xff0c;前台&#xff08;屏幕上可以操作的&#xff09;和后台&#xff08;屏幕上无法看到的&#xff09;&#xff0c;一般系统的服务都…

【技能篇】RabbitMQ消息中间件面试专题

1. RabbitMQ 中的 broker 是指什么&#xff1f;cluster 又是指什么&#xff1f; 2. 什么是元数据&#xff1f;元数据分为哪些类型&#xff1f;包括哪些内容&#xff1f;与 cluster 相关的元数据有哪些&#xff1f;元数据是如何保存的&#xff1f;元数据在 cluster 中是如何分布…

Linux研学-环境搭建

一 概述 1 Linux 概述 Linux系统由内核、Shell、文件系统、应用程序及系统库等关键部分组成。内核作为核心&#xff0c;管理硬件资源与系统服务&#xff1b;Shell提供用户与系统交互的命令行界面&#xff0c;让用户能便捷执行操作&#xff1b;文件系统负责数据的存储、组织与管…

Ubuntu系统下可执行文件在桌面单击运行教程

目录 ​编辑 操作环境&#xff1a;这个可执行文件在原目录下还有它的依赖文件 1&#xff0c;方法1&#xff1a;创建启动脚本 操作步骤​&#xff1a; &#xff08;1&#xff09;​​在桌面创建脚本文件​​&#xff08;如 run_main_improve.sh&#xff09;&#xff1a; ​…

Linux之文件进程间通信信号

Linux之文件&进程间通信&信号 文件文件描述符文件操作重定向缓冲区一切皆文件的理解文件系统磁盘物理结构&块文件系统结构 软硬链接 进程间通信匿名管道命名管道system V共享内存 信号 文件 首先&#xff0c;Linux下一切皆文件。对于大量的文件&#xff0c;自然要…

代码随想录算法训练营 Day61 图论ⅩⅠ Floyd A※ 最短路径算法

图论 题目 97. 小明逛公园 本题是经典的多源最短路问题。 在这之前我们讲解过&#xff0c;dijkstra朴素版、dijkstra堆优化、Bellman算法、Bellman队列优化&#xff08;SPFA&#xff09; 都是单源最短路&#xff0c;即只能有一个起点。 而本题是多源最短路&#xff0c;即求多…

改写自己的浏览器插件工具 myChromeTools

1. 起因&#xff0c; 目的: 前面我写过&#xff0c; 自己的一个浏览器插件小工具 最近又增加一个小功能&#xff0c;可以自动滚动页面&#xff0c;尤其是对于那些瀑布流加载的网页。最新的代码都在这里 2. 先看效果 3. 过程: 代码 1, 模拟鼠标自然滚动 // 处理滚动控制逻辑…

python-pptx去除形状默认的阴影

文章目录 效果原理1. 阴影继承机制解析2. XML层操作细节3. 注意事项 扩展应用1. 批量去除阴影2. 复合效果控制 效果 右边这个是直接添加一个形状。可以看到它会默认被赋予一个阴影。 然而&#xff0c;这个东西在特定的场合&#xff0c;其实是我们所不需要的。 那怎么把这个阴…

kuboard自带ETCD存储满了处理方案

一、前言 当运行 ETCD 日志报 Erro: mvcc database space exceeded 时&#xff0c;说明 ETCD 存储不足了&#xff08;默认 ETCD 存储是 2G&#xff09;&#xff0c;配额会触发告警&#xff0c;然后 Etcd 系统将进入操作受限的维护模式。 通过下面命令可以查看 ETCD 存储使用情…

SpringBoot+tabula+pdfbox解析pdf中的段落和表格数据

一、前言 在日常业务需求中&#xff0c;往往会遇到解析pdf文件中的段落或者表格数据的需求。 常见的做法是使用 pdfbox 来做&#xff0c;但是它只能提取文本数据&#xff0c;没有我们在文件页面上面的那种结构化组织&#xff0c;文本通常是散乱的包含各种换行回车空格等格式&a…

GitHub push失败解决办法-fatal: unable to access ‘https://github.com/xxx

问题描述&#xff1a; 问题解决&#xff1a; 1、首先查找自己电脑的代理地址和端口 windows教程如下&#xff1a; 1、搜索控制面板-打开Internet选项 2、点击局域网设置&#xff1a; 3、如图为地址和端口号 即可获得本机地址和端口号 2、根据上一步获得的本机地址和端口号为…

电商平台 API、数据抓取与爬虫技术的区别及优势分析

一、技术定义与核心原理 电商平台 API&#xff08;应用程序编程接口&#xff09; 作为平台官方提供的标准化数据交互通道&#xff0c;API 通过 HTTP 协议实现不同系统间的结构化数据传输。开发者需申请授权&#xff08;如 API 密钥&#xff09;&#xff0c;按照文档规范调用接口…

单卡4090部署Qwen3-32B-AWQ(4bit量化)-vllm

单卡4090部署Qwen3-32B-AWQ(4bit量化) 模型&#xff1a;Qwen3-32B-AWQ(4bit量化) 显卡&#xff1a;4090 1 张 python版本 python 3.12 推理框架“vllm 重要包的版本 vllm0.9.0创建GPU云主机 这里我使用的是优云智算平台的GPU&#xff0c;使用链接可以看下面的 https://blog.…

漫画Android:Handler机制是怎么实现的?

线程之间通信会用到Handler&#xff0c;比如&#xff0c;在子线程中进行耗时的网络请求任务&#xff0c;子线程在获取到数据后&#xff0c;更新界面的时候就需要用到Handler&#xff1b; 子线程在获取到数据后&#xff0c;不直接去更新 界面&#xff0c;而是把数据通过一个消息…

多部手机连接同一wifi的ip一样吗?如何更改ip

通常情况下&#xff0c;多部手机连接同一个WiFi时&#xff0c;它们的IP地址是各不相同的&#xff08;在局域网内&#xff09;。但是&#xff0c;从互联网&#xff08;外网&#xff09;的角度看&#xff0c;它们共享同一个公网IP地址。让我详细解释一下&#xff0c;并说明如何更…

飞牛fnNAS的Docker应用之迅雷篇

目录 一、“迅雷”应用安装 二、启动迅雷 三、迅雷账号登录 四、修改“迅雷”下载保存路径 1、下载路径准备 2、停止“迅雷”Docker容器 3、修改存储位置 4、重新启动Docker容器 5、再次“启用”迅雷 五、测试 1、在PC上添加下载任务 2、手机上管理 3、手机添加下…

SQLMesh 用户定义变量详解:从全局到局部的全方位配置指南

SQLMesh 提供了灵活的多层级变量系统&#xff0c;支持从全局配置到模型局部作用域的变量定义。本文将详细介绍 SQLMesh 的四类用户定义变量&#xff08;global、gateway、blueprint 和 local&#xff09;以及宏函数的使用方法。 一、变量类型概述 SQLMesh 支持四种用户定义变量…

inviteflood:基于 UDP 的 SIP/SDP 洪水攻击工具!全参数详细教程!Kali Linux教程!

简介 一种通过 UDP/IP 执行 SIP/SDP INVITE 消息泛洪的工具。该工具已在 Linux Red Hat Fedora Core 4 平台&#xff08;奔腾 IV&#xff0c;2.5 GHz&#xff09;上测试&#xff0c;但预计该工具可在各种 Linux 发行版上成功构建和执行。 inviteflood 是一款专注于 SIP 协议攻…

Visual Studio 2022 设置自动换行

Visual Studio 2022 设置自动换行 一、在 Visual Studio 菜单栏上&#xff0c;选择 工具>选项二、选择“文本编辑器”>“所有语言”>“常规” 全局设置此选项。 一、在 Visual Studio 菜单栏上&#xff0c;选择 工具>选项 二、选择“文本编辑器”>“所有语言”&…