linux的用法

功能命令常用参数
查看文件内容catlessheadtail-n-f
文件搜索findgrep-name-type-r
权限管理chmodchownsudo-R755
进程管理pstopkillaux-9
网络工具curlpingss-O-tuln
文本处理sedawkgreps/old/new/g{print}

二、文件与目录管理

1. 文件操作
  • cp:复制文件或目录

    bash

    cp file.txt backup/          # 复制文件到目录
    cp -r dir1 dir2              # 递归复制目录(保留子目录结构)
    cp -v file1 file2            # 显示详细复制过程
  • mv:移动或重命名

    bash

    mv old.txt new.txt           # 重命名文件
    mv file.txt /tmp/            # 移动文件到/tmp目录
    mv dir1/ dir2/               # 移动目录(若dir2存在,则dir1会进入dir2内)
  • rm:删除文件或目录(⚠️ 慎用!

    bash

    rm file.txt                  # 删除文件
    rm -rf dir/                  # 强制递归删除目录(无确认,危险!)
  • touch:创建空文件或更新文件时间戳

    bash

    touch newfile.txt            # 创建空文件
    touch existing_file.txt      # 更新文件的访问和修改时间为当前时间
2. 目录操作
  • mkdir:创建目录

    bash

    mkdir project                # 创建单个目录
    mkdir -p project/src/test    # 递归创建多级目录(即使上级目录不存在)
  • rmdir:删除空目录

    bash

    rmdir empty_dir/            # 删除空目录(若目录非空会报错)

三、文件查看与搜索

1. 查看文件内容
  • cat:显示整个文件内容

    bash

    cat file.txt                # 显示文件内容(适合小文件)
    cat file1.txt file2.txt     # 合并显示多个文件
  • less / more:分页查看文件

    bash

    less large_file.log         # 上下翻页(按 `q` 退出,`/关键词` 搜索)
    more large_file.log         # 仅支持向下翻页(逐渐被 less 替代)
  • head / tail:查看文件头部或尾部

    bash

    head -n 5 file.log          # 显示前5行
    tail -n 10 file.log         # 显示最后10行
    tail -f /var/log/syslog     # 实时追踪日志文件更新(调试神器)
2. 文件搜索
  • find:按条件搜索文件

    bash

    find /home -name "*.txt" # 在/home下搜索所有.txt文件 find . -type d -name "src" # 在当前目录搜索名为src的目录 find /var -size +10M # 搜索大于10MB的文件

  • grep:在文件中搜索文本模式

    bash

    grep "error" file.log             # 查找包含"error"的行
    grep -r "TODO" /project           # 递归搜索目录中所有文件的"TODO"
    grep -i "warning" file.log        # 忽略大小写搜索
    grep -v "success" file.log        # 反向匹配(显示不包含"success"的行)

四、权限与用户管理

1. 权限控制
  • chmod:修改文件权限(读 r=4,写 w=2,执行 x=1)

    bash

    chmod 755 script.sh       # 权限:rwxr-xr-x(所有者可读写执行,其他用户读执行)
    chmod +x script.sh        # 为所有用户添加执行权限
    chmod u=rw,g=r,o= file.txt # 所有者读写,组用户读,其他用户无权限
  • chown:修改文件所有者和所属组

    bash

    chown user:group file.txt  # 修改所有者和组
    chown -R user:group dir/   # 递归修改目录及其子文件
2. 用户与组
  • sudo:以超级用户权限执行命令

    bash

    sudo apt update           # 需要输入当前用户的密码
    sudo -i                   # 切换到root用户(谨慎使用)
  • passwd:修改用户密码

    bash

    passwd                    # 修改当前用户密码
    sudo passwd username      # 修改其他用户密码(需root权限)
  • useradd / userdel:管理用户

    bash

    sudo useradd -m alice     # 创建用户并创建主目录
    sudo userdel -r bob       # 删除用户并删除主目录

五、系统监控与进程管理

1. 进程查看与控制
  • ps:查看进程状态

    bash

    ps aux                   # 显示所有进程的详细信息(CPU、内存占用)
    ps -ef | grep nginx      # 结合管道过滤进程
  • top / htop:动态监控系统资源

    bash

    top                     # 实时显示进程、CPU、内存(按 `P` 按CPU排序)
    htop                    # 更友好的交互式界面(需安装:`sudo apt install htop`)
  • kill:终止进程

    bash

    kill 1234               # 终止PID为1234的进程(默认发送SIGTERM信号)
    kill -9 1234            # 强制终止进程(SIGKILL信号)
2. 系统资源监控
  • df:查看磁盘空间

    bash

    df -h                   # 以易读格式(GB/MB)显示磁盘使用情况
  • free:查看内存使用

    bash

    free -h                 # 显示内存和交换分区使用情况
  • uptime:查看系统运行时间与负载

    bash

    uptime                 # 输出:系统运行时间、用户数、平均负载

六、网络相关命令

1. 网络配置与检测
  • ifconfig / ip:查看和配置网络接口

    bash

    ip addr show           # 显示所有网络接口的IP地址(推荐)
    ifconfig eth0          # 显示eth0接口的详细信息(传统命令)
  • ping:测试网络连通性

    bash

    ping 8.8.8.8           # 测试与Google DNS的连通性(按Ctrl+C停止)
  • curl / wget:下载文件或访问API

    bash

    curl -O https://example.com/file.zip  # 下载文件
    wget -c https://example.com/file.zip  # 断点续传下载
    curl -X GET "https://api.example.com" # 发送HTTP请求
2. 端口与连接管理
  • netstat / ss:查看网络连接和端口

    bash

    ss -tuln               # 显示所有监听的TCP/UDP端口(推荐)
    netstat -tuln          # 传统命令(功能类似)
  • lsof:列出打开的文件和网络连接

    bash

    lsof -i :80            # 查看占用80端口的进程

七、软件包管理

1. Debian/Ubuntu (apt)
  • 更新与安装软件

    bash

    sudo apt update             # 更新软件源列表
    sudo apt install nginx      # 安装软件
    sudo apt remove nginx       # 卸载软件(保留配置文件)
    sudo apt purge nginx        # 彻底卸载(删除配置文件)
    sudo apt upgrade            # 升级所有已安装的软件
2. Red Hat/CentOS (yum/dnf)
  • 基础操作

    bash

    sudo dnf install httpd      # 安装软件
    sudo dnf update httpd       # 更新指定软件
    sudo dnf remove httpd       # 卸载软件
3. Arch Linux (pacman)
  • 常用命令

    bash

    sudo pacman -Syu           # 更新系统并升级所有软件
    sudo pacman -S vim         # 安装软件
    sudo pacman -Rns vim       # 卸载软件及其依赖

八、文本处理与管道

1. 文本处理三剑客
  • grep:过滤文本

    bash

    cat log.txt | grep "error"      # 过滤包含"error"的行
  • sed:流编辑器(替换、删除文本)

    bash

    sed 's/foo/bar/g' file.txt      # 将文件中的所有foo替换为bar
    sed -i.bak 's/old/new/' file    # 直接修改文件并备份原文件(-i参数)
  • awk:强大的文本分析工具

    bash

    awk '{print $1}' file.txt       # 打印每行的第一个字段
    awk -F':' '{print $1}' /etc/passwd  # 以冒号为分隔符,打印用户名
2. 管道 (|) 与重定向
  • 管道:将前一个命令的输出作为后一个命令的输入

    bash

    ps aux | grep chrome       # 查找所有Chrome进程
  • 重定向:控制输入/输出方向

    bash

    echo "Hello" > output.txt    # 覆盖写入文件
    echo "World" >> output.txt   # 追加到文件末尾
    ls nofile 2> error.log       # 将错误信息重定向到error.log

九、Shell 脚本基础

1. 编写简单脚本
  • 创建脚本文件(例如 hello.sh):

    bash

    #!/bin/bash
    echo "Hello, $USER!"  # 输出当前用户
  • 运行脚本:

    bash

    chmod +x hello.sh     # 添加执行权限
    ./hello.sh            # 执行脚本
2. 变量与条件判断
  • 变量赋值与使用

    bash

    name="Linux"
    echo "Welcome to $name!"  # 输出:Welcome to Linux!
  • 条件判断

    bash

    if [ -f "/path/to/file" ]; then
      echo "文件存在"
    else
      echo "文件不存在"
    fi

十、快速帮助

  • man:查看命令手册

    bash

    man ls        # 查看ls的详细用法
  • --help:快速查看选项

    bash

    grep --help   # 显示grep的简要帮助信息

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

影视文件大数据高速分发方案

在当今的数字时代,影视行业的内容创作和传播方式经历了翻天覆地的变化。随着4K、8K高清视频的普及,以及虚拟现实(VR)和增强现实(AR)技术的发展,影视文件的数据量正以前所未有的速度增长。这就要求行业内的参与者必须拥有高效的大数据传输解决…

【AI】探索自然语言处理(NLP):从基础到前沿技术及代码实践

Hi ! 云边有个稻草人-CSDN博客 必须有为成功付出代价的决心,然后想办法付出这个代价。 目录 引言 1. 什么是自然语言处理(NLP)? 2. NLP的基础技术 2.1 词袋模型(Bag-of-Words,BoW&#xff…

HTMLCSS :下雪了

这段代码创建了一个动态的雪花飘落加载动画,通过 CSS 技术实现了雪花的下落和消失效果,为页面添加了视觉吸引力和动态感。 大家复制代码时,可能会因格式转换出现错乱,导致样式失效。建议先少量复制代码进行测试,若未能…

Android 音视频编解码 -- MediaCodec

引言 如果我们只是简单玩一下音频、视频播放,那么使用 MediaPlayer SurfaceView 播放就可以了,但如果想加个水印,加点其他特效什么的,那就不行了; 学习 Android 自带的硬件码类 – MediaCodec。 MediaCodec 介绍 在A…

一文了解阿里的 Qwen2.5 模型

最近被DeepSeek刷屏了,但是在之外阿里在2025年1月28日推出了Qwen 2.5 Max模型。 Qwen2.5-Max 的特点:大规模的 MoE 模型,预训练于超 20 万亿 tokens,并经过 SFT 和 RLHF 后训练。 性能表现:在多个基准测试中与领先模型…

DeepSeek R1 linux云部署

云平台:AutoDL 模型加载工具:Ollama 参考:https://github.com/ollama/ollama/blob/main/docs/linux.md 下载Ollama 服务器上下载ollama比较慢,因此我使用浏览器先下载到本地电脑上。 https://ollama.com/download/ollama-linux…

FlashAttention v1 论文解读

论文标题:FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness 论文地址:https://arxiv.org/pdf/2205.14135 FlashAttention 是一种重新排序注意力计算的算法,它无需任何近似即可加速注意力计算并减少内存占用。…

Vue - shallowRef 和 shallowReactive

一、shallowRef 和 shallowReactive (一)shallowRef 在 Vue 3 中,shallowRef 是一个用于创建响应式引用的 API,它与 ref 相似,但它只会使引用的基本类型(如对象、数组等)表现为响应式&#xf…

【深度学习】softmax回归的简洁实现

softmax回归的简洁实现 我们发现(通过深度学习框架的高级API能够使实现)(softmax)线性(回归变得更加容易)。 同样,通过深度学习框架的高级API也能更方便地实现softmax回归模型。 本节继续使用Fashion-MNIST数据集,并保持批量大小为256。 import torch …

ESP32-c3实现获取土壤湿度(ADC模拟量)

1硬件实物图 2引脚定义 3使用说明 4实例代码 // 定义土壤湿度传感器连接的模拟输入引脚 const int soilMoisturePin 2; // 假设连接到GPIO2void setup() {// 初始化串口通信Serial.begin(115200); }void loop() {// 读取土壤湿度传感器的模拟值int sensorValue analogRead…

【python】python油田数据分析与可视化(源码+数据集)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 【python】python油田数据分析与可视化&#xff08…

代码讲解系列-CV(一)——CV基础框架

文章目录 一、环境配置IDE选择一套完整复现安装自定义cuda算子 二、Linux基础文件和目录操作查看显卡状态压缩和解压 三、常用工具和pipeline远程文件工具版本管理代码辅助工具 随手记录下一个晚课 一、环境配置 pytorch是AI框架用的很多,或者 其他是国内的框架 an…

HTB:Alert[WriteUP]

目录 连接至HTB服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 使用ffuf对alert.htb域名进行子域名FUZZ 使用go…

小红的合数寻找

A-小红的合数寻找_牛客周赛 Round 79 题目描述 小红拿到了一个正整数 x,她希望你在 [x,2x] 区间内找到一个合数,你能帮帮她吗? 一个数为合数,当且仅当这个数是大于1的整数,并且不是质数。 输入描述 在一行上输入一…

Linux环境下的Java项目部署技巧:安装 Mysql

查看 myslq 是否安装: rpm -qa|grep mysql 如果已经安装,可执行命令来删除软件包: rpm -e --nodeps 包名 下载 repo 源: http://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm 执行命令安装 rpm 源(根据下载的…

基于springboot+vue的哈利波特书影音互动科普网站

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

在React中使用redux

一、首先安装两个插件 1.Redux Toolkit 2.react-redux 第一步:创建模块counterStore 第二步:在store的入口文件进行子模块的导入组合 第三步:在index.js中进行store的全局注入 第四步:在组件中进行使用 第五步:在组件中…

记录 | 基于MaxKB的文字生成视频

目录 前言一、安装SDK二、创建视频函数库三、调试更新时间 前言 参考文章:如何利用智谱全模态免费模型,生成大家都喜欢的图、文、视并茂的文章! 自己的感想 本文记录了创建文字生成视频的函数库的过程。如果想复现本文,需要你逐一…

Redis|前言

文章目录 什么是 Redis?Redis 主流功能与应用 什么是 Redis? Redis,Remote Dictionary Server(远程字典服务器)。Redis 是完全开源的,使用 ANSIC 语言编写,遵守 BSD 协议,是一个高性…

安全防护前置

就业概述 网络安全工程师/安全运维工程师/安全工程师 安全架构师/安全专员/研究院(数学要好) 厂商工程师(售前/售后) 系统集成工程师(所有计算机知识都要会一点) 学习目标 前言 网络安全事件 蠕虫病毒--&…