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原创内容,可在微信小程序查看