【LINUX】Linux 命令大全:系统管理与网络操作指南

开始之前

Linux命令行,也称为终端,是Linux最强大的特性之一。通过命令行,用户可以执行几乎所有的任务,比如文件操作、程序安装、系统监控和网络配置等。了解这些基本命令,将帮助你更好地掌握Linux系统。

文件和目录操作

  1. ls

    • 基本用法:ls 列出当前目录的内容。
    • 查看详细信息:ls -l 显示当前目录内容的详细列表,包括文件权限、所有者、大小等信息。
    • 查看隐藏文件:ls -a 列出包括隐藏文件(文件名以.开头)在内的所有文件。
  2. cd

    • 改变到用户主目录:cdcd ~ 将当前目录切换到用户的主目录。
    • 改变到其他目录:cd /var/www 将当前目录切换到/var/www
  3. pwd

    • 显示当前工作目录:pwd 输出当前用户所在的完整目录路径。
  4. mkdir

    • 创建目录:mkdir photos 在当前目录下创建一个新的目录名为photos
  5. rmdir

    • 删除空目录:rmdir empty_folder 删除名为empty_folder的空目录。如果目录非空,此命令将失败。
  6. rm

    • 删除文件:rm example.txt 删除名为example.txt的文件。
    • 递归删除目录:rm -r old_folder 删除old_folder目录及其包含的所有文件和子目录。
  7. cp

    • 复制文件:cp source.txt destination.txtsource.txt复制到destination.txt(在同一目录或指定目录)。
    • 复制目录:cp -r source_folder new_foldersource_folder及其全部内容复制到新的new_folder目录。
  8. mv

    • 重命名文件:mv old_name.txt new_name.txt 将文件old_name.txt重命名为new_name.txt
    • 移动文件:mv file.txt ../file.txt移动到上级目录。

系统信息和管理

  1. top

    • 使用示例:直接输入top并按回车,就会显示一个实时更新的系统进程列表,包括CPU和内存使用情况。
  2. df

    • 查看磁盘使用情况:df -h 以易读的格式(如GB、MB)显示所有挂载的文件系统的磁盘空间使用情况。
  3. free

    • 查看内存使用情况:free -m 以MB为单位显示内存(包括物理内存、交换空间等)的使用情况。
  4. uptime

    • 显示系统运行时间:uptime 显示当前系统已经运行了多长时间,包括有多少用户登录,以及过去1、5和15分钟的平均负载。
  5. whoami

    • 显示当前用户:whoami 显示当前登录的用户名。
  6. chmod

    • 改变文件权限:chmod 755 script.sh 设置script.sh文件的权限,使得文件所有者可以读、写、执行文件,而组用户和其他用户只能读取和执行文件。
    • 示例解释:在chmod 755中,7对应所有者的权限(读4+写2+执行1),5对应组权限和其他用户的权限(读4+执行1)。
  7. chown

    • 改变文件的所有者:chown username file.txtfile.txt的所有权更改为username
    • 改变文件的所有者和组:chown username:groupname file.txt 同时更改file.txt的所有者为username和所属组为groupname

文件查找和处理

  1. find

    • 查找名为myfile.txt的文件:find / -name myfile.txt 从根目录/开始搜索整个系统中名为myfile.txt的文件。
    • 查找过去7天内被修改过的文件:find /home/user -mtime -7/home/user目录及子目录下搜索最近7天内修改过的所有文件。
  2. grep

    • 在文件中搜索字符串:“grep 'hello world' myfile.txt” 在myfile.txt文件中搜索包含字符串"hello world"的行。
    • 递归搜索:“grep -r 'search term' /path/to/directory” 在指定目录及其所有子目录下搜索每个文件中的"search term"字符串。
  3. sed

    • 替换文本:“sed 's/old/new/g' file.txt” 将file.txt文件中所有的old字符串替换为new
    • 删除行:“sed '/pattern to match/d' file.txt” 从file.txt中删除所有包含"pattern to match"的行。
  4. awk

    • 打印文件的第一列:“awk '{print $1}' file.txt” 从file.txt中打印每一行的第一列。
    • 汇总文件的第二列中的数值:“awk '{sum += $2} END {print sum}' file.txt” 计算并打印file.txt文件中第二列数值的总和。
  5. find与-delete结合使用

    • 删除当前目录及子目录下所有名为temp.txt的文件:find . -name 'temp.txt' -delete。这个命令从当前目录开始递归搜索所有名为temp.txt的文件,并删除它们。
    • 注意:使用-delete选项时要非常小心,因为一旦执行,删除的文件无法恢复。
  6. cat

    • 显示文件内容:cat filename.txt 显示名为filename.txt的文件内容。
    • 将多个文件内容合并输出:cat file1.txt file2.txt > combined.txtfile1.txtfile2.txt的内容合并,并写入combined.txt文件。

网络操作

  1. ping

    • 检查与远程服务器的连接:ping google.com 这将向google.com发送ICMP回显请求,用于检查网络连接是否成功。
  2. ifconfig

    • 显示所有网络接口的配置信息:ifconfig 不带任何参数运行ifconfig将列出所有可用的网络接口及其配置。
    • 配置特定的网络接口:ifconfig eth0 192.168.1.5 netmask 255.255.255.0 up 将网络接口eth0配置为IP地址192.168.1.5,子网掩码255.255.255.0,并激活它。
  3. ssh

    • 安全地远程登录到另一台计算机:ssh user@192.168.1.5 使用用户名user登录到IP地址为192.168.1.5的远程计算机。
  4. scp

    • 从本地复制文件到远程服务器:scp local_file.txt user@192.168.1.5:/remote/directory/ 将本地的local_file.txt复制到远程服务器上的指定目录。
    • 从远程服务器复制文件到本地:scp user@192.168.1.5:/remote/file.txt /local/directory/ 将远程服务器上的file.txt复制到本地的指定目录。
  5. wget

    • 从网络上下载文件:wget http://example.com/file.zip 这将下载http://example.com/file.zip指向的文件。
  6. curl

    • 从网络服务器获取数据:curl http://example.com 显示http://example.com的HTML内容。
    • 使用POST方法发送数据:curl -d "param1=value1&param2=value2" -X POST http://example.comhttp://example.com发送POST请求,并传递数据。

包管理

  1. apt-get (适用于Debian系的系统,如Ubuntu)

    • 安装软件包:sudo apt-get install package_name 例如,sudo apt-get install nginx 会安装Nginx。
    • 更新软件包列表:sudo apt-get update 更新本地包列表,以了解可用包的最新版本。
    • 升级所有已安装的软件包:sudo apt-get upgrade 将所有已安装的包升级到最新版本。
    • 删除软件包:sudo apt-get remove package_name 删除指定的软件包(不包括配置文件)。
    • 清除不再需要的软件包:sudo apt-get autoremove 自动删除系统不再需要的依赖包。
  2. yum (适用于Red Hat系的系统,如CentOS)

    • 安装软件包:sudo yum install package_name 例如,sudo yum install httpd 会安装Apache HTTP服务器。
    • 更新软件包:sudo yum update package_name 更新指定的软件包。若不指定包名,则更新所有已安装的包。
    • 查找软件包:sudo yum search keyword 根据关键词搜索包。
    • 删除软件包:sudo yum remove package_name 删除指定的软件包。
    • 清除缓存:sudo yum clean all 清除yum缓存,删除下载的包和头文件。
  3. snap (跨Linux发行版的包管理方案)

    • 安装软件包:sudo snap install package_name 例如,sudo snap install vscode 会安装Visual Studio Code。
    • 列出已安装的snap包:snap list 显示所有已安装的snap包。
    • 更新所有snap包:sudo snap refresh 更新所有已安装的snap包。
    • 回滚软件包到先前版本:sudo snap revert package_name 将指定的snap包回滚到先前的版本。
    • 删除软件包:sudo snap remove package_name 删除指定的snap包。
  4. flatpak (同样适用于跨Linux发行版)

    • 安装软件包:flatpak install flathub app_id 例如,flatpak install flathub com.spotify.Client 会从Flathub安装Spotify。
    • 运行一个flatpak应用:flatpak run app_id 例如,flatpak run com.spotify.Client 会运行Spotify。
    • 更新所有flatpak包:flatpak update 更新所有已安装的flatpak包。
    • 列出已安装的flatpak包:flatpak list 显示所有已安装的flatpak包。
    • 删除软件包:flatpak uninstall app_id 删除指定的flatpak包。

总结

Linux命令行是一个强大的工具,了解和掌握这些基本命令将极大增强你操作Linux系统的能力。以上列出的命令仅仅是冰山一角,但已经足够覆盖大多数日常需求。随着你对Linux的深入了解,你会发现更多有用的命令和技巧。希望这篇博客能为你提供一个良好的起点。

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

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

相关文章

大语言模型的多模态应用(多模态大语言模型的相关应用)

探索大语言模型在多模态领域的相关研究思路

2024 抖音欢笑中国年(三):编辑器技巧与实践

前言 本次春节活动中,我们大部分场景使用内部的 SAR Creator互动方案来实现。 SAR Creator 是一款基于 TypeScript 的高性能、轻量化的互动解决方案,目前支持了Web和字节内部跨端框架平台,服务于字节内部的各种互动业务,包括但不限…

DHCP服务器的高可靠、高可用+负载均衡配置

一、适用场景 1、DHCP地址池集中化的管理环境中(本例建立了200个C类网24位的地址池); 2、全网仅1台合法的DHCP服务器(要是它宕机全部断网,本例旨在提高服务器的可靠性、可用性,双DHCP服务器性能上负载均衡…

文心一言和GPT-4全面比较

自大型语言模型出现以来,人工智能在自然语言处理方面取得了显著进步。文心一言和GPT-4是当前最先进的两款语言模型,在业内广受关注。两者都具有强大的能力,但各有特点和优势。本文将从多个方面对这两个模型进行全面比较,以帮助读者…

AIoT人工智能物联网----刷机、系统安装、示例、摄像头等

软件链接见文末 1. jetson nano硬件介绍 载板 模组卡座:放置核心板 micro SD卡接口:插SD卡,将操作系统写入SD卡,然后插入;建议至少为32GB。当然根据使用情况可以是64GB;卡的质量一定要好,读写速度快。之前买了同品牌128G的比64G的慢很多。所以大小合适就好M.2 Key E …

防SSL证书泄露服务器IP教程

在Web CDN(内容分发网络)中,防止SSL泄露源服务器IP是一个重要的安全考虑。下面是一些建议的方法来实现这一目标: 首先呢,我们隐藏服务器IP不要使用服务器IP生成的SSL证书,不然会泄露我们的服务器IP。 泄露了…

HDFS [MSST‘10] 论文阅读笔记

原论文:The Hadoop Distributed File System (MSST’10) HDFS关键技术要点概览 设计目标:HDFS旨在可靠地存储大型数据集,并以高带宽流式传输这些数据集到用户应用程序。它通过在大量服务器上分布存储和计算资源,使得资源可以随着需求的增长而扩展,同时保持经济高效。架构组…

Training - 使用 WandB 配置 可视化 模型训练参数

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/137529140 WandB (Weights&Biases) 是轻量级的在线模型训练可视化工具,类似于 TensorBoard,可以帮助用户跟踪…

基于遗传模拟退火混合优化算法的车间作业最优调度matlab仿真,输出甘特图

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 4.1遗传算法与模拟退火算法简介 4.2 GSAHO算法应用于JSSP 5.完整程序 1.程序功能描述 车间作业调度问题(Job Shop Scheduling Problem, JSSP)是一种典型的生产调度问…

3D Web轻量化引擎HOOPS Commuicator如何从整体装配中创建破碎的装配零件和XML?

前言 虽然可以从某些本机CAD格式(其子组件驻留在单独的文件中,例如CATIA V5、Creo - Pro/E、NX或SolidWorks)创建破碎装配,但无法从整体装配文件(例如IFC、Revit)创建或3DXML。 本文介绍了一个示例&#…

设计模式(22):解释器模式

解释器 是一种不常用的设计模式用于描述如何构成一个简单的语言解释器,主要用于使用面向对象语言开发的解释器和解释器设计当我们需要开发一种新的语言时,可以考虑使用解释器模式尽量不要使用解释器模式,后期维护会有很大麻烦。在项目中&…

vue+springboot实现JWT登录验证

目录 前言概念实际演示路由信息初始访问登录界面登录验证验证过期 vue实现依赖引入main.js获取和设置token工具类登录方法实体登录方法axios请求 router配置 springboot实现依赖引入JWT工具类忽视jwt验证注解拦截器逻辑跨域&调用拦截器配置登录接口&验证token接口 结语…

【软考】下午题:面向对象与程序设计【接口、抽象类、this、super使用】

文章目录 1、位运算符2、特殊关键字的使用:break、continue3、成员变量(类的属性)和局部变量的区别4、this关键字5、super关键字6、抽象类与abstract关键字7、接口8、Java权限修饰符 1、位运算符 注意: ①右移根据最高位是0&#…

SOLIDWORKS如何新建定义材质库

SolidWorks材质库中包含了大量的材料选项,涵盖了金属、塑料、橡胶、复合材料等各种类型,每种材料都有详细的特性参数。用户可以根据设计需求,在材质库中选择合适的材料,从而更好地满足设计要求。在有限元分析中,需要附…

统一用安卓Studio修改项目包名

可以逃跑,可以哭泣,但不可以放弃 --《鬼灭之刃》 修改项目包名 1)选中项目中药修改的包名: 2)目结构显示方式,取消 Compact Middle Packages 选项; 3)右键要修改的包名,选择 Refactor —— Re…

WPF 跨线程-Dispatcher:详解与示例

在 WPF 应用程序中,UI 线程负责处理用户界面元素的所有操作,例如绘制、布局和事件处理。由于 WPF 控件是线程敏感的,只能在 UI 线程上访问它们。如果我们想在后台线程中执行 UI 操作,我们就需要使用 Dispatcher 来确保这些操作在正…

结构体及联合体大小计算

结构体大小计算 结构体大小的计算的依据是结构体内存对齐 对齐规则: 1.结构体的第一个成员对齐到和结构体变量起始位置偏移量为0的地址处 2.其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处。 (对齐数编译器默认的一个对齐…

超越常规:用PHP抓取招聘信息

在人力资源管理方面,有效的数据采集可以为公司提供宝贵的人才洞察。通过分析招聘网站上的职位信息,人力资源专员可以了解市场上的人才供给情况,以及不同行业和职位的竞争状况。这样的数据分析有助于企业制定更加精准的招聘策略,从…

redis的三大模式的演化及集群模式思考和总结

redis的三大模式,也是循序渐进。 1、主从复制 比如一开始的读写分离的,主从复制。 一个master,多个slave。 master进行写和 增量同步,slave负责读,和接收增量同步的信息。 这样压力减轻。 2、哨兵模式 这个推出…

打印CSDN博客只需两步

打印博客 关闭浏览器限制 浏览器打开对应博客&#xff0c;F12&#xff0c;在console下粘贴如下代码&#xff0c;回车 (function doPrint(){var head_str "<html><head><title></title></head><body>"; var foot_str "&…