Linux 操作系统常用命令与操作指南

简介: 本文将为大家介绍Linux操作系统中的常用命令和操作。这些命令对于初学者和Linux用户都非常重要,掌握它们将大大提高在Linux环境下的工作效率。

前言

本文将为大家介绍Linux操作系统中的常用命令和操作。这些命令对于初学者和Linux用户都非常重要,掌握它们将大大提高在Linux环境下的工作效率。


一、Linux是什么?

Linux是一款开源的类Unix操作系统,其具有高度的可定制性和灵活性,适用于各种计算机和设备,从个人计算机到大型服务器和嵌入式系统。由于其安全性、稳定性和丰富的软件资源,Linux已成为企业和组织的首选操作系统,同时也是科研和学术界的热门选择。Linux的开放源代码促进了全球协作和创新,形成了一个不断发展和进步的生态系统。

二、Linux 常用命令

1.特殊符号

在Linux系统中,有一些特殊符号用于表示特定的路径或目录,通过使用这些特殊符号,我们可以方便地引用和导航到不同的目录和文件。

  • . :当目录或文件名以 .开始时,表示它是一个隐藏的文件;路径以 .开始时,表示当前路径
  • .. :表示当前目录的上一级目录,即父目录
  • ~ :表示当前用户的home目录,也就是用户的个人主目录
  • / :表示根目录,它是整个文件系统的起始点

2.快捷方式

在Linux终端中,有一些快捷方式可以提高命令行的效率和便利性。

  • Tab键:自动补全和提示。按下Tab键可以自动补全命令或文件路径,如果输入的命令或路径是唯一的,按下Tab键会自动补全整个命令或路径。如果有多个匹配项,按下Tab键会显示可能的补全选项,方便选择。
  • history命令:显示历史执行记录。通过输入history命令,可以显示当前终端会话中执行过的历史命令记录。这对于回顾之前执行过的命令或者查找某个特定命令非常有用,可以使用上下方向键在历史命令中进行浏览,并使用回车键重新执行选中的命令。

3.常用操作命令

(1) 显示目录内容:ls(list files)命令

ls(list files)命令用于显示目录中的文件和子目录。以下是几个常用的选项:

  • ls:显示目录中的文件和子目录
  • ls -a:显示所有文件及目录,包括隐藏文件(以.开头的文件和目录)
  • ls -l:以长格式显示文件信息,包括文件名称、文件类型、权限、拥有者、文件大小等。可以使用ll命令作为ls -l的别名

(2) 切换目录:cd(change directory)命令

cd(change directory)命令用于在终端中切换目录。以下是几个常用的目录引用符号:

  • ~ :表示用户的home目录,即个人主目录
  • . :表示目前所在目录,也就是当前工作目录
  • .. :表示目前目录位置的上一层目录,即父目录

使用cd命令时,可以加上目录路径来切换到指定的目录。例如,cd /path/directory会将当前工作目录切换为/path/directory。如果只输入cd命令而不加目录路径,会将当前工作目录切换至用户的home目录。

(3) 创建、删除:

mkdir(make directory)命令、touch命令和rm(remove)命令用于在终端中进行文件和目录的创建、删除操作。

  • mkdir(make directory)命令:用于创建目录

    • mkdir -p:确保父目录名称存在,不存在则创建
  • touch命令:创建一个空文件

  • rm(remove)命令:用于删除一个文件或目录

    • rm -f:强制直接删除,无需用户确认
    • rm -r:将目录及以下所有递归逐一删除

(4) 复制、移动:

mv(move file)命令和cp(copy file)命令用于在终端中进行文件和目录的复制、移动操作。

  • mv(move file)命令:用于文件或目录改名,或将文件或目录移入其它位置

  • cp(copy file)命令:用于复制文件或目录

    • cp -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件

(5) 文件内容查看:

cat(concatenate)命令、more命令和tail命令用于在终端中查看文件内容。在查看文件内容时,要根据文件大小和内容选择合适的命令和选项,以便高效地获取所需信息。

  • cat(concatenate)命令:用于连接文件并打印到标准输出设备上(适合小文件内容查看)

  • more命令:类似cat命令,会以一页一页的形式显示,翻页结束自动退出(适合大文件查看),按space键翻下一页,按b往回上一页

  • tail命令:用于查看文件的结尾部分内容

    • tail -n:用于显示行数,默认为10,即显示10行的内容
    • tail -f:用于实时显示文件动态追加的内容。会把文件里的最尾部的内容显示在屏幕上,并不断刷新,只要文件有更新,就可以看到最新的文件内容

(6) 打包与解包命令:

打包与解包: 在Linux系统中,我们经常需要对文件进行打包和解包操作。这时,我们可以使用tar命令来完成这些任务。tar命令是一个强大的工具程序,常用于备份文件,并允许用户加入或解开备份文件内的文件。

  • tar命令的基本语法如下:

    • tar [选项] [文件...]
  • 常用的选项包括:

    • -c 或 --create:用于建立新的备份文件
    • -x 或 --extract 或 --get:用于从备份文件中还原文件
    • -v 或 --verbose:用于显示指令执行过程,方便查看打包或解包的进度和结果
    • -f <备份文件> 或 --file=<备份文件>:用于指定备份文件的名称

示例(这个命令会将file1、file2和file3打包成一个名为archive.tar的备份文件,并显示打包的过程):

tar -cvf archive.tar file1 file2 file3

打包压缩与解包解压缩: 在打包备份或解包的过程中,还可以通过指定压缩算法对打包的文件进行压缩,以节省存储空间。同样地,在解压的时候也需要指定相应的算法来解压文件。

  • tar命令支持多种压缩算法,其中常用的包括gzip算法。要使用gzip算法进行压缩或解压,可以添加以下选项:

    • -z 或 --gzip 或 --ungzip:通过gzip指令处理备份文件。

示例(这个命令会将file1、file2和file3打包成一个名为archive.tar的备份文件,并使用gzip算法进行压缩,生成archive.tar.gz文件,并显示打包压缩的过程):

tar -czvf archive.tar.gz file1 file2 file3

(7) 其他:

  • | 管道命令:将前一个命令执行的结果作为内容交给下一个命令处理,可以形成多级管道操作。例如,命令1 | 命令2:将命令1的结果通过命令2做进一步的处理。
  • echo命令:用于内容的输出,将内容输出到console控制台上。
  • > 输出重定向(覆盖)命令:command > file :执行command然后将输出的内容存入file,file内已经存在的内容将被新内容覆盖替换。
  • >> 输出重定向(追加)命令:command >> file :执行command然后将输出的内容存入file,新内容追加在文件末尾。

4.常用系统命令

(1) 时间、日期查看:

  • date命令:用来显示或设定系统的日期与时间,格式设定为一个加号后接数个标记
  • cal(calendar)命令:用于显示当前或指定日期的公历

(2) 内存、磁盘使用率查看:

  • free命令:用于显示内存状态。会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等
  • df(disk free)命令:用于显示目前在linux系统上的文件系统磁盘使用情况统计

(3) 进程查看:

  • ps(process status)命令:用于显示当前进程的状态
  • jps命令:JDK自带的命令,用于查看本机运行的Java进程情况

5.vi / vim 文本编辑器

vi/vim是一款功能强大的文本编辑器,广泛应用于Unix和类Unix操作系统,也支持Windows等其他平台。它采用命令行界面,拥有插入模式、命令模式和可视模式三种主要模式。vi/vim具备搜索替换、语法高亮、自动缩进等强大编辑功能,同时允许用户定制快捷键和行为。

(1) 打开与新建文件:

  • vim / path / file

    • 如果文件不存在,则新建文件,编辑器左下角提示 new file
    • 如果文件存在,则打开文件,进入命令模式

(2) vim编辑器3种工作模式:

  • 命令模式(Command mode):

    • 所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能
    • 不能自由进行文本编辑
  • 输入模式(Insert mode):

    • 编辑模式、插入模式
    • 可以对文件内容进行自由编辑
  • 底线命令模式(Last line mode):

    • 以 : 开始,通常用于文件的保存、退出

(3) 命令模式<- ->输入模式:

  • i :进入到编辑输入模式后,定位到当前光标前面
  • o :进入到编辑输入模式后,在当前行的后面添加一行空行
  • 输入模式下按ESC退回到命令模式

(4) 命令模式<- ->底线命令模式:

  • 在命令模式下,输入 : 进入底线命令模式

  • 常用的底线命令:

    • : q 退出
    • : w 保存
    • : wq 保存退出
    • : wq! 强制保存退出
  • 命令模式下按shift + zz ,可以实现快速的保存退出

(5) vim基本操作命令:

  • 光标移动:

    • 方向键控制移动
    • 翻页 pageup pagedown
    • 行首(home 或 0) 行尾(end 或 \$)
    • 跳到文件最后一行 G
    • 跳到文件第一行 gg
  • 复制粘贴:

    • 复制:

      • yy:复制光标当前所在行内容
      • nyy:复制当前行往下 n 行
    • 粘贴:

      • p:当前行的下一行粘贴
      • P:当前行的上一行粘贴
  • 删除、撤销:

    • 删除:

      • dd:删除光标所在当前行内容
      • ndd:删除当前行往下 n 行
    • 撤销、反撤销:

      • u:撤销上一步的操作
      • ctrl + r:反撤销

6.权限管理命令

在Linux系统中,权限管理是一项至关重要的任务。为了有效地控制文件和目录的访问权限,以下是一些常用的权限管理命令:

  • chmod(change mode)命令:用于修改文件或目录的权限设置。例如,chmod 755 file:设置文件所有者为可读/可写/可执行权限,同组用户和其他用户为可读/可执行权限。
  • chown(change owner)命令:用于改变文件或目录的所有者。例如,chown user:group file:将文件的所有者更改为user,所属组更改为group。
  • chgrp(change group)命令:用于改变文件或目录的所属组。例如,chgrp group file:将文件的所属组更改为group。

7.网络相关命令

在Linux系统中,网络相关命令也是非常常用的。以下是一些常用的网络相关命令:

  • ping命令:用于测试网络连接是否正常。
  • ifconfig(interface configuration)命令:用于查看和配置网络接口。例如,ifconfig -a:显示所有网络接口的信息。
  • netstat(network statistics)命令:用于显示网络连接、路由表、接口统计等网络相关信息。例如,netstat -tuln:显示所有监听中的TCP/UDP端口。
  • ssh(secure shell)命令:用于远程登录到其他Linux系统。例如,ssh user\@host:使用用户名user登录到主机host。

8.磁盘操作命令

Linux系统中,磁盘操作也是常见的任务之一。以下是一些常用的磁盘操作命令:

  • fdisk命令:用于创建、删除、查看磁盘分区。例如,fdisk -l /dev/sda:列出/dev/sda磁盘上的所有分区信息。
  • mkfs(make filesystem)命令:用于在分区上创建文件系统。例如,mkfs.ext4 /dev/sda1:在/dev/sda1分区上创建一个ext4文件系统。
  • mount命令:用于挂载文件系统到目录上。例如,mount /dev/sda1 /mnt:将/dev/sda1分区挂载到/mnt目录上。
  • umount命令:用于卸载已挂载的文件系统。例如,umount /mnt:卸载/mnt目录上的文件系统。

9.系统监控与性能分析命令

在Linux系统中,监控系统和性能分析也是非常重要的任务。以下是一些常用的系统监控与性能分析命令:

  • top命令:用于实时显示系统中各个进程的资源占用状况
  • ps aux命令:用于查看所有进程的详细信息
  • vmstat命令:用于显示虚拟内存统计信息
  • iostat命令:用于显示磁盘I/O统计信息
  • sar命令:用于收集、报告和保存系统活动信息
  • mpstat命令:用于显示多处理器的统计信息
  • pidstat命令:用于显示进程的CPU、内存、I/O等资源的占用情况
  • perf命令:用于性能分析和调优,支持硬件和软件性能事件的采样和分析

总结

本文介绍了Linux操作系统中的一些常用命令和操作,包括特殊符号、快捷方式、常用操作命令、常用系统命令、vi/vim文本编辑器使用指南、权限管理命令、网络相关命令、磁盘操作命令以及系统监控与性能分析命令等。掌握这些命令和操作将大大提高你在Linux环境下的工作效率,希望本文能对大家有所帮助。

相关文章
|
2天前
|
Linux Shell 数据安全/隐私保护
|
3天前
|
域名解析 网络协议 安全
|
10天前
|
监控 Linux Shell
|
9天前
|
运维 监控 网络协议
|
1天前
|
Linux 开发工具
linux文本管理命令
本文档介绍了Linux系统中常用的文本处理命令,包括`echo`、`cat`、`head`、`tail`、`wc`、`less`、`grep`以及重定向符号的使用方法和练习题。此外,还详细讲解了VIM编辑器的特点、工作模式、常用快捷键和高级技巧,帮助用户高效地进行文本编辑和处理。
17 4
|
4天前
|
边缘计算 人工智能 运维
Linux操作系统:开源力量的崛起与影响###
一场技术革命的回顾 回溯至1991年,当Linus Torvalds宣布Linux操作系统的诞生时,世界或许并未意识到这一举措将如何深刻地改变技术领域的面貌。本文旨在探讨Linux操作系统的发展历程、核心特性、以及它如何引领了一场开源运动,重塑了软件行业的生态。从最初的个人爱好项目成长为全球最广泛采用的服务器操作系统之一,Linux的故事是技术创新与社区精神共同推动下的辉煌篇章。 ###
|
3天前
|
人工智能 安全 Linux
|
5天前
|
物联网 Linux 5G
Linux操作系统的演变与未来趋势####
本文深入探讨了Linux操作系统的发展历程,从最初的一个学生项目到如今全球最流行的开源操作系统之一。文章将分析Linux的核心优势、关键特性以及它在云计算、物联网和嵌入式系统中的应用前景。通过具体案例展示Linux如何推动技术创新,并预测其在未来技术生态中的角色。本文旨在为读者提供一个全面而深入的理解,帮助他们认识到Linux在现代计算环境中的重要性及其未来的潜力。 ####
|
5天前
|
人工智能 安全 物联网
Linux操作系统的演变与未来:从开源精神到万物互联的基石###
本文是关于Linux操作系统的演变、现状与未来的深度探索。Linux,这一基于Unix的开源操作系统,自1991年由林纳斯·托瓦兹(Linus Torvalds)学生时代创造以来,已经彻底改变了我们的数字世界。文章首先追溯了Linux的起源,解析其作为开源项目的独特之处;随后,详细阐述了Linux如何从一个小众项目成长为全球最广泛采用的操作系统之一,特别是在服务器、云计算及嵌入式系统领域的主导地位。此外,文章还探讨了Linux在推动技术创新、促进协作开发模式以及保障信息安全方面的作用,最后展望了Linux在未来技术趋势中的角色,包括物联网、人工智能和量子计算等前沿领域的潜在影响。 ###
|
9天前
|
运维 物联网 Linux
Linux操作系统的演变与未来趋势####
本文通过探讨Linux操作系统的历史沿革、当前主流版本的特点,以及其在服务器、云计算和物联网等新兴领域的应用,旨在揭示Linux在现代计算环境中的重要性。此外,文章还将分析Linux面临的挑战与机遇,预测其未来的发展趋势。希望通过这篇文章,读者能够更好地理解Linux的价值,并对其未来充满期待。 ####