Linux是一种开源的、类Unix操作系统,最初由林纳斯·托瓦兹(Linus Torvalds)在1991年首次发布。它遵循自由软件和开源开发的原则,任何人都可以自由地使用、修改和分发Linux。Linux操作系统的内核(Kernel)是整个系统的核心,负责管理计算机的硬件资源,包括处理器、内存、输入输出设备等
目录
一、Linux命令
1.1 Linux命令格式
1.1.1 Linux基础命令格式
命令名称 命令参数 命令对象
注意:命令名称、命令参数和命令对象之间用空格间隔,严格区分大小写。
- 命令名称:相当于语法中的动词,表达想要完成的事情
- 命令参数:对命令进行调整
命令参数有长格式和短格式两种,简单来说就是“全写和略写”,如man --help是长格式,man -h是短格式,使用功能一样。
1.1.2 查看cpu型号
cat /proc/cpuinfo
1.1.3 查看内存大小
free -h
更详细的信息,包括硬盘的物理尺寸使用:
fdisk -l
1.1.4 查看内核版本
uname -r
uname -a
注意:此命令需要在管理员权限下执行
1.2 文件/目录。文件夹的增删改查
1.2.1 文件类型
1.普通/常规文件:
- 包括可读文件、二进制文件、图像文件、压缩文件等
2.特殊文件:
- 块文件(block):用于与驱动设备程序通信的设备文件
- 字符设备文件(Character):提供非缓冲的串行接口,与设备逐字节通信
- 符号链接(Symbolic link):指向其他文件的引用
- 命名管道(Named pipe):用于进程间通信的文件
- 套接字(socket):用于进程间通信,尤其是在不同系统或网络之间
3.目录文件:
- 是一种特殊文件,既可以包含普通文件也可以包含其他特殊文件,构成了Linux的文件系统结构。可以使用ls查看当前文件
各目录的作用:
- /bin :存放系统常⽤的⼆进制可执⾏⽂件,例如常⻅的命令 ls 、 cp 等。
- /boot :存放启动 Linux 系统所需的核⼼⽂件,包括内核和启动引导程序(如 grub )的配置⽂件。
- /dev :存放设备⽂件,Linux 将外部设备(如硬盘、光驱等)作为⽂件来管理。
- /etc :存放系统配置⽂件和⼦⽬录,例如⽤户账号信息、启动脚本、系统服务配置等。
- /home :⽤户的主⽬录,每个⽤户都有⾃⼰的⼦⽬录,存放个⼈数据和配置。
- /lib 和 /lib64 :存放系统最基本的共享库⽂件, lib64 ⽤于 64 位系统。
- /media 和 /mnt :⽤于挂载外部设备或临时挂载⽂件系统的⽬录。
- /opt :⽤于存放第三⽅软件包或额外安装的软件。
- /proc :虚拟⽂件系统,包含当前内核运⾏状态的各种信息,系统进程信息等。
- /root :超级⽤户(root)的主⽬录。
- /run :存放系统启动以来的信息,通常为临时⽂件系统,系统重启后会清空。
- /sbin :存放系统管理员使⽤的系统管理程序,普通⽤户⼀般⽆权限使⽤。
- /srv :存放服务启动后需要提取的数据。
- /sys :存放系统设备的⽂件信息,是内核对象⼦系统的直观反映。
- /tmp :存放临时⽂件的⽬录,系统或⽤户程序运⾏过程中会在此放置临时⽂件,系统重启后可能会被清空。
- /usr :存放⽤户级别的应⽤程序和⽂件,包括命令、库⽂件、⽂档等。
- /var :存放经常变化的⽂件,如⽇志⽂件、邮件队列、缓存⽂件等。
不同颜色的含义:
在 Linux 的 ls 命令输出中,不同的颜⾊表示不同类型的⽂件或⽬录,具体如下:
- 蓝⾊:表示⽬录(下一层还有东西)。
- 绿⾊:表示可执⾏⽂件。
- 浅蓝⾊:表示符号链接(软链接)。
- 红⾊:表示压缩⽂件或归档⽂件。
- ⻩⾊带⿊⾊背景:表示设备⽂件或套接字⽂件。
注意:
在 Linux 系统中,某些⽬录(如/etc 、 /bin 、 /sbin 、 /usr/bin 、 /usr/sbin 、 /var 等)⾮常重要,误删或随意更改可能会导致系统⽆法正常运⾏或⽆法启动。这些⽬录包含了系统的核⼼⽂件和配置⽂件,需要特别注意⼩⼼处理。
1.2.2 cd命令简介
cd命令用于改变当前工作目录,即从当前目录切换到指定的目录
目录路径:
- 相对路径:从当前目录开始,逐级定位到目标目录,如: cd subdir ,表示进入当前目录下的subdir子目录
- 绝对路径:从根目录开始的完整路径。例如:cd /home/user,表示直接切换到/home/user目录
cd [选项] 目标目录
- 目标目录:要切换的目录名称,可以是相对路径或绝对路径
常见参数:
1. -P :物理路径模式。如果⽬标⽬录包含符号链接, cd 会直接切换到符号链接指向的实际⽬录。
- 示例:如果 dirlink 是指向 /path/to/dir 的符号链接,执⾏ cd -P dirlink后,⽬录会切换到 /path/to/dir 。
2. -L :逻辑路径模式。如果⽬标⽬录包含符号链接, cd 会切换到符号链接本身的路径,⽽不是它指向的⽬标⽬录。
- 示例:如果 dirlink 是指向 /path/to/dir 的符号链接,执⾏ cd -L dirlink后,⽬录会显示为 dirlink ⽽不是 /path/to/dir 。
3. ~ :切换到当前⽤户的主⽬录。
- 示例: cd ~ 将你切换到 /home/username 。
4. - :切换到上⼀次所在的⽬录。
- 示例:如果你当前在 /home/user/docs ⽬录,⽽上⼀次所在的⽬录是 /var/log ,执⾏ cd - 将切换回 /var/log 。
5. .. :切换到当前⽬录的⽗⽬录(上⼀级⽬录)。
- 示例: cd .. 将你从 /home/user/docs 切换到 /home/user 。
6. ../.. :切换到当前⽬录的上两级⽬录。
- 示例: cd ../.. 将你从 /home/user/docs 切换到 /home 。
[root@localhost Desktop]# cd ~ //切换到当前用户主目录
[root@localhost ~]# pwd //打印当前工作目录的绝对路径
/root //这表明当前是root用户,且当前以及切换到了root用户的主目录
[root@localhost ~]# cd / //切换到根目录
[root@localhost /]# ls //列出目录内容
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
[root@localhost /]# cd home //切换到home
[root@localhost home]# ls //列出home目录下的内容,通常这里会包含系统中所有非root用户的主目录
allen
//注意:管理员的家目录在root,其他普通用户的家目录都在home
[root@localhost Desktop]# cd .. //从根切换到管理员的桌面
[root@localhost ~]# cd Desktop //切换到上一级
[root@localhost Desktop]# cd / //切换到根目录
[root@localhost /]# cd - //切换到上一次路径
/root/Desktop
[root@localhost Desktop]# cd ../.. //从桌面切换上两级目录。到根
[root@localhost /]# ^C
[root@localhost /]#
1.2.3 ls命令简介
ls 命令⽤于列出指定⽬录中的⽂件和⽬录,以及它们的属性信息。在默认情况下, ls命令会列出当前⽬录的内容。
ls [参数] [目标文件或目录]
在Linux中⽂件名颜⾊不同,代表⽂件类型不⼀样,具体如下:
- 浅蓝⾊:表示链接⽂件;
- 灰⾊:表示其他⽂件;
- 绿⾊:表示可执⾏⽂件;
- 红⾊:表示压缩⽂件;
- 蓝⾊:表示⽬录;
- 红⾊闪烁:表示链接的⽂件有问题;
- ⻩⾊:表示设备⽂件,包括block、char、fifo。
⽬标⽂件或⽬录:你想要查看的⽂件或⽬录名称。如果没有指定, ls 会列出当前⼯作⽬录的内容
常见参数:
1. -a :列出所有⽂件和⽬录,包括隐藏⽂件(隐藏⽂件以 . 开头)。
- 示例: ls -a 显示包括隐藏⽂件在内的所有⽂件和⽬录。
2. -A :列出所有⽂件和⽬录,但不包括当前⽬录( . )和⽗⽬录( .. )。
- 示例: ls -A 显示隐藏⽂件,但排除了 . 和 .. 。
3. -l :使⽤⻓格式列出⽂件,显示详细信息,包括权限、所有者、⽂件⼤⼩、修改时间等。
- 示例: ls -l 显示⽂件的详细信息。
4. -t :根据⽂件的修改时间排序,最近修改的⽂件排在前⾯。
- 示例: ls -lt 结合 -l 和 -t ,显示详细信息并按时间排序。
5. -S :根据⽂件⼤⼩排序,⽂件由⼤到⼩排列。
- 示例: ls -lS 结合 -l 和 -S ,显示详细信息并按⽂件⼤⼩排序。
6. -R :递归列出⽬录下的所有内容,包括⼦⽬录及其内容。
- 示例: ls -R 显示当前⽬录及其所有⼦⽬录中的⽂件。
7. -h :以⼈类可读的⽅式显示⽂件⼤⼩(例如 KB, MB, GB),通常与 -l 参数结合使⽤。
- 示例: ls -lh 显示详细信息,并以⼈类易读的格式显示⽂件⼤⼩。
1.标准用法:
[root@localhost /]# ls
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
2.列出所有文件,包含隐藏文件
[root@localhost /]# ls -a
. bin dev home lib64 mnt proc run srv tmp var
.. boot etc lib media opt root sbin sys usr
3.列出所有文件,包含隐藏文件,除了. ..
[root@localhost /]# ls -A
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
4.列出所有文件,使用长格式
[root@localhost /]# ls -l
total 28
lrwxrwxrwx. 1 root root 7 Jan 13 2022 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 Jul 17 2023 boot
drwxr-xr-x. 20 root root 3320 Aug 30 10:02 dev
drwxr-xr-x. 145 root root 8192 Sep 4 15:26 etc
drwxr-xr-x. 3 root root 19 Jan 13 2022 home
lrwxrwxrwx. 1 root root 7 Jan 13 2022 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Jan 13 2022 lib64 -> usr/lib64
drwxr-xr-x. 2 root root 6 Apr 11 2018 media
drwxr-xr-x. 3 root root 18 Jul 17 2023 mnt
drwxr-xr-x. 3 root root 16 Jan 13 2022 opt
dr-xr-xr-x. 225 root root 0 Aug 30 10:01 proc
dr-xr-x---. 15 root root 4096 Sep 4 10:25 root
drwxr-xr-x. 41 root root 1200 Sep 4 16:36 run
lrwxrwxrwx. 1 root root 8 Jan 13 2022 sbin -> usr/sbin
drwxr-xr-x. 2 root root 6 Apr 11 2018 srv
dr-xr-xr-x. 13 root root 0 Aug 30 10:02 sys
drwxrwxrwt. 19 root root 4096 Sep 4 15:32 tmp
drwxr-xr-x. 13 root root 155 Jan 13 2022 usr
drwxr-xr-x. 21 root root 4096 Jan 13 2022 var
第⼀位 :d 代表⽂件类型为⽬录 , - 代表普通⽂件 l 符号链接
第 2 3 4 位 owner 所属主的权限 r只读 w写 x执⾏ ; 没有的权限 以-代替
第 5 6 7 位 group 所属组 的权限
第 8 9 10 住 other 其他⼈ 的权限
注意 : root 拥有最⾼权限
5 数字 ⽂件个数 , 如果是普通⽂件 数字位1 如果查看的⽬标⽬录 ,代表⽬录下⽂件 的个数
root 所属主 / 拥有者
root 所属组
4096 ⽂件⼤⼩
Jul 17 2003 最后的修改时间
boot 名字
5.列出想要查看的文件路径
[root@localhost Desktop]# pwd
/root/Desktop
6.查看当前目录下所有名称s开头的
[root@localhost tools]# ls s*
sublime_text_3_build_3211_x64.tar.bz2
sublime_text_3:
changelog.txt plugin_host sublime_text
crash_reporter python3.3.zip sublime_text.desktop
Icon sublime_plugin.py
Packages sublime.py
7.按照文件大小排序
[root@localhost tools]# ls -lS
total 63108
-rw-r--r--. 1 root root 22973527 Jul 14 2023 Python-3.7.3.tgz
-rw-r--r--. 1 root root 13677324 Jul 14 2023 sublime_text_3_build_3211_x64.tar.bz2
-rw-r--r--. 1 root root 10377460 Jul 14 2023 apache-tomcat-8.5.56.tar.gz
-rw-r--r--. 1 root root 9022294 Jul 14 2023 flash-player-npapi-32.0.0.156-release.x86_64.rpm
-rw-r--r--. 1 root root 6593633 Jul 14 2023 httpd-2.2.15.tar.gz
-rw-r--r--. 1 root root 1079369 Jul 14 2023 FW-IDS-iptables-Flowchart-2017-03-30.png
-rw-r--r--. 1 root root 802956 Jul 14 2023 nginx-1.6.0.tar.gz
-rw-r--r--. 1 root root 29848 Jul 14 2023 FluffyMcAwesome-A-6.4.0-11.r19335.x86_64.rpm
-rw-r--r--. 1 root root 29792 Jul 14 2023 FluffyMcAwesome-B-6.4.0-11.r19335.x86_64.rpm
-rw-r--r--. 1 root root 4940 Jul 14 2023 man.config
drwxr-xr-x. 19 501 501 4096 Jul 14 2023 Python-3.7.3
-rw-r--r--. 1 root root 692 Jul 14 2023 vim练习题.txt
drwxr-xr-x. 4 root root 208 Oct 1 2019 sublime_text_3
drwxr-xr-x. 2 root root 132 Jul 14 2023 cms
8.按照文件大小,反向查看(默认规则是从大到小)
[root@localhost tools]# ls -lSr
total 63108
drwxr-xr-x. 2 root root 132 Jul 14 2023 cms
drwxr-xr-x. 4 root root 208 Oct 1 2019 sublime_text_3
-rw-r--r--. 1 root root 692 Jul 14 2023 vim练习题.txt
drwxr-xr-x. 19 501 501 4096 Jul 14 2023 Python-3.7.3
-rw-r--r--. 1 root root 4940 Jul 14 2023 man.config
-rw-r--r--. 1 root root 29792 Jul 14 2023 FluffyMcAwesome-B-6.4.0-11.r19335.x86_64.rpm
-rw-r--r--. 1 root root 29848 Jul 14 2023 FluffyMcAwesome-A-6.4.0-11.r19335.x86_64.rpm
-rw-r--r--. 1 root root 802956 Jul 14 2023 nginx-1.6.0.tar.gz
-rw-r--r--. 1 root root 1079369 Jul 14 2023 FW-IDS-iptables-Flowchart-2017-03-30.png
-rw-r--r--. 1 root root 6593633 Jul 14 2023 httpd-2.2.15.tar.gz
-rw-r--r--. 1 root root 9022294 Jul 14 2023 flash-player-npapi-32.0.0.156-release.x86_64.rpm
-rw-r--r--. 1 root root 10377460 Jul 14 2023 apache-tomcat-8.5.56.tar.gz
-rw-r--r--. 1 root root 13677324 Jul 14 2023 sublime_text_3_build_3211_x64.tar.bz2
-rw-r--r--. 1 root root 22973527 Jul 14 2023 Python-3.7.3.tgz
9.单独查看某个文件大小
[root@localhost /]# ls -lh /root/Desktop/tools/1
total 0 //为了实验新建了个空夹,没有内容,仅供实验
1.2.4 mkdir命令简介
mkdir用于创建一个或多个目录
mkidr [选项] 目录名
常用选项:
- -p :递归创建多级⽬录。如果上级⽬录不存在,会⼀并创建。例如, mkdir -p /path/to/directory 会在 /path/to 不存在时同时创建。
- -m :在创建⽬录的同时,指定⽬录的权限。例如, mkdir -m 755 directory_name 会以755 权限创建⽬录。
- -v :显示创建过程的详细信息。每创建⼀个⽬录都会显示⼀条消息。
[root@localhost ~]# cd Desktop
[root@localhost Desktop]# mkdir AAA //在桌面创建AAA
[root@localhost Desktop]# mkdir -v BBB //创建BBB并显示创建过程
mkdir: created directory ‘BBB’
[root@localhost Desktop]# mkdir -m 700 CCC //创建⽬录CCC , 设置权限 所属主 拥有读写执⾏权限 , 所属组 其他⼈ 没有任何权限
[root@localhost Desktop]# ls -l
total 4
drwxr-xr-x. 2 root root 6 Sep 4 17:28 AAA
drwxr-xr-x. 2 root root 6 Sep 4 17:28 BBB
drwx------. 2 root root 6 Sep 4 17:28 CCC
drwxr-xr-x. 6 root root 4096 Sep 4 17:12 tools
[root@localhost Desktop]# mkdir DDD EEE FFF //一次创建多个目录,平级关系
[root@[root@cjc Desktop]# mkdir -p AAA/aaa/bbb Desktop]# mkdir -p AAA/aaa/bbb //在AAA下创建aaa,在aaa下创建bbb
[root@localhost Desktop]# ls -a
. 1 BBB DDD FFF vmware-tools-distrib
.. AAA CCC EEE VMwareTools-10.3.21-14772444.tar.gz
[root@cjc Desktop]# ls -al AAA
total 12
drwxr-xr-x 3 root root 4096 Sep 26 15:52 .
drwxr-xr-x. 9 root root 4096 Sep 26 15:51 ..
drwxr-xr-x 3 root root 4096 Sep 26 15:52 aaa
1.2.5 touch命令简介
touch 主要作⽤有两个:
- 创建新的空⽂件:如果指定的⽂件不存在, touch 命令会创建⼀个新的空⽂件。
- 修改已有⽂件的时间属性:如果指定的⽂件已经存在, touch 命令会修改该⽂件的时间属性
时间属性:
- mtime(修改时间):⽂件内容最后⼀次被修改的时间。
- atime(访问时间):⽂件最后⼀次被读取的时间。
- ctime(状态改变时间):⽂件的权限或属性最后⼀次被修改的时间。
常用选项:
- -a :只修改访问时间(atime)。
- -m :只修改修改时间(mtime)。
- -d :同时修改访问时间和修改时间。
- -c :不创建新⽂件(如果⽂件不存在,则不创建新⽂件,也不报错)。
- -t :指定时间,格式为 [[CC]YY]MMDDhhmm[.ss] ,⽤于设置⽂件的访问时间和修改时间。
注意事项:
修改⽂件的时间属性时,⽤户必须是⽂件的所有者,或者拥有写权限。
在 Linux 系统中, ctime (Change Time,状态改变时间)是⽆法直接通过⽤户命令进⾏修改的。 ctime 是⼀个⽂件属性,表示⽂件的元数据(如权限、所有者、链接数等)最后⼀次被修改的时间。
每当以下操作发⽣时, ctime 会⾃动更新:
- a. 修改⽂件的权限(例如使⽤ chmod )。
- b. 修改⽂件的所有者(例如使⽤ chown )。
- c. 修改⽂件的链接(例如创建或删除硬链接)。
- d. 修改⽂件的⼤⼩(例如写⼊或截断⽂件)。
ctime 是由内核⾃动维护的,⽤户⽆法⼿动设置或修改它。即使使⽤ touch 命令,也只能修改atime (访问时间)和mtime (修改时间),⽽ ctime 会因为 touch 命令导致⽂件元数据发⽣变化(如 mtime 的变化)⽽⾃动更新
[root@localhost Desktop]# touch test //新建空文件
[root@localhost Desktop]# ls
test tools
[root@localhost Desktop]# touch file{1..5} //批量创建多个文件
[root@localhost Desktop]# ls
file1 file2 file3 file4 file5 test tools
[root@localhost Desktop]# stat file1 //查看时间属性
File: ‘file1’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 68790046 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2024-09-04 17:44:11.775074985 +0800
Modify: 2024-09-04 17:44:11.775074985 +0800
Change: 2024-09-04 17:44:11.775074985 +0800
Birth: -
1.2.6 cat命令简介
主要⽤于查看⽂件的内容,特别适合查看内容较少的⽂件。它的基本功能是将⽂件内容输出到终端屏幕上
cat [选项] 文件名
常见选项:
- -n :显示⾏号(空⾏也会计算在内)。
- -s :合并多余的空⾏,多个空⾏只显示为⼀⾏。
- -b :显示⾏号,但不包括空⾏。
- -E :在每⾏的末尾显示 $ 符号,这样可以清楚地看到⾏尾。
- -T :将⽂件中的制表符(Tab)显示为 ^I 。
快捷操作:
- Ctrl + s :停⽌屏幕滚动。
- Ctrl + q :恢复屏幕滚动。
- Ctrl + c :中断命令执⾏并退出。
[root@localhost Desktop]# cat file //基本用法
hhhhhhhh
hhhhh
qqqqq
11111
111
22222
[root@localhost Desktop]# cat -n file //显示编号
1 hhhhhhhh
2 hhhhh
3 qqqqq
4 11111
5 111
6 22222
[root@localhost Desktop]# cat -s file //合并空行
hhhhhhhh
hhhhh
qqqqq
11111
111
22222
[root@localhost Desktop]# cat /etc/passwd //查看所有用户的信息
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
……
[root@localhost Desktop]# cat /etc/shadow //查看用户的密码
root:$6$1gq8PHf//slNT/T8$eFD2seKDZreiBsihskqzIty0X2jRS6jf0k/PGsXPzCTLddt/LpJyUtehlHgLHwC4Re62WM.HQjIY4SdI.jJ4y1::0:99999:7:::
bin:*:17632:0:99999:7:::
daemon:*:17632:0:99999:7:::
……
[root@localhost Desktop]# cat /dev/null > /root/Desktop/file //删除文件内容但不删除文件本身
[root@localhost Desktop]# cat file
[root@localhost Desktop]#
1.2.7 tac命令简述
tac 命令是 cat 命令的反向版本,⽤于以反序查看⽂件的内容。它的作⽤是将⽂件的内容从最⼀⾏开始向第⼀⾏显示,即将⽂件内容逆序输出
tac [选项] 文件名
常见选项:
- -b :在⾏前⽽不是⾏后添加分隔符。
- -r :将分隔符作为正则表达式进⾏解析,⽽不是简单的字符串。
- -s :指定⼀个字符串作为⾏的分隔符,⽽不是默认的换⾏符。
tac 命令⾮常适合⽤于需要查看⽇志⽂件的最后⼏⾏内容的情况,尤其是当最新的内容往往是最重要的
1.2.8 more命令简述
⽤于查看较⼤⽂件的内容,特别适合⽤于⼀次⽆法完全显示的⽂件。它能够分⻚显示⽂件内容,便于⽤户逐⻚浏览
more [选项] 文件名
功能描述:
- 在屏幕下⽅显示百分⽐,提示当前已经阅读的内容占整个⽂件的百分⽐。
- 使⽤空格键可以逐⻚翻阅⽂件内容。
- 使⽤回⻋键可以逐⾏翻阅⽂件内容
常见选项:
- -c :指定⾏数显示。
- -d :显示⽂件内容,之前会清屏,并附加百分⽐。
- -p :先清屏再显示内容。
操作快捷键:
- 空格键:向下翻⼀⻚。
- 回⻋键:向下翻⼀⾏。
- b:返回上⼀⻚。
- q:退出查看。
基础用法:more /etc/shadow
每5行显示: more -c -5 /etc/shadow
从第三行显示: more +2 file
显示文件内容,每5行显示一次,之后清屏:more -p -5 file
1.2.9 head命令简介
查看⽂件的前⼏⾏内容,这在需要快速浏览⽂件开头的部分时⾮常有⽤。
常见选项:
- -n :指定显示的⾏数。例如, -n 10 显示⽂件的前 10 ⾏。
- -c :指定显示的字符数。例如, -c 50 显示⽂件的前 50 个字符。
- -v :显示⽂件名或头部信息,通常在处理多个⽂件时使⽤
显示前两行内容:head -n 2 kwj
显示10个字符: head -c 10 kwj
显示头部信息和前两行内容: head -v -n 2 kwj
1.2.10 tail命令概述
⽤于查看⽂件的最后⼏⾏内容,它的功能和 head 命令类似,但 tail 显示的是⽂件末尾的部分。这个命令特别适⽤于监控⽇志⽂件等需要实时查看⽂件末尾内容的场景
常见选项:
- -n :指定显示的⾏数。例如, -n 10 显示⽂件的最后 10 ⾏。
- -f :实时跟踪⽂件的变化,尤其适⽤于查看⽇志⽂件的实时更新内容。
- -c :指定显示的字符数。例如, -c 50 显示⽂件的最后 50 个字符。
1.2.11 stat命令概述
⽤于查看⽂件的存储细节信息,包括⽂件的时间属性( atime 、 mtime 、 ctime )等。它提供了⽐ ls 命令更详细的信息
常见选项:
- -f :显示⽂件系统的信息,⽽不是⽂件的详细信息。
- -t :简洁格式显示信息。
- --format :⾃定义输出格式。
查看文件详细信息:stat file
查看文件系统信息:stat -f file
简介格式显示文件信息:stat -t file
1.2.12 cp命令概述
⽤于在 Linux 系统中复制⽂件或⽬录。它是⼀个⾮常常⽤的命令,⽤于将⽂件从⼀个地⽅复制到另⼀个地⽅。
功能描述:
- 如果⽬标⽂件为⽬录,将源⽂件复制到⽬录内。
- 如果⽬标⽂件为普通⽂件,系统会询问是否覆盖该⽂件。
- 如果⽬标⽂件不存在,则直接复制。
常见选项:
- -f :强制执⾏覆盖。如果⽬标⽂件已经存在, cp 命令将不询问⽽直接覆盖它。
- -i :交互式复制。如果⽬标⽂件已存在,在覆盖前会提示⽤户确认。
- -r 或 -R :递归复制⽬录及其内容。使⽤此选项可以复制整个⽬录树。
将AAA ⽬录 复制到 /tmp/:cp -R AAA /tmp/
再将AAA 复制到 /tmp/ (强制执⾏ ,没有提示):cp -Rf /tmp/AAA /root/Desktop/AAA
复制多个⽂件:cp file1 file2 CCC
dir1 所有内容 , 都复制到dir2
[root@cjc Desktop]# mkdir dir1
[root@cjc Desktop]# touch dir1/file1
[root@cjc Desktop]# mkdir dir2
[root@cjc Desktop]# cp -r dir1/ dir2/
1.2.13 mv命令概述
⽤于在 Linux 系统中移动⽂件或⽬录、剪切⽂件或⽬录、以及重命名⽂件或⽬录。本质上, mv 命令的所有操作都是重命名或移动⽂件
功能描述:
- 如果⽬标路径与源路径相同, mv 命令会将源⽂件或⽬录重命名。
- 如果⽬标路径不同, mv 命令会将源⽂件或⽬录移动到⽬标路径。
常见选项:
- -i :交互模式。如果⽬标⽂件已存在,会提示⽤户确认是否覆盖。
- -f :强制模式。如果⽬标⽂件已存在, mv 命令将不询问直接覆盖。
- -b :在覆盖⽬标⽂件前,先备份被覆盖的⽂件。
- -u :只在源⽂件⽐⽬标⽂件新,或者⽬标⽂件不存在的情况下执⾏移动。
1.2.14 rm命令概述
命令⽤于删除⽂件或⽬录,是 Linux 中最常⽤的⽂件管理命令之⼀。
常见选项:
- -f :强制删除⽂件或⽬录,忽略不存在的⽂件,并且不提示确认。
- -i :在删除前进⾏提示,询问⽤户是否确认删除⽂件或⽬录。
- -r :递归删除⽬录及其内容。这个选项通常⽤于删除⽬录及其下的所有⽂件和⼦⽬录。
- -v :显示删除过程,输出删除的⽂件或⽬录的名称。
rm -rf /* 强制删除根目录下所有内容,并且显示过程,不要在真实机上使用!!!