Linux文件命令简介 (linux file命令)

Linux操作系统是一种自由和开放源代码的操作系统,已被广泛应用于高性能计算、服务器、虚拟化和嵌入式系统等领域。作为开发和运维人员,必须掌握Linux中的一些常用的文件命令。

下面将简要介绍一些常用的文件命令及其用法。

1. pwd

该命令用于显示当前目录的路径。在Linux中,目录结构是树状结构,从根目录开始,有一个根节点,然后向下延伸到其他的所有子目录。该命令的输出即为当前工作目录的完整路径。

2. ls

该命令用于列出目录中的所有内容。该命令的基本语法为“ls [options] [file]”。其中,options参数用于指定不同的选项,如-l(详细信息)、-a(包括隐藏文件)、-d(只列出目录本身)等。

3. cd

该命令用于切换当前目录。该命令的基本语法为“cd [directory]”。其中,directory参数可以是相对路径或绝对路径。若只输入cd,则会切换到当前用户的主目录。

4. mkdir

该命令用于创建新目录。该命令的基本语法为“mkdir [options] directory”。其中,options参数用于指定不同的选项,如-m(设置目录权限)等。

5. rmdir

该命令用于删除空目录。该命令的基本语法为“rmdir [options] directory”。其中,options参数用于指定不同的选项,如-p(删除目录及其所有父目录)等。

6. cp

该命令用于复制文件或目录。该命令的基本语法为“cp [options] source_file destination_file”。其中,options参数用于指定不同的选项,如-r(递归复制,不仅复制目标文件,还复制目标文件及其下的所有子目录与文件)、-p(保留文件的权限、时间戳等)等。

7. mv

该命令用于移动或重命名文件或目录。该命令的基本语法为“mv [options] source_file destination_file”。其中,options参数用于指定不同的选项,如-f(强制执行,即覆盖目标文件)等。

8. rm

该命令用于删除文件或目录。该命令的基本语法为“rm [options] file”。其中,options参数用于指定不同的选项,如-r(递归删除,不仅删除目标文件,还删除目标文件及其下的所有子目录与文件)、-f(强制执行,即不提示确认)等。

9. chmod

该命令用于改变文件或目录的权限。该命令的基本语法为“chmod [options] mode file”。其中,options参数用于指定不同的选项,如-R(递归改变权限,对目录与文件均适用)等。mode参数用于指定权限的值,其中,每个数字表示一种权限,共9种,分别为rwx(读、写、执行)。r表示只读权限、w表示可写权限、x表示可执行权限。

10. chown

该命令用于改变文件或目录的所有者和所属组。该命令的基本语法为“chown [options] owner[:group] file”。其中,options参数用于指定不同的选项,如-R(递归改变所有者和所属组)等。owner参数用于指定新的所有者用户名,group参数用于指定新的所属组名。

以上是Linux文件命令的简要介绍。掌握这些命令可以更方便地完成日常操作。当然,Linux中还有很多其他的命令,需要不断学习和实践,才能更好地掌握Linux操作系统。

相关问题拓展阅读:

linux常用命令有哪些

Linux各种shell命令功能都很强大,常用的shell有bash、csh等。

linux 常用命令有:

pwd 命令

使用 pwd 命令找出您所在的当前工作目录(

文件夹

)的路径。该命令将返回一个绝对(完整)路径,该路径基本上是所有以 / 开头的目录的路径。

绝对路径

的一个示例是 /home/username。

cd 命令

要浏览 Linux 文件和目录,请使用 cd 命令。根据您所在的当前工作目录,它需要目录的完整路径或名称。假设您位于 /home/username / Documents 中,并且想要转到 Documents 的子目录 Photos。为此,只需键入以下命令:cd Photos。另一种情况是,如果您想切换到一个全新的目录,例如 /home/username / Movies。在这种情况下,您必须输入 cd,然后输入目录的绝对路径:cd /home/username / Movies。有一些

快捷方式

可帮助您快速导航:cd ..(带有两个点)将一个目录向上移动 cd 直接转到主文件夹 cd-(带

连字符

)移动到上一个目录附带说明一下,Linux 的 shell 是区分大小写的。因此,您必须准确输入名称的目录。

ls 命令

LS 命令用于查看目录的内容。默认情况下,此命令将显示当前工作目录的内容。如果要查看其他目录的内容,请键入 ls,然后键入目录的路径。例如,输入 LS / 家 /

用户名

/ 文档查看的内容的文件。您可以使用 ls 命令使用以下变体:ls -R 还将列出子目录中的所有文件 ls -a 将显示隐藏的文件 ls -al 将列出文件和目录以及详细信息,例如权限,大小,所有者等。

cat 命令

cat(连接的缩写)是 Linux 中最常用的命令之一。它用于在标准输出(sdout)上列出文件的内容。要运行此命令,请键入 cat,然后输入文件名及其

扩展名

。例如:cat file.txt。以下是使用 cat 命令的其他方法:cat> filename 创建一个新文件 cat filename1 filename2> filename3 连接两个文件(1 和 2),并将它们的输出存储在新文件中(3)将文件转换为大写或小写使用,cat filename | tr a-z A-Z >output.txt

cp 命令

使用 cp 命令将文件从当前目录复制到另一个目录。例如,命令 cp scenery.jpg/home /username/ Pictures 将在您的 Pictures 目录中创建一个 Scene.jpg 副本(来自当前目录)。

mv 命令

mv 命令的主要用途是移动文件,尽管它也可以用于重命名文件。mv 中的参数类似于 cp 命令。您需要输入 mv,文件名和目标目录。例如:mv file.txt/home /username/ Documents。

mkdir 命令

使用 mkdir 命令创建一个新目录 – 如果键入 mkdir Music,它将创建一个名为 Music 的目录。还有一些额外的 mkdir 命令:要在另一个目录中生成新目录,请使用此 Linux 基本命令 mkdir Music / Newfile 使用 p(父级)选项在两个现有目录之间创建一个目录。例如,mkdir -p Music / 2023 / Newfile 将创建新的 “2023” 文件。

rmdir 命令

如果需要删除目录,请使用 rmdir 命令。但是,rmdir 仅允许您删除空目录。

rm 命令

该 RM 命令用于删除目录以及其中的内容。如果只想删除目录(作为 rmdir 的替代方法),请使用 rm -r。注意:使用此命令时要格外小心,并仔细检查您所在的目录。这将删除所有内容,并且没有撤消操作。

touch 命令

该触摸命令允许您创建通过 Linux

命令行

新的空白文件。例如,输入 touch /home/username/Documents/Web.html 在 Documents 目录下创建一个名为 Web 的 HTML 文件。

locate 命令

您可以使用此命令来定位文件,就像 Windows 中的搜索命令一样。此外,将 – i 参数与该命令一起使用将使其不区分大小写,因此即使您不记得其确切名称,也可以搜索文件。要搜索包含两个或多个单词的文件,请使用星号(*)。例如,locate -i school * note 命令将搜索包含单词 “school” 和 “ note” 的任何文件,无论它是大写还是小写。

find 命令

在类似定位命令,使用 查找也搜索文件和目录。区别在于,您可以使用 find 命令在给定目录中查找文件。例如,find /home/-name notes.txt 命令将在主目录及其子目录中搜索名为 notes.txt 的文件。使用查找时的其他变化 是:要查找当前目录中使用的文件,请使用 find . -name notes.txt 要查找目录,请使用 /-type d -name notes. txt13. grep 命令无疑对日常使用很有帮助的另一个基本 Linux 命令是 grep。它使您可以搜索给定文件中的所有文本。为了说明这一点,grep blue notepad.txt 将在记事本文件中搜索单词 blue。包含搜索到的单词的行将被完整显示。

sudo 命令

该命令是 “SuperUser Do” 的缩写,使您能够执行需要管理或超级用户权限的任务。但是,建议不要将此命令用于日常使用,因为如果您做错了一些事情,很容易发生错误。

df 命令

使用 df 命令可获取有关系统磁盘空间使用情况的报告,以百分比和 KB 表示。如果要以兆字节为单位查看报告,请输入 df -m。

du 命令

如果要检查文件或目录占用了多少空间,答案是 du(磁盘使用情况)命令。但是,磁盘使用情况摘要将显示磁盘块号,而不是通常的大小格式。如果要以字节,千字节和兆字节为单位查看它,请在命令行中添加 – h 参数。

head 命令

所述头命令用于查看任何文本文件的之一行。默认情况下,它将显示前十行,但是您可以根据自己的喜好更改此数字。例如,如果只想显示前五行,则键入 head -n 5 filename.ext。

tail 命令

该命令与 head 命令具有相似的功能,但是 tail 命令将显示文本文件的最后十行,而不是显示之一行。例如,tail -n filename.ext。

diff 命令

diff 命令是差异的缩写,diff 命令逐行比较两个文件的内容。分析文件后,它将输出不匹配的行。程序员在需要进行程序更改时经常使用此命令,而不是重写整个

源代码

。此命令最简单的形式是 diff file1.ext file2.ext

tar 命令

该 tar 命令是最常用的命令归档多个文件到一个

压缩包

。类似于 zip 格式常见的 Linux

文件格式

,压缩是可选的。该命令具有很长的功能列表,非常复杂,例如将新文件添加到现有档案中,列出档案内容,从档案中提取内容等等。查看一些实际示例,以了解有关其他功能的更多信息。

chmod 命令

chmod 是另一个 Linux 命令,用于更改文件和目录的读取,写入和执行权限。由于此命令相当复杂,因此您可以阅读完整的教程以正确执行它。

chown 命令

在 Linux 中,所有文件均归特定用户所有。该 CHOWN 命令使您可以更改或文件的所有权给指定的用户名。例如,chown linuxuser2 file.ext 将使 linuxuser2 成为 file.ext 的所有者。

Jobs 命令

jobs 命令将显示所有当前作业及其状态。作业基本上是由 Shell 启动的进程。

kill 命令

如果您的程序无响应,则可以使用 kill 命令手动终止它。它将向运行异常的应用发送特定信号,并指示该应用自行终止。您总共可以使用 64 个信号,但是人们通常只使用两个信号:SIGTERM(15) — 请求程序停止运行,并给它一些时间来保存其所有进度。如果在输入 kill 命令时未指定信号,则将使用此信号。SIGKILL(9) – 强制程序立即停止。未保存的进度将丢失。除了知道信号之外,您还需要知道要杀死的程序的进程标识号(PID)。如果您不知道 PID,只需运行命令 ps ux。在知道您要使用什么信号以及程序的 PID 之后,输入以下语法:kill PID.

ping 命令

使用 ping 命令检查与服务器的连接状态。例如,只需输入 ping google.com,该命令将检查您是否能够连接到 Google 并测量响应时间。

wget 命令

Linux 命令行非常有用 – 您甚至可以在 wget 命令的帮助下从 Internet 下载文件。为此,只需键入 wget,然后输入下载链接即可。

uname 命令

该 UNAME 命令,短期对于 Unix 名,将打印您的 Linux 系统,如计算机名称的详细信息,操作系统,内核,等等。

top 命令

作为与 Windows 中的

任务管理器

等效的终端,top 命令将显示正在运行的进程的列表以及每个进程使用的 CPU 数量。监视系统资源使用情况非常有用,尤其是知道哪个进程由于消耗太多资源而需要终止时。

history 命令

当您使用 Linux 一段时间后,您会很快注意到每天可以运行数百个命令。因此,如果您想查看之前输入的命令,运行历史记录命令特别有用。

man 命令

对某些 Linux 命令的功能感到困惑吗?不用担心,您可以使用 man 命令从 Linux 的外壳程序中轻松地学习如何使用它们。例如,输入 man tail 将显示 tail 命令的手动指令。

echo 命令

此命令用于将一些数据移到文件中。例如,如果要将文本 “Hello,

我的名字

叫 John” 添加到名为 name.txt 的文件中,则可以键入 echo Hello, my name is John >> name.txt

zip,unzip 命令

使用 zip 命令将文件压缩到 zip 归档文件中,然后使用 unzip 命令从 zip 归档文件中提取压缩文件。

hostname 命令

如果您想知道主机 / 网络的名称,只需键入 hostname。在末尾添加 – I 将显示您的网络的 IP 地址。

useradd,userdel 命令

前言

第1章 Linux命令行简介 / 1

1.1Linux命令行概述 / 1

1.2在Linux命令行下查看命令帮助 / 4

1.3Linux shutdown reboot halt / 9

关机:

shutdown -h now

halt

init 0

第2章 文件和目录操作命令 / 13

2.1pwd:显示当前所在的位置 / 13

2.2cd:切换目录 / 16

2.3tree:以树形结构显示目录下的内容 / 18

2.4mkdir:创建目录 / 22

2.5touch:创建空文件或改变文件的时间戳属性 / 27

2.6ls:显示目录下的内容及相关属性信息 / 30

2.7cp:复制文件或目录 / 39

2.8mv:移动或重命名文件 / 42

2.9rm:删除文件或目录 / 45

2.10rmdir:删除空目录 / 48

2.11ln:硬链接与软链接 / 49

2.12readlink:查看符号链接文件的内容 / 54

2.13find:查找目录下的文件 / 55

2.14xargs:将标准输入转换成命令行参数 / 68

2.15rename:重命名文件 / 71

2.16basename:显示文件名或目录名 / 72

2.17dirname:显示文件或目录路径 / 72

2.18chattr:改变文件的扩展属性 / 73

2.19lsattr:查看文件扩展属性 / 75

2.20file:显示文件的类型 / 76

2.21md5sum:计算和校验文件的MD5值 / 77

2.22chown:改变文件或目录的用户和用户组 / 80

2.23chmod:改变文件或目录权限 / 81

2.24chgrp:更改文件用户组 / 85

2.25umask:显示或设置权限掩码 / 86

2.26老男孩从新手成为技术大牛的心法 / 90

第3章 文件过滤及内容编辑处理命令 / 91

3.1cat:合并文件或查看文件内容 / 91

3.2tac:反向显示文件内容 / 103

3.3more:分页显示文件内容 / 104

3.4less:分页显示文件内容 / 107

3.5head:显示文件内容头部 / 109

3.6tail:显示文件内容尾部 / 111

3.7tailf:跟踪日志文件 / 114

3.8cut:从文本中提取一段文字并输出 / 115

3.9split:分割文件 / 117

3.10paste:合并文件 / 118

3.11sort:文本排序 / 123

3.12join:按两个文件的相同字段合并 / 127

3.13uniq:去除重复行 / 129

3.14wc:统计文件的行数、单词数或字节数 / 131

3.15iconv:转换文件的编码格式 / 133

3.16dos2unix:将DOS格式文件转换成UNIX格式 / 134

3.17diff:比较两个文件的不同 / 135

3.18vimdiff:可视化比较工具 / 138

3.19rev:反向输出文件内容 / 139

3.20tr:替换或删除字符 / 140

3.21od:按不同进制显示文件 / 143

3.22tee:多重定向 / 145

3.23vi/vim:纯文本编辑器 / 147

3.24老男孩逆袭思想:做Linux运维的多个好处 / 152

第4章 文本处理三剑客 / 153

4.1grep:文本过滤工具 / 153

4.2sed:字符流编辑器 / 159

4.3awk基础入门 / 165

第5章 Linux信息显示与搜索文件命令 / 176

5.1uname:显示系统信息 / 176

5.2hostname:显示或设置系统的主机名 / 178

5.3dmesg:系统启动异常诊断 / 179

5.4stat:显示文件或文件系统状态 / 181

5.5du:统计磁盘空间使用情况 / 183

5.6date:显示与设置系统时间 / 186

5.7echo:显示一行文本 / 190

5.8watch:监视命令执行情况 / 193

5.9which:显示命令的全路径 / 195

5.10whereis:显示命令及其相关文件全路径 / 196

5.11locate:快速定位文件路径 / 197

5.12updatedb:更新mlocate数据库 / 199

5.13老男孩逆袭思想:新手在工作中如何问问题不会被鄙视 / 200

第6章 文件备份与压缩命令 / 201

6.1tar:打包备份 / 201

6.2gzip:压缩或解压文件 / 208

6.3zip:打包和压缩文件 / 211

6.4unzip:解压zip文件 / 212

6.5scp:远程文件复制 / 214

6.6rsync:文件同步工具 / 216

6.7老男孩逆袭思想:新手如何高效地提问 / 220

第7章 Linux用户管理及用户信息查询命令 / 222

7.1 useradd:创建用户 / 222

7.2usermod:修改用户信息 / 227

7.3userdel:删除用户 / 229

7.4groupadd:创建新的用户组 / 230

7.5groupdel:删除用户组 / 231

7.6passwd:修改用户密码 / 232

7.7chage:修改用户密码有效期 / 237

7.8chpasswd:批量更新用户密码 / 238

7.9su:切换用户 / 240

7.10visudo:编辑sudoers文件 / 242

7.11sudo:以另一个用户身份执行命令 / 244

7.12id:显示用户与用户组的信息 / 248

7.13w:显示已登录用户信息 / 249

7.14who:显示已登录用户信息 / 250

7.15users:显示已登录用户 / 252

7.16whoami:显示当前登录的用户名 / 253

7.17last:显示用户登录列表 / 253

7.18lastb:显示用户登录失败的记录 / 254

7.19lastlog:显示所有用户的最近登录记录 / 255

第8章 Linux磁盘与文件系统管理命令 / 257

8.1fdisk:磁盘分区工具 / 257

8.2partprobe:更新内核的硬盘分区表信息 / 265

8.3tune2fs:调整ext2/ext3/ext4文件系统参数 / 266

8.4parted:磁盘分区工具 / 268

8.5mkfs:创建Linux文件系统 / 272

8.6dumpe2fs:导出ext2/ext3/ext4文件系统信息 / 274

8.7resize2fs:调整ext2/ext3/ext4文件系统大小 / 275

8.8fsck:检查并修复Linux文件系统 / 278

8.9dd:转换或复制文件 / 281

8.10mount:挂载文件系统 / 284

8.11umount:卸载文件系统 / 288

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

8.13mkswap:创建交换分区 / 293

8.14swapon:激活交换分区 / 294

8.15swapoff:关闭交换分区 / 295

8.16sync:刷新文件系统缓冲区 / 296

第9章 Linux进程管理命令 / 298

9.1ps:查看进程 / 298

9.2pstree:显示进程状态树 / 305

9.3pgrep:查找匹配条件的进程 / 306

9.4kill:终止进程 / 307

9.5killall:通过进程名终止进程 / 310

9.6pkill:通过进程名终止进程 / 311

9.7top:实时显示系统中各个进程的资源占用状况 / 313

9.8nice:调整程序运行时的优先级 / 320

9.9renice:调整运行中的进程的优先级 / 323

9.10nohup:用户退出系统进程继续工作 / 324

9.11strace:跟踪进程的系统调用 / 325

9.12ltrace:跟踪进程调用库函数 / 332

9.13runlevel:输出当前运行级别 / 334

9.14init:初始化Linux进程 / 335

9.15service:管理系统服务 / 335

第10章 Linux网络管理命令 / 338

10.1ifconfig:配置或显示网络接口信息 / 338

10.2ifup:激活网络接口 / 343

ifup eth0

10.3ifdown:禁用网络接口 / 343

ifdown eth0

service network restart(/etc/init.d/network restart) 激活整个网络,所有网卡。

10.4route:显示或管理路由表 / 344

10.5arp:管理系统的arp缓存 / 350

10.6ip:网络配置工具 / 351

10.7netstat:查看网络状态 / 358

10.8ss:查看网络状态 / 362

10.:测试主机之间网络的连通性 / 363

10.10traceroute:追踪数据传输路由状况 / 366

10.11arping:发送arp请求 / 367

10.12telnet:远程登录主机 / 369

10.13nc:多功能网络工具 / 370

10.14ssh:安全地远程登录主机 / 373

10.15wget:命令行下载工具 / 376

10.16mailq:显示邮件传输队列 / 379

10.17mail:发送和接收邮件 / 381

10.18nslookup:域名查询工具 / 386

10.19dig:域名查询工具 / 389

10.20host:域名查询工具 / 393

10.21nmap:网络探测工具和安全/端口扫描器 / 394

10.22tcpdump:监听网络流量 / 398

第11章 Linux系统管理命令 / 407

11.1lsof:查看进程打开的文件 / 407

11.2uptime:显示系统的运行时间及负载 / 411

11.3free:查看系统内存信息 / 411

11.4iftop:动态显示网络接口流量信息 / 413

11.5vmstat:虚拟内存统计 / 415

11.6mpstat:CPU信息统计 / 419

11.7iostat:I/O信息统计 / 420

11.8iotop:动态显示磁盘I/O统计信息 / 423

11.9sar:收集系统信息 / 425

11.10chkconfig:管理开机服务 / 430

11.11ntsysv:管理开机服务 / 433

11.12 setup:系统管理工具 / 434

11.13ethtool:查询网卡参数 / 436

11.14mii-tool:管理网络接口的状态 / 437

11.19rpm:RPM包管理器 / 443

11.20yum:自动化RPM包管理工具 / 446

top命令

第12章 Linux系统常用内置命令 / 450

12.1Linux内置命令概述 / 450

12.2Linux内置命令简介 / 450

12.3Linux常用内置命令实例 / 452

Linux运维人员必会的120个命令

Linux相关使用介绍

Linux命令分为内部命令(shell自带的命令)和外部命令(不是shell自带的命令,由用户安装),怎么鉴别是内部命令和外部命令呢?可以通过type命令来鉴别

什么是shell呢?shell是一个程序,常用的有bash shell,平时我们通过用户名和密码登录到linux,其实就是登录到bash shell程序,通过bash shell来操作linux内核

命令执行流程

那岂不是说使用外部命令效率会很慢吗?

其实一点都不慢,它会去PATH环境变量设置的一堆目录中查找

cd is a shell builtin 表示内部命令

ifconfig is hashed (/usr/in/ifconfig) 表示外部命令

cd命令切换文件夹

现在我们cd /usr/in

通过cat命令查看文件内容

通过cat ifconfig来查看ifconfig,发现是乱码文件

file命令查看文件类型

输入file ifconfig

从输出信息可以看出它是一个二进制可执行文件

whereis命令查看文件位置

find / -name jdk

echo命令用户打印信息,相当于java中的system.out.println

可以使用回车查看下一行、空格查看下一页、q退出

一般使用man查看外部命令,help查看内部命令

查看linux下的应用和应用的进程号

当我们在这个窗口中输入kill的话,另外一个正在编辑文件的进程就会退出

在前面我们已经讲过,bash shell程序在执行命令的一个过程及原理,对于外部命令,它会去PATH这个环境变量中查找执行命令所在的路径,当然在去PATH中寻找之前会先去hash表中查找这个命令有没有执行过,执行过的话会记录在hash表中,则此次查找只需从hash表中就可以很方便的找到

查看分区信息 -h 表示文件大小后面会显示文件大小

查看文件的使用情况

使用man ls 查看ls命令的相关介绍

-a:可以查看隐藏文件

-l:以长列表的形式展示文件列表信息

之一位 -:表示文件,d表示文件夹,b表示块设备文件,c表示字符设备文件,p表示命令管道文件,s表示套接字文件, 从第二位开始往后数九位表示属限(每三位一组 rwx:读、写、执行),第11位表示的点表示分隔符,点后面的数字表示文件有几个硬连接,之一个root代表属主名,第二个root代表这个之一个root所在的组织,接下来的5表示文件大小,5后面的日期表示文件最后一次修改的时间, 1.txt代表的文件或文件夹的名称

小结:

切换文件目录

cd 文件路径

cd:切换到家目录

cd ~:回到家目录(也就是家目录)

cd ..:回到上一级目录

创建目录

mkdir 目录名

mkdir -p 目录名,级联创建目录

cp 被拷贝的文件(可以是路径加文件名) 拷贝到哪个位置

复制目录使用

cp -r 被拷贝的目录 目标位置

移动命令

mv 被移动的文件 目标位置+目标文件名

rm 文件名(此中方式的删除需要再输入 yes)

rm -f 文件名,无提示直接删除

rm -rf 文件夹

ln命令默认创建的是硬连接

ln profile a:将a硬连接到profile文件上,他们底层共用一个文件,删除他们之中任何一个

对另外一个没有影响,同时你也可以使用 ll -i命令查看文件编号

ln -s profile a:将a软连接到profile文件,当你访问a的时候会去访问profile,profile再访问底层文件,当将profile删除了之后a就无法访问了

一致时间、创建新文本

touch 已存在的文件:会将文件的访问时间、更新时间、改变时间(即上面stat中介绍的三个时间)变成一致

touch 不存在的文件:会创建一个新的文本

cat命令查看文件内容

cat 1.txt:查看单个文件内容

cat 1.txt 2.txt:查看多个文件

more 1.txt:以分页的形式查看文件内容,按空格:下一页,回车:下一行(注意它不能回看,回看的话只能用鼠标回轮)

less 1.txt:使用空格下一页, b看上一页, 回车看下一行

注意less的话会把整个文件内容加载到内存,如果文件比较大的话,建议使用more命令查看

head命令默认查看文件前10行内容, head 1.txt

head -5 1.txt:查看文件前5行的内容

tail命令默认查看文件后10行的内容 tail 1.txt

tail -5 1.txt:查看文件后5行内容

tail -f 1.txt:实时查看文件增量内容

cat b.txt | head -3:管道左边的命令会以输出流的形式交给管道右边的命令,管道右边以输入流的形式接收并且拼到命令的右边

注意:ls -l 不能接受前面的输出流,这个怎么办呢?可以通过xargs命令

vi文本编辑器末行模式的操作

set nu(number的缩写): 设置行号

set nonu(nonumber的缩写):取消行号

set readonly:设置为只读

n:往下查找

N:往上查找

n:往上查找

N:往下查找

一般我们会在/etc/profile文件中设置一些环境变量,但是在设置的时候可能没有记住目录,这时候我们可以使用如下方式

效果

格式 :s/str1/str2/gi

/ : 临近s命令的之一个字符边界字符,也可以是 @或#

g : 一行内全部替换

i : 忽略大小写

范围

n:行号

. :当前光标行

+n :偏移n行

%:全文

全部删除 1,$d

删除前三行

删除倒数第2行

光标挪到最后一行 按下小写的p

效果图

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特殊字符、及这些特定字符的组合组成一个”规则字符串”,这个”规则字符串”用来表达对字符串的一种过滤逻辑。

\ :转义字符

. :匹配任意单个字符

:匹配中括号中任意字符

:匹配中括号中任意非1和2的字符

:匹配中括号中任意a~k中的一个字符

^ :行首

$ :行尾

:单词首尾边界(匹配单词abc)

| :连接操作符

(,) : 选择操作符

\n :反向引用

? :匹配0到1次

在Linux中通过grep命令使用正则表达式来匹配信息

f :选择显示的列

s :不显示没有分隔符的行

d :自定义分隔符

n :按数值排序

r :倒序

t :自定义分隔符

K :选择排序列

u :合并相同行

f :忽略大小写

sed:行编辑器,以行为单位进行处理,可以将数据进行替换、删除、新增、选取等特定工作

sed ‘Command’ file …

-n :静默模式,不再默认显示模式空间(内存)中的内容

-i :直接修改原文件

-e SCRIPT :可以同时执行多个脚本

-f /PATH/TO/SED_SCRIPT

-r :表示使用扩展正则表达式

d :删除符合条件的行

p :显示符号条件的行

a \string :在指定的行后面追加新行,内容为string

\n :可以用于换行

i \string :在指定的行前面添加新行,内容为string

c :取代,c的后面可以接字符串

s /pattern/string/修饰符:查找并替换。默认只替换每行中之一次被模式匹配到的字符串

g :行内全局替换

i :忽略字符大小写

s///:s###,s@@@

(),\1,\2

sed “2p” ctxt

但是在执行下面的操作的时候文本中的内容都显示出来了,它的原理是,打印匹配的行,以及文本中所有的内容

注意:它删的是内存中的数据,而不是目标文件

sed -i “3d” ctxt

它的原理是先把内存中的第3行数据删除,然后再把内存中的数据写回原文件,这时原文件中的第三行就没有了

使用变量的形式

awk是一个强大的文本分析工具。

相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。

简单来说awk就是把文件逐行的读入,(空格,制表符)为默认分隔符将每行切片,切开的部分再进行各种分析处理。

awk -F ‘{pattern + action}’ {filenames}

支持自定义分隔符,默认是以空格分隔的

支持正则表达式匹配

支持自定义变量,数组 a a map(key)

支持内置变量

ARGC 命令行参数个数

ARGV 命令行参数排列

ENVIRON 支持队列中系统环境变量的使用

FILENAME awk浏览的文件名

FNR 浏览文件的记录数

FS 设置输入域分隔符,等价于命令行 -F选项

NF 浏览记录的域的个数

NR 已读的记录数

OFS 输出域分隔符

ORS 输出记录分隔符

RS 控制记录分隔符

支持函数

print、split、substr、sub、gsub

支持流程控制语句

if、while、do/while、for、break、continue

练习题

passwd文件内容解读:

passwd文件中每行由7个字段组成,字段与字段之间由:分隔,之一个字段代表用户名,第二个字段表示用户对应的加密后的密码,第三个字段表示userId,第四个字段表示groupId,第五个字段表示对用户的描述,第六个字段表示用户的家目录,第七个字段表示的是这个用户默认使用的shell

其中$0表示整行

统计报表:合计每人1月工资, 0:manager,1:worker

将awk后面的内容封装到一个文件中(封装的脚本要遵循一定的格式)

linux file命令的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux file命令,Linux文件命令简介,linux常用命令有哪些,Linux相关使用介绍的信息别忘了在本站进行查找喔。


数据运维技术 » Linux文件命令简介 (linux file命令)