前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全面详细的常用Linux命令汇总(1)

全面详细的常用Linux命令汇总(1)

作者头像
M.Talen
发布2024-05-22 15:47:12
780
发布2024-05-22 15:47:12
举报
文章被收录于专栏:爱吃猫的鱼BLOG爱吃猫的鱼BLOG

无论是Linux的新手还是老手,掌握一些常用命令都是必不可少的,熟练使用它们可以大大提高工作效率,成为工作中的得力助手。本文是常用Linux命令汇总系列文章的第一篇,全面详细的展示了10个与文件管理相关的命令。

一览表

序号

命令

简述

分类

1

ls

列出目录内容

文件管理

2

cd

切换目录

文件管理

3

pwd

显示当前工作目录的路径

文件管理

4

mkdir

创建新目录

文件管理

5

cp

复制文件或目录

文件管理

6

mv

移动或改名文件

文件管理

7

touch

创建空文件与修改时间戳

文件管理

8

rm

删除文件或目录

文件管理

9

ln

为文件创建快捷方式

文件管理

10

cat

显示文件内容

文件管理


1. ls命令

ls命令是英文list的缩写,用于列出指定目录的内容,能够显示文件名、文件类型、文件大小、最后修改时间等信息

语法格式

代码语言:javascript
复制
ls [参数] [文件或目录名]

常用参数

代码语言:javascript
复制
ls -a    列出包括隐藏文件的所有文件
ls -A    列出除当前目录(.)和父目录(..)所有文件和目录
ls -d    当遇到目录时列出目录本身而非目录内的文件
ls -i    显示每个文件的索引编号(inode号)
ls -l    显示文件的属性信息,包括权限、所有者、大小、创建时间等
ls -R    递归列出目录中的所有文件和子目录
ls -S    依据内容大小将文件排序显示,最大的在最前
ls -t    按修改时间排序,最新的在最前
ls -X    依据文件扩展名排序

实例

(1)列出/bin目录下的文件

代码语言:javascript
复制
ls /bin

(2)按照修改时间列出所有文件的详细信息

代码语言:javascript
复制
ls -Alt

(3)结合通配符*使用,显示目录中以a开头的文件列表

代码语言:javascript
复制
ls a*

(4)查看当前目录中某一目录的权限

代码语言:javascript
复制
ls -ld dir2

注意

  • 对于-a-A参数,ls 命令是区分大小写的

2. cd命令

cd命令是英文change directory的缩写,用于更改当前所处的工作目录,路径可以是绝对路径,也可以是相对路径

语法格式

代码语言:javascript
复制
cd 目录名

常用参数&实例

代码语言:javascript
复制
cd /root/dir1/directory    切换到绝对路径
cd dir1/directory    切换到相对路径
cd ..    切换到上级目录
cd ../..    切换到上上级目录
cd ~ 或 cd    切换到用户主目录
cd -    切换到上次访问的目录

3. pwd命令

pwd命令是英文print working directory的缩写,用于显示当前工作目录的路径,一般不需要配合任何参数去使用

语法格式

代码语言:javascript
复制
pwd

实例

显示当前工作目录的路径

代码语言:javascript
复制
pwd

4. mkdir命令

mkdir命令是英文make directories的缩写,用于创建目录文件

语法格式

代码语言:javascript
复制
mkdir [参数] 目录

常用参数

代码语言:javascript
复制
mkdir -m    创建目录的同时设置权限
mkdir -p    递归创建多级目录
mkdir -v    显示执行过程详细信息

实例

(1)建立一个目录文件

代码语言:javascript
复制
mkdir dir3

(2)创建一个新目录并赋予所有者完全权限(读、写、执行),组成员读权限和执行权限,其他用户只读权限

代码语言:javascript
复制
mkdir -m 754 dir4

(3)一次性创建多个有嵌套关系的目录文件

代码语言:javascript
复制
mkdir -p dir3/dir33/dir333

注意

  • 使用-p参数时,如果目录已经存在,命令不会报错,而是继续执行
  • 如果没有足够的权限或目录已存在,命令会失败

5. cp命令

cp命令是英文copy的缩写,用于复制文件或目录,将一个或多个文件或目录复制到指定位置

语法格式

代码语言:javascript
复制
cp [参数] 源文件或目录 目标文件或目录

常用参数

代码语言:javascript
复制
cp -a    通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容,功能等同dbR参数
cp -d    复制链接文件时,将目标文件也创建为链接文件而非普通文件,这里链接类似Windows中的快捷方式
cp -f    若目标文件已存在,则会直接覆盖,不会提示用户确认
cp -i    若目标文件已存在,对每个将要覆盖的目标文件都会提示用户确认
cp -l    用于创建硬链接,硬链接是一种指向同一文件的指针,使得多个文件名可以引用相同的数据块
cp -p    复制时保留源文件的权限、所有者和时间戳等属性信息
cp -r    复制目录时递归复制其所有子目录和文件
cp -s    用于创建符号链接(软连接),类似Windows快捷方式,是一个包含链接路径的特殊类型文件
cp -u    仅当源文件比目标文件新,或者目标文件不存在时,才进行复制
cp -v    显示执行过程详细信息

实例

(1)复制源文件到指定目录,并定义新文件的名称

代码语言:javascript
复制
cp file1 dir2/new_file

(2)复制指定的源目录,并定义新目录的名称,显示执行过程详细信息

代码语言:javascript
复制
cp -rv dir3 dir5

(3)复制指定文件时保留原始属性信息,并强制覆盖已有目录

代码语言:javascript
复制
cp -af article.md dir4

注意

可以将一个文件通过复制来覆盖一个已有文件或者复制添加到一个目录中,但无法将一个目录通过复制来覆盖一个已有目录,如果使用cp -r 目录 已有目录命令,会把目录复制添加到已有目录中

6. mv命令

mv命令是英文move的缩写,用于移动文件或目录,与cp复制命令不同,mv命令是剪切操作,只有文件位置发生了变化,而文件总个数并没有增加

语法格式

代码语言:javascript
复制
mv [参数] 源文件或目录 目标文件或目录

常用参数

代码语言:javascript
复制
mv -f    若目标文件已存在,则会直接覆盖,不会提示用户确认
mv -i    若目标文件已存在,对每个将要覆盖的目标文件都会提示用户确认
mv -n    不覆盖已存在的目标文件
mv -u    仅当源文件比目标文件新,或者目标文件不存在时,才进行复制
mv -v    显示执行过程详细信息

实例

(1)移动源文件到指定目录,并定义新文件的名称

代码语言:javascript
复制
mv file2 dir1/new_file

(2)重命名当前目录下的文件或目录的名称

代码语言:javascript
复制
mv file2 file3

注意

  • mv命令会覆盖文件,为避免误删文件,可以使用-i参数
  • 如果目标文件是一个目录,源文件会被移到此目录下,且文件名不变。如果目标文件不是目录,源文件名会变为目标文件名,并覆盖已存在的同名文件

7. touch命令

touch命令用于创建文件与修改文件或目录的时间属性,若文件存在则修改文件的访问时间和修改时间为当前时间,若文件不存在则创建一个新的空文件

语法格式

代码语言:javascript
复制
touch [参数] 文件

常用参数

代码语言:javascript
复制
touch -a    只修改文件的访问时间
touch -m    只修改文件的修改时间
touch -c    如果文件不存在,不会创建新文件
touch -d    使用字符串(YYYY-MM-DD hh:mm:ss)设定时间与日期,而不是使用当前时间
touch -t    使用时间戳(YYYYMMDDhhmmss)设定时间与日期,而不是使用当前时间

实例

(1)创建出一个指定名称的空文件

代码语言:javascript
复制
touch file4

(2)修改指定文件的修改时间

代码语言:javascript
复制
touch -md "2024-03-04 05:06:07" file1

(3)使用通配符批量修改多个文件的访问时间,并确保不创建不存在的文件

代码语言:javascript
复制
touch -ad "2024-03-04 05:06:07" file*

注意

  • 当使用-d-t参数时,确保提供的时间格式正确
  • 如果提供的文件名包含特殊字符,可能需要用引号包围起来

8. rm命令

rm命令是英文remove的缩写,用于删除文件或目录,这是一个危险的命令,如rm -rf /*会清空系统所有文件且无法恢复

语法格式

代码语言:javascript
复制
rm [参数] 文件或目录

常用参数

代码语言:javascript
复制
rm -d    仅删除无子文件的空目录
rm -f    强制删除文件,不会提示用户确认
rm -i    在删除每个文件之前都会询问用户是否确定
rm -r    递归删除目录及其全部子文件
rm -v    显示执行过程详细信息

实例

(1)强制删除指定目录及其内的全部子文件

代码语言:javascript
复制
rm -rf dir1

(2)删除当前目录下的所有文件及目录,并且每个文件删除前询问用户是否确认

代码语言:javascript
复制
rm -ri *

(3)删除系统的所有文件(不要尝试!!!)

代码语言:javascript
复制
rm -rf /*

注意

  • 谨慎使用rm命令,一般情况下删除的文件或目录无法恢复

9. ln命令

ln命令是英文link的缩写,用于为某个文件在另外一个位置建立同步的链接(硬链接)。Linux系统中的链接文件有硬链接和软链接(符号链接)两种形式,软链接相当于Windows系统中的快捷方式文件,原始文件被移动或删除后软链接文件也将无法使用;硬链接则是将文件的inode属性块进行了复制,因此把原始文件移动或删除后硬链接文件依然可以使用

语法格式

代码语言:javascript
复制
ln [参数] 源文件或目录 目标文件或目录

常用参数

代码语言:javascript
复制
ln -d    允许超级用户尝试创建指向目录的硬链接
ln -f    若目标文件已存在,则会直接覆盖,不会提示用户确认
ln -i    若目标文件已存在,对每个将要覆盖的目标文件都会提示用户确认
ln -r    根据相对位置创建软链接而非绝对路径
ln -s    创建软链接
ln -t    设置链接文件的存放目录
ln -v    显示执行过程详细信息

实例

(1)创建软链接

代码语言:javascript
复制
ln -s file1 file2

(2)创建硬链接,当目标文件存在时询问是否覆盖

代码语言:javascript
复制
ln -i file1 file2

注意

  • 目录只能创建软链接
  • 目录创建链接必须用绝对路径,使用相对路径创建会提示:符号连接的层数过多

10. cat命令

cat命令是英文concatenate的缩写,用于在终端设备上打印出文件内容,适合查看内容较少的纯文本文件,对于内容较多的文件查看后会在屏幕上快速滚屏看不清所显示的具体内容

语法格式

代码语言:javascript
复制
cat [参数] 文件

常用参数

代码语言:javascript
复制
cat -n    由1开始对所有输出的行数编号
cat -b    和-n相似,但对空白行不编号
cat -s    遇到有连续两行以上的空白行,就换为一行的空白行

实例

(1)查看指定文件的内容并显示行号

代码语言:javascript
复制
cat -n file1

(2)把文件A的非空白行内容加上行号,之后将其附加到文件B中

代码语言:javascript
复制
cat -b file2 >> file3

注意

  • cat命令默认会一次显示整个文件,如果文件过大可能会导致终端卡顿
  • cat命令可以用来创建新的空文件,但不能编辑文件
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一览表
  • 1. ls命令
  • 2. cd命令
  • 3. pwd命令
  • 4. mkdir命令
  • 5. cp命令
  • 6. mv命令
  • 7. touch命令
  • 8. rm命令
  • 9. ln命令
  • 10. cat命令
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档