linux系统学习第二章-文件与目录

1.文件属性与权限

1.1 ls

[root@vm-tctsrv halo]# ls -lh
total 89M
drwxr-xr-x 7 root root 4.0K Oct  9 18:49 data
-rw-r--r-- 1 root root  89M Oct  1 11:58 halo-1.5.4.jar
-rwxr-xr-x 1 root root   69 Oct  1 12:03 start.sh
  • 第一栏代表文件的类型和权限
drwxr-xr-x
第一个字符代表这个文件是目录、文件或链接文件等
	d:目录
	-:文件
	l:链接文件(link file)
	b:设备文件中可供存储的周边设备(可按块随机读写的设备)
	c:设备文件中的串行端口设备,如键盘、鼠标
其余字符三个为一组,且均为rwx三个参数的组合,三个权限的位置不会变,如果没有权限,会出现-
	第一组为文件或目录拥有者具备的权限,当为目录时,r代表能够读取目录下的文件名数据,w代表具有改动该目录结构列表的权限,x代表用户能否进入该目录称为工作目录的用途
	第二组为加入此用户组账号的权限
	第三组为非本人且没有加入本用户组的其他账号权限
  • 第二栏表示有多少文件名链接到此节点

  • 第三栏表示这个文件拥有者账号

  • 第四栏表示这个文件所属用户组

  • 第五栏表示文件容量大小,默认单位为Bytes

  • 第六栏为这个文件的创建日期或是最近的修改日期

    文件的时间参数有三种,修改时间(mtime)、状态时间(ctime,权限与属性被修改等)和读取时间(atime,内容被读取),默认显示的是修改时间,如果要显示其他时间,添加参数。如:

    ls -l --time=ctime
    
  • 第七栏为文件名

1.2 文件属性及权限的修改

1.2.1 chgrp

修改文件(目录)的用户组(用户组信息保存在/ect/group中)

# -R代表递归
chgrp usergroup [-R] 目录名/文件名 ...

chgrp lighthouse testfile.txt
chgrp lighthouse -R testdir
1.2.2 chown

修改文件(目录)的拥有者(用户名称保存在/etc/passwdz中)

chown [-R] 账号名称 文件名/目录名

修改文件(目录)的拥有者的同时,修改文件(目录)的用户组

chown [-R] 账号名称:用户组名称 文件名/目录名
1.2.3 chmod

修改文件权限

  • 数字类型修改
# r:4,w:2,x:1
chmod [-R] xyz 文件名/目录名
  • 符号类型修改

如修改权限为rwxr-xr-x

# u代表user,go代表group,o代表other
chmod u=rwx,go=rx testfile.txt

group加上w权限

chmod g+w testfile.txt

所有用户去掉x权限

chmod a-x testfile.txt

1.3 文件类型和默认权限查看

1.3.1 file
# 查看文件类型
file nginx.conf
1.3.2 umask
# 查看创建文件/目录默认权限
# -S以符号类型显示权限,当以数字类型显示权限时,如0022,第一位是特殊权限,我们看022即可,2代表去除了w权限,也就是755
umask [-S] 文件/目录名
# 修改创建文件/目录默认权限,002为去除的权限数字组合
umask 002

2.文件内容查看

2.1 cat

# -n(显示行号)
cat -n nginx.conf

2.2 more/less

less 文件名

空格/pagedown:向下翻页
pageup:向上翻页
/字符串:向下查找字符串的功能
?字符串:向上查找字符串的功能
g:前进到这个数据的第一行
G:前进到这个数据的最后一行
q:离开less这个程序

more的用法和less类似,区别在于less命令可以前后翻页,more只能向后翻页。more更多的是与其他命令结合使用

2.3 head、tail

查看内容前(后)20行

cat -n nginx.conf | head -n 20
cat -n nginx.conf | tail -n 20

3.文件的查找

3.1 脚本文件的查找-which

which命令会根据【PATH】环境变量所规范的路径,去查找执行文件的文件名

# -a:将所有由PATH目录中科院找到的命令均列出
which [-a] command

3.2 whereis

whereis命令会去一些特定的目录中查找文件

# 查看whereis命令会去哪些目录查找
whereis -l
# 查找文件
whereis 文件或目录名

3.3 locate

locate 会去查找数据库,如果数据库很久没更新,可以执行命令updatedb手动更新数据库

# -l:仅输出几行,例如输出5行是-l 5
locate [-l] keyword

3.4 find

find会去读取硬盘查找

find [path] [option] [action]
  • 根据修改时间查找
# -mtime 0代表从现在开始到24小时前
# -mtime 4代表4天前到5天前的24小时文件
# -mtime +4代表5天前之前的文件
# -mtime -4代表4天前到现在的文件
find / -mtime 0
  • 根据文件名查找
find / -name nginx.conf
find / -name *.conf
  • 根据文件大小查找
# 大于50k文件
find / -size +50k

更多章节及Java原创内容,可在微信小程序查看

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值