Linux指令大全

Linux指令大全

下面是一些常见的 Linux 指令及其简要说明,分为不同类别,方便查阅:

文件和目录操作

  1. ls:列出当前目录的内容
    • ls -l:详细显示文件信息
    • ls -a:显示隐藏文件
  1. cd:切换目录
    • cd ..:返回上一级目录
    • cd ~:进入用户的主目录
  1. pwd:显示当前工作目录
  2. mkdir:创建新目录
    • mkdir dirname:创建名为 dirname 的目录
  1. rm:删除文件或目录
    • rm file:删除文件
    • rm -r dir:递归删除目录
    • rm -rf dir: 无需用户确认直接强行删除
    • rm -f:强制删除文件 加上这个就不用
  1. cp:复制文件或目录
    • cp file1 file2:将文件 file1 复制到 file2
    • cp -r dir1 dir2:递归复制目录
  1. mv:移动文件或重命名
    • mv file1 file2:将文件 file1 移动或重命名为 file2
  1. touch:创建新文件
    • touch filename:创建空文件

文件内容查看

  1. cat:查看文件内容
    • cat file:显示文件内容
  1. less:分页查看文件内容
    • less file:逐页查看文件内容
    • 在使用 less 分页查看文件内容时,你可以按以下键退出查看模式:
css 复制代码
退出 less 的方法:
● 按 q 键:这是退出 less 查看器的快捷键,按下 q 后会立即退出 less,返回命令行。
常见的其他 less 操作:
● 向下翻页:按 Space 键或 f 键。
● 向上翻页:按 b 键。
● 向下滚动一行:按 Enter 键或 j 键。
● 向上滚动一行:按 k 键。
● 搜索文本:按 / 键,然后输入搜索的关键字,按 Enter 进行搜索。
要退出 less 查看器,只需按下 q 键即可
  1. more :类似于 less,但功能稍弱 4. head:显示文件前几行
    • head -n 10 file:显示文件的前 10 行
  1. tail:显示文件后几行
    • tail -n 10 file:显示文件的最后 10 行
    • tail -f file:实时查看文件末尾的变化(例如日志文件)

文件权限

  1. chmod:更改文件权限
    • chmod 755 file:设置文件权限为 755
    • chmod u+x file:为文件的拥有者添加执行权限
  1. chown:更改文件所有者
    • chown user:group file:将文件的所有者和所属组更改为指定的 user 和 group
  1. umask:设置默认文件权限

系统管理

  1. sudo:以超级用户身份执行命令
    • sudo command:以管理员身份执行 command
  1. df:查看磁盘空间使用情况
    • df -h:以可读的方式显示
  1. du:查看目录和文件的大小
    • du -h:以可读的方式显示
    • du -sh dir:显示目录 dir 的总大小
  1. top:实时查看系统进程和资源使用情况
  2. ps:查看当前运行的进程
    • ps aux:显示所有进程的详细信息
    • ps -ef

ps -ef 与 ps aux

  1. kill:终止进程
    • kill PID:终止指定 PID 的进程
    • kill -9 PID:强制终止进程
  1. reboot:重启系统
  2. shutdown:关闭系统
    • shutdown -h now:立即关机
    • shutdown -r now:立即重启

压缩与解压

  1. tar:打包和解包文件
    • tar -cvf archive.tar dir/:将 dir 目录打包为 archive.tar
    • tar -xvf archive.tar:解包 archive.tar
    • tar -czvf archive.tar.gz dir/:打包并压缩为 gzip 格式
    • tar -xzvf archive.tar.gz:解压 gzip 格式的压缩包
  1. gzip:压缩文件
    • gzip file:压缩文件
    • gzip -d file.gz:解压缩文件
  1. zip:压缩文件或目录
    • zip archive.zip file1 file2:压缩文件
    • unzip archive.zip:解压缩文件
  • 下载rar解析工具

sudo dnf install epel - release

sudo dnf install unrar

unrar x example.rar

网络相关

  1. ping:测试网络连通性
    • ping www.example.com:测试与域名的连接
  1. ifconfig:查看或配置网络接口(较旧)
  2. ip:显示或修改网络配置(替代 ifconfig)
    • ip addr:查看网络地址
  1. netstat:查看网络连接状态
    • netstat -tuln:查看当前监听的端口
  1. ssh:远程登录
    • ssh user@host:登录到指定的远程主机
  1. scp:通过 SSH 复制文件
    • scp file user@host:/path/:将文件复制到远程主机
    • scp user@host:/path/file ./:从远程主机复制文件到本地

搜索与查找

  1. find:在文件系统中查找文件
    • find /path -name filename:在 /path 目录下查找名为 filename 的文件
  1. grep:在文件中搜索文本
    • grep 'pattern' file:在文件中搜索匹配 pattern 的行
    • grep -r 'pattern' dir/:递归搜索目录
  1. locate:快速查找文件
    • locate filename:查找文件位置(需要事先更新数据库)

磁盘和文件系统

  1. mount:挂载文件系统
    • mount /dev/sdX /mnt:挂载设备到 /mnt 目录
  1. umount:卸载文件系统
    • umount /mnt:卸载挂载在 /mnt 的文件系统
  1. fdisk:磁盘分区工具
  2. mkfs:格式化文件系统
    • mkfs.ext4 /dev/sdX:将设备格式化为 ext4 文件系统

用户和组管理

  1. useradd:添加新用户
    • useradd username:添加新用户
  1. passwd:设置用户密码
    • passwd username:为用户设置密码
  1. groupadd:添加新组
  2. usermod:修改用户属性
    • usermod -aG group username:将用户添加到组中
  1. userdel:删除用户
    • userdel username:删除用户
  1. who:查看当前登录的用户
  2. su:切换用户身份
    • su - username:切换到指定用户

其他常用命令

  1. echo:输出文本
    • echo "Hello World":打印文本
  1. history:查看命令历史
  2. alias:为命令创建别名
    • alias ll='ls -l':将 ll 作为 ls -l 的别名
  1. date:显示当前日期和时间
  2. uptime:查看系统运行时间
  3. clear:清屏
命令 说明 文档地址
docker pull 拉取镜像 docker pull
docker push 推送镜像到DockerRegistry docker push
docker images 查看本地镜像 docker images
docker rmi 删除本地镜像 docker rmi
docker run 创建并运行容器(不能重复创建) docker run
docker stop 停止指定容器 docker stop
docker start 启动指定容器 docker start
docker restart 重新启动容器 docker restart
docker rm 删除指定容器 docs.docker.com
docker ps 查看容器 docker ps
docker logs 查看容器运行日志 docker logs
docker exec 进入容器 docker exec
docker save 保存镜像到本地压缩文件 docker save
docker load 加载本地压缩文件到镜像 docker load
docker inspect 查看容器详细信息 docker inspect

Docker 是一个用于容器化应用程序的开源平台,以下是一些常见的 Docker 命令,涵盖了镜像、容器、网络、数据卷等操作。

镜像操作

  1. 搜索镜像
    • docker search image_name:在 Docker Hub 上搜索镜像。
  1. 下载镜像
    • docker pull image_name:从 Docker Hub 下载镜像。
    • docker pull image_name:tag:下载指定标签(版本)的镜像。
  1. 列出本地镜像
    • docker images:列出本地的所有镜像。
  1. 删除镜像
    • docker rmi image_name:删除本地的指定镜像。
    • docker rmi image_id:根据镜像 ID 删除镜像。
  1. 构建镜像
    • docker build -t image_name:tag .:基于 Dockerfile 构建镜像并指定名称和标签。

容器操作

  1. 运行容器
    • docker run image_name:从镜像启动一个容器。
    • docker run -d image_name:后台运行容器(守护模式)。
    • docker run -it image_name /bin/bash:启动交互式容器并进入 Bash。
  1. 列出容器
    • docker ps:列出正在运行的容器。
    • docker ps -a:列出所有容器(包括停止的)。
  1. 停止容器
    • docker stop container_id:停止指定容器。
    • docker stop $(docker ps -q):停止所有运行中的容器。
  1. 启动容器
    • docker start container_id:启动已停止的容器。
  1. 删除容器
    • docker rm container_id:删除指定容器。
    • docker rm $(docker ps -a -q):删除所有已停止的容器。
  1. 查看容器日志
    • docker logs container_id:查看指定容器的日志。
    • docker logs -f container_id:实时查看容器日志。
  1. 进入容器
    • docker exec -it container_id /bin/bash:进入正在运行的容器并启动一个交互式终端。
  1. 重启容器
    • docker restart container_id:重启容器。

网络操作

  1. 列出网络
    • docker network ls:列出所有 Docker 网络。
  1. 创建网络
    • docker network create network_name:创建自定义网络。
  1. 删除网络
    • docker network rm network_name:删除指定网络。
  1. 连接容器到网络
    • docker network connect network_name container_id:将容器连接到指定网络。
  1. 断开容器与网络的连接
    • docker network disconnect network_name container_id:断开容器与网络的连接。

数据卷(Volume)操作

  1. 创建数据卷
    • docker volume create volume_name:创建数据卷。
  1. 列出数据卷
    • docker volume ls:列出所有数据卷。
  1. 挂载数据卷
    • docker run -v volume_name:/path/in/container image_name:将数据卷挂载到容器中指定的路径。
  1. 删除数据卷
    • docker volume rm volume_name:删除指定的数据卷。
  1. 清理未使用的数据卷
    • docker volume prune:删除所有未使用的数据卷。

镜像和容器清理

  1. 删除未使用的镜像
    • docker image prune:删除所有未被容器使用的镜像。
  1. 删除所有未使用的资源
    • docker system prune:清理所有未使用的容器、镜像、网络等资源。

Docker Compose

  1. 启动容器
    • docker-compose up:根据 docker-compose.yml 启动服务。
    • docker-compose up -d:后台运行所有服务。
  1. 停止容器
    • docker-compose down:停止并删除所有由 docker-compose 启动的容器和网络。
  1. 查看容器日志
    • docker-compose logs:查看由 docker-compose 启动的服务的日志。
  1. 构建镜像
    • docker-compose build:根据 docker-compose.yml 文件构建镜像。

其他常用命令

  1. 查看容器信息
    • docker inspect container_id:查看容器详细信息。
    • docker stats:实时查看容器的资源使用情况。
  1. 复制文件
    • docker cp container_id:/path/in/container /host/path:从容器内复制文件到宿主机。
    • docker cp /host/path container_id:/path/in/container:从宿主机复制文件到容器内。
  1. 重命名容器
    • docker rename old_name new_name:为容器重新命名。
  1. 导出容器
    • docker export container_id > file.tar:将容器导出为 tar 文件。
  1. 导入容器
    • docker import file.tar:将导出的 tar 文件导入为镜像。

管理 Docker 服务

  1. 启动 Docker 服务
    • sudo systemctl start docker:启动 Docker 服务。
  1. 停止 Docker 服务
    • sudo systemctl stop docker:停止 Docker 服务。
  1. 检查 Docker 服务状态
    • sudo systemctl status docker:检查 Docker 服务是否正在运行。
  1. 启用 Docker 开机启动
    • sudo systemctl enable docker:设置 Docker 开机自动启动。

总结

以上是常见的 Docker 命令,涵盖了容器的启动、停止、删除、网络管理、数据卷管理等操作。通过熟悉这些命令,可以有效地使用 Docker 来管理和部署容器化应用。

在 Linux 系统中,sudo 命令的作用是以超级用户(root)的权限执行命令。普通用户在执行一些涉及系统级别的操作时,往往需要通过 sudo 来临时获取 root 权限。sudo 和不加 sudo 的区别主要体现在权限控制上。

总结

  • sudo:你可以提升到 root 权限执行命令,通常是管理系统服务所必需的。
  • 不加 sudo:以普通用户权限执行命令,通常无法成功启动或管理系统级服务,除非当前用户就是 root。

一般情况下,管理 Docker 服务(如启动、停止等)都需要 sudo 权限,因此你需要在命令前加上 sudo 来提升权限。

systemctl 是 Linux 系统中用于管理 systemd 系统和服务管理器的命令行工具。systemd 是许多现代 Linux 发行版中默认的系统初始化程序(init 系统),负责启动、停止和管理系统的服务和进程。

systemctl 主要用于启动、停止、重启服务,查看服务状态,以及管理系统服务的启动行为(例如开机自动启动等)。

systemctl 的常用功能和命令

  1. 启动服务
    • systemctl start service_name:启动指定的服务。
    • 示例:systemctl start docker 启动 Docker 服务。
  1. 停止服务
    • systemctl stop service_name:停止指定的服务。
    • 示例:systemctl stop nginx 停止 Nginx 服务。
  1. 重启服务
    • systemctl restart service_name:重启指定的服务。
    • 示例:systemctl restart apache2 重启 Apache 服务。
  1. 查看服务状态
    • systemctl status service_name:查看服务的当前状态(运行中、停止或失败等)。
    • 示例:systemctl status ssh 查看 SSH 服务状态。
  1. 启用服务(开机自启)
    • systemctl enable service_name:设置指定服务为开机自动启动。
    • 示例:systemctl enable docker 设置 Docker 服务为开机启动。
  1. 禁用服务(取消开机自启)
    • systemctl disable service_name:取消指定服务的开机启动。
    • 示例:systemctl disable docker 禁止 Docker 开机自动启动。
  1. 查看服务是否开机自启
    • systemctl is-enabled service_name:查看某个服务是否设置为开机自启。
  1. 重新加载配置
    • systemctl reload service_name:在不终止服务的情况下重新加载其配置文件(如果服务支持)。
    • 示例:systemctl reload nginx 重新加载 Nginx 的配置文件。
  1. 列出所有服务
    • systemctl list-units --type=service:列出系统中所有的服务及其状态。
  1. 列出失败的服务
    • systemctl --failed:显示所有失败的服务。
  1. 查看系统状态
    • systemctlsystemctl status:查看系统整体的状态,包括系统启动时间、加载的服务、状态等。

systemdsystemctl 的关系

  • systemd 是一个系统和服务管理器,负责启动系统时初始化服务、挂载文件系统、管理服务的依赖关系、处理进程等。它取代了传统的 init 系统。
  • systemctl 是与 systemd 交互的命令行工具,允许管理员通过命令管理服务和系统状态。

常见的 systemctl 使用示例

  1. 启动 Docker 服务
sql 复制代码
sudo systemctl start docker
  1. 查看 Apache 服务的状态
lua 复制代码
sudo systemctl status apache2
  1. 设置 Nginx 服务为开机自启
bash 复制代码
sudo systemctl enable nginx
  1. 重启 MySQL 服务

    sudo systemctl restart mysql

  2. 查看系统的整体状态

lua 复制代码
systemctl status

总结

systemctl 是一个非常强大的命令行工具,用于控制 systemd 管理的服务和系统状态。通过 systemctl,可以方便地启动、停止、管理和监控系统服务,提升了 Linux 系统管理的效率和灵活性。

相关推荐
H.2018 分钟前
centos7执行yum操作时报错Could not retrieve mirrorlist http://mirrorlist.centos.org解决
linux·centos
9毫米的幻想1 小时前
【Linux系统】—— 编译器 gcc/g++ 的使用
linux·运维·服务器·c语言·c++
德迅云安全-小钱1 小时前
跨站脚本攻击(XSS)原理及防护方案
前端·网络·xss
ss2731 小时前
【2025小年源码免费送】
前端·后端
Amy_cx1 小时前
npm install安装缓慢或卡住不动
前端·npm·node.js
helloliyh1 小时前
Windows和Linux系统安装东方通
linux·运维·windows
gyeolhada1 小时前
计算机组成原理(计算机系统3)--实验八:处理器结构拓展实验
java·前端·数据库·嵌入式硬件
小彭努力中1 小时前
16.在Vue3中使用Echarts实现词云图
前端·javascript·vue.js·echarts
flying robot1 小时前
React的响应式
前端·javascript·react.js
禁默1 小时前
深入探讨Web应用开发:从前端到后端的全栈实践
前端