当前位置: 首页 > news >正文

Linux基础命令解释

目录

一、文件和目录操作命令

1. ls

2. cd

3. pwd

4. mkdir

5. rm

6. cp

7. mv

二、查看和编辑文件命令

1. cat

2. less

三、系统信息相关命令

四、网络相关命令

五、用户和权限管理命令


Linux是由Linus Torvalds于1991年开发的开源类Unix操作系统内核,现已成为包含内核、GNU工具链和应用程序的完整操作系统。在Linux中,命令行工具是系统管理和操作的核心。下面是一些常见且重要的Linux命令的详细解释:

一、文件和目录操作命令

1. ls

ls 是 Linux 系统中最常用的命令之一,用于列出目录内容。它能够显示文件和子目录的详细信息,并且提供了多种选项来定制输出格式。

常用选项

-l:使用长列表格式显示文件或目录的详细信息。这包括权限、链接数、所有者、组、大小(字节)、最后修改时间以及名称。

 ls -l# 例如:drwxr-xr-x. 2 用户名 组名  6 3月  28 22:25 Desktop

-a:显示所有文件,包括以.开头的隐藏文件。

 ls -a# 例如:.   .bash_history  .bash_profile  .cache   .dbus    Documents  .esd_auth  .ICEauthority  .mozilla  .mysql_history  .pki

-la-al:组合使用 -l-a,显示包括隐藏文件在内的所有文件的详细信息。

 ls -la# 例如:# drwx------. 16 itjiang itjiang 4096 4月  11 20:55 .# drwxr-xr-x.  3 root    root      21 3月  30 14:36 ..# -rw-------.  1 itjiang itjiang 1380 4月   1 22:33 .bash_history

-h:与 -l 一起使用时,以人类可读的方式显示文件大小(例如K, M, G代表KB, MB, GB)。

 ls -lh# 例如:drwxr-xr-x. 2 itjiang itjiang  6 3月  28 22:25 Desktop

-R:递归列出子目录中的内容。

 ls -R# 例如:[itjiang@jasmine ~]$ ls -R# .:# Desktop  Documents  Downloads# # ./Desktop:# # ./Documents:# # ./Downloads:

2. cd

基本语法

 cd [目录路径]

如果未提供任何参数,则默认行为取决于所使用的 shell。例如,在大多数情况下,不带参数执行 cd 会将我们带到用户的主目录(即 ~)。

常用示例

  • 进入指定目录:要进入某个特定目录,请输入该目录的完整或相对路径。

 cd /path/to/directory# [itjiang@jasmine /]$ cd /home/itjiang/Desktop# [itjiang@jasmine Desktop]$ 

或者,如果我们已经在 /path/to/ 目录下,可以直接使用相对路径:

 cd directory# [itjiang@jasmine ~]$ cd Desktop# [itjiang@jasmine Desktop]$ 
  • 返回用户主目录:直接输入 cd 或者 cd ~ 可以回到用户的主目录。

  • 返回上一级目录:使用 cd .. 来移动到当前目录的上一级目录。

  • 返回前一个工作目录:使用 - 参数可以快速返回到之前的工作目录。

特殊符号

  • ~:代表当前用户的主目录。

  • .:表示当前目录。

  • ..:表示当前目录的父目录。

3. pwd

pwd 是 "print working directory" 的缩写,是 Linux 系统中的一个基本命令。它用于显示当前终端会话所在的完整路径(即当前工作目录的绝对路径)。无论我们在文件系统的哪个位置,使用 pwd 命令都可以让我们知道自己的确切位置。

基本用法

只需在命令行中输入 pwd 并按下回车键,执行后,该命令将输出当前工作目录的完整路径。

 pwd# 例如:# [itjiang@jasmine ~]$ pwd# /home/itjiang

工作原理

绝对路径:pwd 输出的是从根目录 / 开始到当前所在目录的完整路径。

符号链接处理

  • 默认情况下,如果当前目录是一个符号链接(快捷方式),pwd 会显示实际的工作路径,而不是符号链接指向的路径。

  • 使用 -P 参数可以强制 pwd 显示物理路径而非逻辑路径(即跟随符号链接到达的实际目录)。

 pwd -P
  • 相反地,使用 -L 参数可以让 pwd 显示逻辑路径(符号链接本身)。

 pwd -L

4. mkdir

mkdir 是 "make directory" 的缩写,是 Linux 系统中用于创建新目录(文件夹)的命令。它是一个非常基础但重要的命令,对于管理和组织文件系统中的数据至关重要。

基本语法

 mkdir [选项] 目录名...

可以同时创建一个或多个目录。如果尝试创建的目录已经存在,mkdir 默认情况下会报错,除非使用了特定选项来改变这种行为。

常用选项

  • 无选项:最基本的用法,直接指定要创建的目录名称。

 mkdir new_directory
  • -p 或 --parents:递归创建所需的父目录(如果它们不存在)。这对于创建深层嵌套的目录结构特别有用,因为它避免了必须手动创建每个级别的目录。

 mkdir -p path/to/new/directory

如果路径中的任何父目录不存在,此命令将自动创建它们。

  • -m 或 --mode:设置新建目录的权限模式。默认情况下,新目录的权限由用户的 umask 决定,但是我们可以使用 -m 来覆盖这一行为。

 mkdir -m 755 new_directory

上述命令创建了一个权限为 rwxr-xr-x(755) 的目录。

示例

  • 创建单个目录:

mkdir projects
  • 创建多个目录:

mkdir documents downloads music
  • 递归创建目录:

mkdir -p project_1/sub_project/data

这条命令不仅创建了 project_1 目录,还在其中创建了 sub_project 和 data 子目录。

  • 创建目录并设定权限:

mkdir -m 700 private_folder

创建一个只有所有者可读、写和执行的私有目录。

5. rm

rm 是 "remove" 的缩写,是 Linux 系统中用于删除文件或目录的命令。它是一个功能强大但需要谨慎使用的命令,因为一旦文件或目录被删除,通常无法恢复(除非使用专门的数据恢复工具)。

基本语法

 rm [选项] 文件名...

rm 可以用来删除一个或多个文件,或者通过特定选项删除目录。

常用选项

  • 无选项:直接删除指定的文件。
 rm file.txt
  • -r--recursive:递归删除目录及其内容。如果要删除一个非空目录,必须使用此选项。
 rm -r directory_name
  • -f--force:强制删除文件或目录,不提示任何确认信息。即使文件不存在也不会报错。
 rm -f file.txt
  • -i:交互模式,在删除每个文件之前提示用户确认。
 rm -i file.txt

输出示例:

 rm: remove regular file 'file.txt'? y
  • -v--verbose:显示详细的删除过程。
 rm -v file.txt

输出示例:

 removed 'file.txt'
  • -rf-fr:这是 rm 最常用的组合之一,表示递归且强制删除目录及其所有内容,不会提示确认。
 rm -rf directory_name

注意:此命令非常危险!误用可能导致重要数据丢失,请务必小心。

6. cp

cp 命令在 Linux 系统中用于复制文件或目录。它是日常操作中非常基础且重要的命令之一,允许用户将一个或多个文件或目录复制到另一个位置。

基本语法

 cp [选项] 源文件 目标文件cp [选项] 源文件... 目录

“源文件”指的是我们想要复制的文件或目录,“目标文件”则是指复制后的新文件或目录的位置和名称。

常用选项

  • 无选项:最基本的用法,复制单个文件到指定位置。
 cp file.txt /path/to/directory/
  • -i--interactive:在覆盖已存在文件前提示确认。
 cp -i file.txt /path/to/directory/
  • -r-R--recursive:递归地复制目录及其内容(包括子目录和文件)。
 cp -r directory/ /path/to/new_directory/
  • -p--preserve:保留文件的属性(如时间戳、模式、所有权等)。默认情况下会保存修改时间和访问时间。
 cp -p file.txt /path/to/directory/
  • -v--verbose:显示详细的处理过程信息。
 cp -v file.txt /path/to/directory/
  • -f--force:若目标文件无法打开,则删除它并尝试再次复制。
 cp -f file.txt /path/to/directory/
  • -u--update:仅当源文件比目标文件新或目标文件不存在时才进行复制。
 cp -u file.txt /path/to/directory/

7. mv

mv 命令在 Linux 系统中用于移动文件或目录,也可以用来重命名文件或目录。它是一个非常基础且重要的命令,适用于文件和目录的管理操作。

基本语法

 mv [选项] 源文件 目标文件mv [选项] 源文件... 目录

“源文件”指的是我们想要移动或重命名的文件或目录,“目标文件”则是指移动后的新位置或重命名后的名称。

常用选项

  • 无选项:最基本的用法,用于移动文件或重命名。
 mv oldname.txt newname.txt    # 重命名mv file.txt /path/to/directory/   # 移动文件到指定目录
  • -i--interactive:在覆盖已存在文件前提示确认。
 mv -i file.txt /path/to/directory/
  • -f--force:如果目标文件无法打开,则删除它并尝试再次移动(强制覆盖)。
 mv -f file.txt /path/to/directory/
  • -n--no-clobber:不要覆盖已存在的文件。
 mv -n file.txt /path/to/directory/
  • -v--verbose:显示详细的处理过程信息。
 mv -v file.txt /path/to/directory/
  • -u--update:仅当源文件比目标文件新或目标文件不存在时才进行移动。
 mv -u file.txt /path/to/directory/

二、查看和编辑文件命令

1. cat

cat 是 "concatenate" 的缩写,是 Linux 系统中用于查看、创建或合并文件内容的命令。它是一个非常基础且多功能的工具,常用于快速查看文件内容或将多个文件的内容输出到标准输出(通常是终端)。

基本语法

 cat [选项] 文件名...

常用功能

  • 查看文件内容: 使用 cat 可以快速查看文本文件的内容。
 cat file.txt
  • 合并多个文件: 将多个文件的内容连接在一起并输出到标准输出。
 cat file1.txt file2.txt > combined.txt

这会将 file1.txtfile2.txt 的内容合并,并保存到 combined.txt 中。

  • 创建文件: 使用重定向符号 >>> 可以通过 cat 创建新文件或追加内容。

     1. 创建新文件:

 cat > new_file.txt

      输入内容后按 Ctrl+D 保存退出。

     2. 追加内容到现有文件:

 cat >> existing_file.txt
  • 复制文件内容: 使用重定向可以将一个文件的内容复制到另一个文件。
 cat source.txt > destination.txt
  • 显示行号: 使用 -n 选项为每一行添加行号。
 cat -n file.txt
  • 显示非空行的行号: 使用 -b 选项只为非空行添加行号。
 cat -b file.txt
  • 显示特殊字符: 使用 -A 选项显示文件中的特殊字符(如换行符 \n 显示为 $,制表符 \t 显示为 ^I)。
 cat -A file.txt
  • 压缩空白行: 使用 -s 选项可以压缩连续的空白行,使其只显示一行空白。
 cat -s file.txt

2. less

less 是一个在 Linux 系统中用于查看文本文件内容的命令行工具。与 cat 不同,less 允许用户分页查看文件,这意味着你可以逐屏浏览大型文件,而不需要一次性将整个文件的内容输出到终端。此外,less 还支持向前和向后滚动、搜索文本等功能,使其成为处理大型日志文件或程序输出的理想选择。

基本语法

 less [选项] 文件名...

主要功能及特点

  • 分页显示less 以分页的形式显示文件内容,允许用户通过上下箭头键或者空格键(向前翻页)和 b 键(向后翻页)来浏览文件。

  • 双向滚动:不仅可以向下滚动,还可以向上滚动查看之前的内容。

  • 搜索功能可以使用 / 后跟关键词进行向前搜索,使用 ? 加关键词进行向后搜索。按 n 查找下一个匹配项,N 查找上一个匹配项。

  • 标记位置可以使用 m 后跟任意字母来标记当前位置,之后可以通过 ' 后跟相同的字母快速跳转到该位置。

  • 退出查看:在 less 中,按下 q 可以退出查看模式返回到命令行。

常用选项

  • -N:显示每行的行号。
 less -N file.txt
  • -S--chop-long-lines:当一行过长时,不换行显示而是裁剪超出屏幕宽度的部分,可以通过左右箭头查看完整行内容。
 less -S file.txt
  • -i:忽略大小写进行搜索(除非搜索串包含大写字母)。
 less -i file.txt
  • -F:如果文件内容能一屏显示完,则直接退出并显示文件内容;否则进入less的交互模式。
 less -F file.txt
  • -X:禁用发送终端初始化和结束字符串,这可能有助于避免清除屏幕上的内容。
 less -X file.txt

三、系统信息相关命令

tophtop(如果已安装):实时显示系统的进程和资源使用情况。

df:报告文件系统的磁盘空间使用情况。

  • -h:以人类可读的形式显示大小(如KB, MB, GB)。

du:估算文件空间使用情况。

  • -h:同上,以更易读的方式显示大小。

  • -s:总结每个参数所占的总块数。

四、网络相关命令

ping:测试网络连接。

  • ping hostname_or_ip:发送ICMP ECHO_REQUEST包到网络主机。

ifconfigip:配置网络接口。

  • ip addr show:显示网络接口的IP地址信息。

netstat:显示网络连接、路由表、接口统计信息等。

  • -tuln:显示所有监听的TCP端口。

五、用户和权限管理命令

useradd, userdel:添加或删除用户。

passwd:更改用户密码。

sudo:以另一个用户的身份执行程序,默认为root用户。


http://www.mrgr.cn/news/98071.html

相关文章:

  • mysql相关面试题
  • 银行业务发展历史
  • python相关面试题
  • C_内存 内存地址概念
  • C++学习之ORACLE③
  • 【LaTeX】
  • 《系统分析师-浏览试卷—总结》
  • C++指针(二)
  • c++知识点1
  • 使用 VcXsrv 在 Windows 10 上运行 Ubuntu 图形界面
  • 第八天 开始Unity Shader的学习之Blinn-Phong光照模型
  • Java 集合框架面经
  • 链式多分支规则树模型的应用
  • Harmony实战之简易计算器
  • 图像颜色空间对比(Opencv)
  • C++动态分配内存知识点!
  • (自用)蓝桥杯准备(需要写的基础)
  • 基于数字水印的公文流转系统设计与实现
  • 【图像分类】【深度学习】图像分类评价指标
  • 订阅不到topic排查方式