【Linux常见命令】

文章目录

  • 前言
  • ls
  • mount
  • mkdir
  • cp
  • cd
  • tar
  • dnf
  • vim
  • systemctl
  • cat
  • scp
  • 总结


前言

本文以举例的方式解释了一些基础且常见Linux命令。


ls

ls 是 “list” 的缩写,它允许用户查看目录中的文件和子目录。

  • 例如:

    ls /stage/

这条命令在Linux系统中是用来列出/stage/目录下所有文件和文件夹的。
 
另外,只输入 ls (list)而不加任何参数或路径时,它会列出当前工作目录下的所有文件和子目录。  
直接在 ls 后面加上斜杠(如 ls /)通常表示要列出根目录(/)下的文件和子目录。  
类似 ls some_directory/ 的命令,这通常意味着列出 some_directory 这个目录下的内容。

mount

mount命令可以将分区挂接到Linux的一个文件夹下,从而将分区和该目录联系起来,因此只要访问这个文件夹,就相当于访问该分区了

  • 例如:

    mount /dev/cdrom /mnt/cdrom

这个命令将/dev/cdrom设备(通常是光盘驱动器)挂载到/mnt/cdrom目录。挂载后,你可以通过访问/mnt/cdrom目录来浏览光盘上的文件和目录。  也就是说,执行这个命令后,光盘上的内容就可以通过 /mnt/cdrom 目录访问了

mkdir

用于创建新目录(也称为文件夹),mkdir 是 “make directory” 的缩写。

  • 例如:
    /mnt/cdrom

这个命令创建了一个名为cdrom的目录在/mnt/路径下。/mnt通常用于挂载临时文件系统,比如光盘、USB设备或其他类型的文件系统。

cp

用于复制文件或目录,cp 是 “copy” 的缩写。

  • 例如:

    cp -R /mnt/cdrom/stage /

这个命令将/mnt/cdrom/stage目录及其所有子目录和文件递归地(由于-R选项recursive)复制到根目录/下。这意味着stage目录及其内容会被复制到Linux系统的根目录。

cd

cd(Change Directory)命令是用于切换当前工作目录的命令行工具。它允许用户从当前所在的目录(文件夹)移动到另一个目录,从而方便地访问和管理文件系统中的不同部分。

  • 切换到指定目录:cd [路径]

如果[路径]是相对路径,那么它会基于当前工作目录来解析目标目录。如果是绝对路径,则会从根目录(/)开始解析。

  • 切换到上一级目录:cd …
    使用两个点(.)表示当前目录,而一个点(…)表示上一级目录。
    因此,要切换到上一级目录,可以执行:cd …
  • 切换到当前用户的主目录:  
    第一种方法:cd ~
    还可以使用cd命令不带任何参数:cd
  • 切换到之前的工作目录:  
      在一些shell中(如bash),你可以使用-参数来切换到之前的工作目录:cd -

tar

tar命令主要用于文件的打包和解压。 tar的原意是“tape archive”,即磁带归档,虽然现在的存储设备早已不是磁带,但这个命令的名字却保留了下来。  
  tar命令的基本语法是:  
  tar [选项] [文件名]  
  其中,常用的选项有:  
  c:创建一个新的归档文件。  
  x:从归档文件中提取文件。  
  v:在解压或打包时显示详细信息(verbose模式)。  
  f:指定归档文件的名称。注意,f选项后面必须紧跟文件名,不能有空格。  
  z:通过gzip进行压缩或解压。  
  j:通过bzip2进行压缩或解压。  
  J:通过xz进行压缩或解压。

  • 例如:  
     
      tar czvf archive.tar.gz dir1 dir2  
      
      这里,c代表创建归档,z代表gzip压缩,v代表显示详细信息,f后面跟归档文件名。
      意思是:创建一个名为archive.tar.gz的gzip压缩归档文件,并将dir1和dir2目录打包进去,注意,选项的顺序并不固定。

dnf

DNF(Dandified YUM)是一个用于管理Fedora、CentOS和RHEL(Red Hat Enterprise Linux)等基于RPM的Linux发行版上的软件包的包管理器工具。  
  
DNF命令提供了许多选项来定制其行为,以下是一些常用选项:  
 
  -y :自动回答所有问题为是(yes),无需用户确认。  
  -v 或 --verbose:详细模式,增加输出信息。 
  --version:显示DNF的版本信息。  
  安装httpd软件包:sudo dnf install httpd  
  更新系统上已安装的所有软件包:sudo dnf update  
  删除nginx软件包:sudo dnf remove nginx  
  搜索与mysql相关的所有软件包:sudo dnf search mysql  
  列出已安装的软件包:sudo dnf list installed

vim

Vim是一个强大的文本编辑器,下面是它的常用操作:  
  插入模式  
  在Vim中,默认的普通模式下,你是不能直接输入文本的。要进入插入模式以输入文本,你可以键入i,在当前光标位置插入文本。  
  Esc键  
  在插入模式下,你可能需要随时退出到普通模式以执行其他命令。这时,你只需要按下Esc键即可。Esc键是Vim中用于从插入模式或其他非普通模式(如命令行模式)退回到普通模式的快捷键。  
  搜索  
  在Vim中搜索文本非常简单。你只需进入普通模式(如果你不在的话),然后输入以下命令:  
  /搜索词:按下/键后输入你要搜索的文本,然后按Enter键进行搜索。Vim会高亮显示所有匹配项,你可以通过n键跳转到下一个匹配项,N键跳转到上一个匹配项。  
  保存退出  
  完成编辑后,你可能想要保存你的更改并退出Vim。这时,你可以进入命令行模式(通过按下:键),然后输入以下命令::wq或:x保存文件并退出Vim。ZZ:这是一个快速保存并退出的快捷方式,它等同于:wq或:x命令。  
  不保存退出  
  如果你对所做的更改不满意,想要放弃这些更改并退出Vim,你可以使用以下命令:  
  :q!:不保存文件并退出Vim。注意,这个命令会覆盖之前可能执行过的任何保存操作,因此需谨慎使用。

systemctl

systemctl 是 systemd 的主要命令行工具,用于管理系统服务。通过 systemctl,管理员可以方便地启动、停止、重启、重载、查询服务状态等。
  
以下是一些常用的 systemctl 命令:

systemctl status [service-name]:查看指定服务的状态。  	      
systemctl start [service-name]:启动指定服务。 
systemctl stop [service-name]:停止指定服务。  
systemctl restart [service-name]:重启指定服务。  
systemctl reload [service-name]:重新加载指定服务的配置文件。  	
systemctl enable [service-name]:设置指定服务开机自启。  		
systemctl disable [service-name]:禁止指定服务开机自启。  		
systemctl mask [service-name]:
屏蔽服务,使其无法被任何方式启动(比 disable 作用更强)。  
systemctl unmask [service-name]:解除对服务的屏蔽。
  • 例如:
         
      systemctl stop mysqld:
        
      这个命令用于停止MySQL服务。当你执行这个命令时,MySQL数据库服务器会停止运行,不再接受新的连接或处理查询。
        
      systemctl status mysqld:
        
      这个命令用于查看MySQL服务的状态。当你执行这个命令时,你会看到MySQL服务是否正在运行、最近一次启动或停止的时间、以及任何相关的错误或警告信息。这对于诊断服务问题或检查服务是否正常运行非常有用。  
      systemctl 命令是 Linux 系统中用于管理系统服务的命令行工具,与 systemd 系统紧密相关。systemd 是现代 Linux 系统广泛采用的系统配置和服务管理程序,通常作为 init 进程(PID=1)运行,负责执行系统的初始化任务以及管理服务。  
      
      mysql 后面加上 d 变成了 mysqld,这是因为 mysqld 是 MySQL 数据库服务器的守护进程(daemon)的名称。  
      在 Unix 和 Linux 系统中,守护进程(daemon)通常是在后台运行并提供某种服务的程序。mysqld 就是 MySQL 数据库服务的守护进程,它负责监听网络上的连接请求,处理客户端的 SQL 查询,管理数据库文件等。  
      当你运行 mysqld 命令时,你实际上是在启动 MySQL 数据库服务。这个服务会在后台运行,等待客户端的连接请求,并执行相应的数据库操作。  
      简而言之,mysqld 是服务器端的守护进程,负责提供数据库服务;而 mysql 是客户端工具,用于与服务器进行交互。

cat

cat (concatenate),意为“连接”或“串联”。听起来像是与文件连接有关,但cat命令的主要用途是查看文件内容,用于读取文件内容并将其输出到标准输出设备(通常是屏幕)。

  • 例如:

    cat /var/log/mysqld.log | grep temporary
     
      /var/log/mysqld.log 是MySQL服务器日志文件的常见路径。这个日志文件记录了MySQL服务器的运行信息,包括错误、警告、启动和关闭信息等。  
      因此,cat /var/log/mysqld.log 命令的作用是读取MySQL服务器日志文件的内容,并将其显示在屏幕上。 
      |(管道符) 
      管道符 | 是Linux和Unix系统中一个非常重要的概念,它用于将一个命令的输出作为另一个命令的输入。  
      在这个命令中,cat /var/log/mysqld.log 的输出(即MySQL日志文件的内容)被作为 grep temporary 命令的输入。  
      grep temporary  
      grep 是一个强大的文本搜索工具,用于搜索包含指定模式的字符串的行,并将这些行输出到标准输出设备。  
      在这个例子中,grep 命令搜索包含字符串 “temporary” 的行。  因此,grep temporary 命令的作用是从输入中(在这个例子中是MySQL日志文件的内容)搜索所有包含 “temporary” 字符串的行,并将这些行显示在屏幕上。

  • 综合解释  
      将这两部分命令通过管道符 | 连接起来,就形成了一个完整的命令组合 cat /var/log/mysqld.log | grep temporary。这个命令组合的作用是:  
      首先,使用 cat 命令读取MySQL服务器的日志文件 /var/log/mysqld.log 的内容。  
      然后,将 cat 命令的输出(即日志文件的内容)通过管道符 | 传递给 grep 命令。  
      最后,grep 命令搜索这些内容中所有包含 “temporary” 字符串的行,并将这些行显示在屏幕上。  
      这样,用户就可以快速地从MySQL日志文件中找到与 “temporary” 相关的所有信息,而无需手动浏览整个日志文件。

scp

scp(Secure Copy Protocol)是一种用于在本地和远程之间安全传输文件的命令行工具。它基于SSH(Secure Shell)协议,因此可以确保数据传输过程中的安全性和完整性。scp 广泛用于 Linux/Unix 系统以及支持 SSH 的其他操作系统中。

  • 例如:

    scp -r /stage/ root@server2:/

这个命令使用 scp(Secure Copy Protocol)工具来递归地(-r 选项)复制本地文件系统中的 /stage/ 目录到远程服务器 server2 的根目录(/)下。


总结

本文主要以举例的方式解释了一些基础且常见Linux命令,有助于Linux初学者更快地理解一些常见命令。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值