17、用户相关命令
(1)su – root 切换到超级用户
(2)adduser 添加新用户;password 输入密码(超级用户权限)
(3)echo $HOME 查看用户的主目录
(4)echo $PATH缺省的命令位置
(5)whoami 查看当前用户
(6)pwd 查看当前目录
(7)查看历史命令
(8)$代表普通用户,#代表超级用户
18、文件系统的硬链接和软链接
文件名:文件的名称,由字符串构成。主文件名+扩展名
Inode(index node):索引节点——在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都会给它分配一个编号,这个编号被称为索引节点编号。
1、定义:
- 硬链接:在Linux系统中,多个文件名指向同一索引节点(Inode)是正常且允许的。一般这种链接就称为硬链接。
- 软链接:类似于windows系统中的快捷方式。文件用户数据块中存放的内容是另一文件的路径名的指向,通过这个方式可以快速定位到软连接所指向的源文件实体。
2、对比:
硬链接
- 硬链接,以文件副本的形式存在。但不占用实际空间。
- 不允许给目录创建硬链接。
- 硬链接只有在同一个文件系统中才能创建。
- 删除其中一个硬链接文件并不影响其他有相同 inode 号的文件。
软链接:
- 软链接是存放另一个文件的路径的形式存在。
- 软链接可以 跨文件系统 ,硬链接不可以。
- 软链接可以对一个不存在的文件名进行链接,硬链接必须要有源文件。
- 软链接可以对目录进行链接。
(1)ln 创建硬链接
(2)ln -s 创建软链接
上图文件列表中第一列权限位标识第一个字符显示的是文件类型,-为一般文件,d为目录,而l显示的就是链接文件。
19、查找文件命令2
(1)locate 搜索(不只是查找到文件名,有可能查找到路径名)
搜索所有含有passwd字段的文件
(2)locate -i 不分大小写地搜索文件
不分大小写地搜索etc目录下所有以r开头的文件、
(3)find -name 根据文件名查找文件;find -iname 不分大小写地根据文件名查找文件
查找etc目录下文件名为passwd的文件
不分大小写地查找含有passwd字符串的文件
(4)find -size 根据文件大小查找文件
查找该目录下大于10M的文件
查找该目录下小于1M的文件
(5)find -user 根据用户查找文件
查找用户为lh的文件并显示结果
(6)find -group 根据属组查找文件
查找属组为root的文件并只显示前5条结果
(7)find -type 根据文件类型查找文件
在etc目录下查找文件类型为f(一般文件)的文件,并显示前五条结果
- f 普通文件
- l 符号连接
- d 目录
- c 字符设备
- b 块设备
- s 套接字
(8)find -perm根据文件权限查找文件
find -perm mode 查找完全匹配mode权限的文件
find -perm -mode 查找至少为mode权限的文件
find -perm +mode 查找mode权限中满足任一权限的文件
在etc目录下查找权限完全匹配755的文件,并显示前五条结果
在etc目录下查找权限至少为555的文件,并显示前五条结果
(9)find -atime 按照文件最后访问时间查找文件;find -ctime 文件最后改变时间;find -mtime 文件最后修改时间——单位为天
find -mmin;find -amin;find -cmin——单位为分钟
最后访问时间在1天内的文件
最后访问时间在10天以上的文件
最后访问时间在10分钟以上的文件
ls -lc:显示的时间是文件的ctime
ls -lu:显示的时间是文件的atime
ls -lt 将文件依建立时间之先后次序列出
(10)-exec 参数后面跟的是 command 命令,-ok 参数用法与-exec一致,但是操作时要询问用户
-exec和-ok后面的{} ;是不能少的
在所有文件中寻找到文件名为a1的文件,并删除它
在所有文件中寻找到文件名位a2的文件,并把它移动到test文件夹中
在所有文件中寻找文件名位a2的文件并且输出“I found +文件路径”
删除文件名位a3的文件(删除之前先询问用户)
(11)find -du 查看磁盘占用空间;-h 以易读方式显示文件大小;-s 仅显示总计
查找到test所占用的磁盘空间和目录路径
查看某个文件夹内文件的情况
(12)find -o 或者;find -a 并且;find -not 相反
在所有文件中寻找文件大小小于1M或者文件类型为普通文件的文件
在所有文件中寻找大小小于1M并且文件类型为普通文件的文件
在所有文件中寻找文件大小不大于1M的文件
(13)将文件中所有空格分隔符改为逗号
20、重定向
- 输入重定向:指的是重新指定设备来代替键盘作为新的输入设备
- 输出重定向:指的是重新指定设备来代替显示器作为新的输出设备
(1)标准输出重定向(只输出正确信息,覆盖文件原有内容) >
将ls test2的结果重定向到a1之中
将“win”的文字信息重定向到a1之中,并覆盖之前内容
(2)追加重定向(在文件原有内容后添加信息) >>
将test2中文件内容重定向到a1中,添加到a1原有内容之后
(3)标准错误重定向 2>
访问不存在的文件夹temp下的文件x1,错误信息重定向到a1中,并覆盖a1原有内容
(4)追加错误重定向 2>>
访问不存在的文件夹temp下的文件x1,错误信息重定向到a1中,并附加在a1原有内容后面
(5)标准输出(输出正确和错误信息,覆盖文件内容) &>
标准输出(输出正确和错误信息,追加文件内容) &>>
(6)标准输入重定向(将指定文件作为命令的输入设备) <
将a1作为标准输入读取内容
将a1的内容作为邮件内容,邮件主题为“test”,邮寄对象为linux@163.com
(7)输入重定向分界符 <<
表示从标准输入设备(键盘)中读入,直到遇到分界符才停止(读入的数据不包括分界符),这里的分界符其实就是自定义的字符串
遇到自定义的分解符0才自动停止
(8)复合重定向
命令 < 文件1 > 文件2——将文件 1 作为命令的输入设备,该命令的执行结果输出到文件2中
将文件a1作为输入设备,cat a1指令输出到a2中
(9)将标准错误输出重定向到标准输出 2>&1
标准错误打印到屏幕,标准输出打印到文件中
a2作为输入设备,将cat a2结果标准输出到letter文件中,错误信息输出到屏幕上
21、管道
原理:第一个命令的输出作为第二个命令的输入,效果为过滤
只列出目录文件的全部信息
统计当前目录下占用磁盘空间最多的5个一级子目录
以排序方式查看当前目录(不包含子目录)的磁盘占据情况
删除a4文件中的空行和重复的行,并将剩余内容输出到文件a5中
显示最近登录到系统中的用户的名字
统计当前目录下目录文件的数目