一、查看命令帮助
1、查看bash内部命令帮助
[root@node13 ~]# help cd
2、命令 --help
[root@node13 ~]# cat ——help
示例如下:cat [OPTION]... [FILE]... 表明cat后面可以加上多个可选的选项以及多个可选的
文件参数
下面是对于命令的语法的一些符号的说明:
[] :表示的是可选
...: 表示的可以存在多个参数
|表示是可选的
<>:必填
{}:表示作为一个整体存在的
3、man
用来提供在线帮助,使用权限是所有用户。使用man命令可以调阅其中的帮助信息,非常方便实用。
man command
选项:-C config_file:指定配置文件man.conf,缺省值是/etc/man.conf
[root@node13 ~]# man ls
在man命令帮助信息的界面中,所包含的常用操作按键如下:
man命令的帮助信息的结构如下:
man手册的几个部分
区段1:用户指令,查看命令的帮助
区段2:系统调用,查看可被内核调用的函数的帮助
区段3:程序库调用,查看函数和函数库的帮助
区段4:设备,查看特殊文件的帮助(主要是/dev目录下的文件)
区段5:文件格式,查看配置文件的帮助
区段6:游戏,查看游戏的帮助
区段7:杂项,惯例与协议等,例如Linux文件系统、网络协议、ASCII code等等的说明
区段8:系统指令,查看系统管理员可用的命令的帮助
区段9:内核内部指令,查看内核相关文件的帮助
常用1,5,8
使用如下命令可以知道某个命令在man的哪个区段有相关帮助文档:
[root@node13 ~]# whatis man
man (7) - macros to format man pages
man (1) - an interface to the on-line reference manuals
man (1p) - display system documentation
[root@node13 ~]# man -f man
man (7) - macros to format man pages
man (1) - an interface to the on-line reference manuals
man (1p) - display system documentation
[root@node13 ~]# man 1 man
[root@node13 ~]# man 7 man
二、查看目录下的文件:ls(list)
[root@localhost ~]# ls /
bin boot dev etc home lib lib64 media mnt opt proc root run sbin
srv sys test tmp usr var
[root@localhost ~]# ls -dl /root/ 或 ls -d -l /root/
dr-xr-x---. 2 root root 203 Jun 9 15:30 /root/
ls浏览后颜色表示
-
白色:普通文件
-
蓝色:目录
-
红色:压缩包文件
-
黄色:设备文件
-
绿色:可执行文件
三、 linux文件类型和根目录结构
1、 Linux文件类型
linux一共有7种文件类型
第一列:
第一个字符:标记文件类型
2-11字符:文件的权限标识位 r w x
第二列:硬链接次数
第三列:所属用户
第四列:所属组第五列:大小
第六-八列:创建时间、修改时间
第九列:文件名
四、 从命令行管理文件
文件命名规则:
- 不能使用/来当文件名,/是用来做根的,也是用来做路径分隔符的
- 文件名不能超过255个字符
- 区分大小写file File FILE fIle
- 目录也是文件,在同一路径下,两个不同类型文件不能同名
1、区分软链接与硬链接
软链接:单独的文本文件,链接文件的数据存储区记录的是原文的路径
作用:通过当前路径能够更方便快速匹配到其他路径下的文件
应用:删除快捷方式对源文件没有影响,但是删除源文件快捷方式不能用
创建对象:可以对文本文件,目录文件创建,也可以跨文件系统创
硬链接:多个文件名指向同一个inode节点号,对应只是一个文件
作用:防止误删除(将文件名进行备份)
应用:一个文件默认硬链接次数最小为1,彻底删除一个硬链接,需要确保硬链接次数 为零
linux目录文件硬链接次数默认2,原因除了目录文件自身名字,我们可以通过 . 进行匹配
创建对象:仅对文本文件可以创建,不支持跨文件系统
2、创建、删除普通文件
创建普通文件: touch [OPTION]... FILE...
touch的两种用法:
1、如果文件已存在,更新文件的三个时间, stat 可以查看文件的详细信息
[root@localhost ~]# stat /etc/hostname
File: /etc/hostname
Size: 22 Blocks: 8 IO Block: 4096 regular file
Device: 10302h/66306d Inode: 8608116 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:hostname_etc_t:s0
Access: 2022-06-09 11:19:35.484027446 +0800
Modify: 2022-04-16 14:46:36.153011877 +0800
Change: 2022-04-16 14:46:36.153011877 +0800
Birth: -
atime,即access time,查看了一下文件内容(cat),文件的atime时间会更新
mtime,即modify time,文件内容被改变了,ctime会更新
ctime,即change time,元数据【文件的属性,例如大小、文件名等等】被改变,mtime会更新
2、如果文件不存在,则表示创建文件
创建多个普通文件:
方法1: touch 文件名1 文件名2 文件名3
方法2: touch {文件名1,文件名2,文件名3}
[root@master test]# touch {1,2}{3,4}
[root@master test]# touch abc{1..100}
删除普通文件:
rm [-f] 文件名
rm FILENAME 创建文本文件
rm -r DIRNAME 删除目录文件 (-r 是递归的意思,建议都加)
3、目录操作命令
1、创建目录(make directory)
语法为: mkdir [-p] [/路径/]目录名
-p 可快速创建出目录结构中指定的每个目录,对于已存在的目录不会被覆盖
-v 显示创建目录的详细过程
2、统计目录及文件的空间占用情况——du命令
功能:查看某个目录中的各级子目录所占用的磁盘空间数。
命令格式: du [选项] [目录名]
4、创建链接文件
创建软链接文件: ln -s 原文件 目标文件 (建议都用绝对路径)
注:当目标文件和链接文件不在同一链接必须通过绝对路径创建
[root@localhost ~]# ln -s /etc/hostname /root/hostname
[root@localhost ~]# ll -i /etc/hostname /root/hostname
8608116 -rw-r--r--. 1 root root 22 Apr 16 14:46 /etc/hostname
17538579 lrwxrwxrwx. 1 root root 13 Jun 9 15:41 /root/hostname -> /etc/hostname
创建硬链接文件: ln 原文件 目标文件
[root@localhost ~]# ln /etc/motd /root/motd
[root@localhost ~]# ll -i /etc/motd /root/motd
8608102 -rw-r--r--. 2 root root 0 Sep 10 2018 /etc/motd
8608102 -rw-r--r--. 2 root root 0 Sep 10 2018 /root/motd
软硬连接的区别
-
硬连接中源文件与连接文件公用一个inode号,是同一个文件,软连接中源文件与连接文件拥有不同inode号,是2个不同的文件
[root@server ~]# echo "hello" > s1
[root@server ~]# ln s1 s2 # 建立硬连接
[root@server ~]# stat s1
文件:s1
大小:6 块:8 IO 块:4096 普通文件
设备:fd00h/64768d Inode:16802662 硬链接:2
权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
[root@server ~]# stat s2
文件:s2
大小:6 块:8 IO 块:4096 普通文件
设备:fd00h/64768d Inode:16802662 硬链接:2 # s1 s2 indoe号相同:16802662
权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
[root@server ~]# ln -s s1 s3
[root@server ~]# stat s3
文件:s3 -> s1
大小:2 块:0 IO 块:4096 符号链接
设备:fd00h/64768d Inode:16802663 硬链接:1 # 软连接s3 inode:16802663不同
-
软连接的指向关系可以查看,硬连接不可以查看
-
连接数不同,软连接数不会增加
-
文件大小不同,硬连接文件大小与源文件一样
-
软连接不受任何文件系统的影响,任何用户都可以创建指向目录的软连接