DAY15 操作系统文件属性

生成随机字母

[root@oldboy63 ~]#echo abc123.,
abc123.,
[root@oldboy63 ~]#echo abc123.,|tr -d 'a-z'
123.,
[root@oldboy63 ~]#echo abc123.,|tr -cd 'a-z'
abc[root@oldboy63 ~]#tr -cd 'a-z'

-d 将匹配的信息排除掉
-c 将排除的信息显示出来
head -c --- 取指定信息中前几个字符

文件相关的命令: file which whereis locate(updatedb-更新数据库索引)

  find命令:
   总结:
   01. 查找数据时指定的多个条件默认是并且关系  -a and
   02. 查找数据时指定的多个条件可以是或者关系  -o or

根据文件名称过滤找出指定文件: -name -iname
根据文件类型过滤找出指定文件: -type f/d/l
根据文件大小过滤找出指定文件: -size +5M/5M/-5M k M G
根据目录层级过滤找出指定文件: -maxdepth -mindepth
-maxdepth 2 -mindepth 2
01 层 找文件 忽略
02 层 找文件 找文件
03 层 忽略 找文件
04 层 忽略 找文件
tar --- 压缩数据命令 如何压缩数据(zcvhPf) 如何查看数据(tf) 如何解压数据(xf -C)
将指定数据信息找出来,批量复制数据信息到指定目录/删除数据
批量删除数据命令:
find /oldboy/ -type f -name ".txt"|xargs rm
批量复制数据命令:
find /oldboy/ -type f -name "
.txt"|xargs -i cp {} /tmp
find /oldboy/ -type f -name "*.txt"|xargs cp -t /tmp

xargs --- 分组命令/整合命令

xargs

[root@oldboy66 ~]# echo {01..10}
01 02 03 04 05 06 07 08 09 10
[root@oldboy66 ~]# echo {01..10}|xargs -n3
01 02 03
04 05 06
07 08 09
10
[root@oldboy66 ~]# echo {01..10}|xargs -n4
01 02 03 04
05 06 07 08
09 10
[root@oldboy66 ~]# echo {01..10}|xargs -n2
01 02
03 04
05 06
07 08
09 10
[root@oldboy66 ~]# seq -w 10
01
02
03
04
05
06
07
08
09
10
[root@oldboy66 ~]# seq -w 10|xargs
01 02 03 04 05 06 07 08 09 10
[root@oldboy66 ~]#
批量复制文件到/tmp
[root@oldboy66 ~]# find /oldboy/ -type f -name '*.txt'|xargs -i cp {} /tmp
[root@oldboy66 ~]# 
[root@oldboy66 ~]# ll /tmp
total 0
-rw-r--r--. 1 root root 0 Jul 20 06:24 a.txt
-rw-r--r--. 1 root root 0 Jul 20 06:24 b.txt
-rw-r--r--. 1 root root 0 Jul 20 06:24 c.txt
[root@oldboy66 ~]# find /oldboy/ -type f -name '*.txt'|xargs cp -t /tmp

文件属性详细说明---文件的权限说明

文件数据权限有什么:
r read 4 读
w write 2 写
x execute 1 执行
- null 0 没有响应权限
文件权限赋予哪些用户:
文件属主用户: 监护人 3个权限(rwx) 每三位权限为一组进行赋予
文件属组用户: 亲人 3个权限(rw-) 一个文件数据有9个权限位 正确是有12个权限位
文件其他用户: 隔壁邻居 3个权限(r-x)
rw- : 6 rw-r--r-- : 644
rwx : 7 rwxr-xr-x : 755
-w- : 2
结论:
1. 默认文件权限: 644
2. 默认目录权限: 755

文件属性详细说明---文件的用户信息

系统中有很多不同的用户
用户分类:
1. 超级管理员用户 皇帝-root 用户编号(user id):0
2. 虚拟用户 傀儡-nobody 用户编号(user id):1-499(centos6) 1-999(centos7)
3. 普通用户 平民-oldboy 用户编号(user id):500+ (centos6) 1000+(centos7)
以上用户都可以成为: 文件属主 文件属组 文件其他用户
root oldboy01 oldboy02 oldboy03 oldgirl01 oldgirl02 oldgirl03 oldbaby01 oldbaby02 oldbaby03
/oldboy/oldboy.txt rwx --
root 用户绝对权力
root用户组: root oldboy01 oldboy02 oldboy03 拥有写能力 对指定用户分组---用户组概念
用户和组的关系:
1) 一个用户 vs 一个用户组 1对1
2) 多个用户 vs 一个用户组 多对1
3) 一个用户 vs 多个用户组 1对多
4) 多个用户 vs 多个用户组 多对多

用户分类

[root@oldboy66 ~]# id root
uid=0(root) gid=0(root) groups=0(root)
[root@oldboy66 ~]# id oldboy
uid=1000(oldboy) gid=1000(oldboy) groups=1000(oldboy)
[root@oldboy66 ~]# id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
[root@oldboy66 ~]#

文件属性详细说明---文件的时间信息
m(modify) time --- 修改时间
a(access) time --- 访问时间
c(change) time --- 改变时间

[root@oldboy66 oldboy]# touch oldboy.txt
[root@oldboy66 oldboy]# stat oldboy.txr 
stat: cannot stat ‘oldboy.txr’: No such file or directory
[root@oldboy66 oldboy]# echo 12354>> oldboy.txt
-bash: 12354: Bad file descriptor
[root@oldboy66 oldboy]# echo 12354 > oldboy.txt
[root@oldboy66 oldboy]# stat oldboy.txt
  File: ‘oldboy.txt’
  Size: 6           Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d  Inode: 23921       Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:default_t:s0
Access: 2019-07-20 07:16:42.033226339 +0800--- 查看文件时间信息
Modify: 2019-07-20 07:17:14.720226024 +0800--- 修改文件时间信息
Change: 2019-07-20 07:17:14.720226024 +0800--- 改变文件时间信息(文件属性信息有变化) 
 [root@oldboy66 oldboy]# chmod 666 oldboy.txt 
[root@oldboy66 oldboy]# stat oldboy.txt
  File: ‘oldboy.txt’
  Size: 6           Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d  Inode: 23921       Links: 1
Access: (0666/-rw-rw-rw-)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:default_t:s0
Access: 2019-07-20 07:16:42.033226339 +0800
Modify: 2019-07-20 07:17:14.720226024 +0800
Change: 2019-07-20 07:18:54.078225064 +0800--- 改变文件时间信息(文件属性信息有变
 Birth: -
[root@oldboy66 oldboy]#
root@oldboy63 oldboy]# cp old  oldboy_`date +%F%W`.txt
[root@oldboy63 oldboy]#ll
total 12
-rw-r--r-- 1 root root 22 Jul 17 19:21 old
-rw-r--r-- 1 root root 22 Jul 19 17:44 oldboy_2019-07-1928.txt
-rw-r--r-- 1 root root 22 Jul 19 17:42 oldboy_.txt
drwxr-xr-x 2 root root  6 Jul 17 19:22 oldboy.txt8

显示当前时间信息:

命令:date
Fri Jul 19 17:26:05 CST 2019
2) 指定显示时间格式:
date "+%F %T 星期:%w"
2019-07-19 17:29:05 星期:5
%F: 显示日期信息 年-月-日
%T: 显示时间信息 小时:分钟:秒
%w: 显示星期信息 周一到周日 0~6
%y: 显示年份
%Y: 显示年份(包含世纪信息)
%m: 显示月份
%d: 显示日期
%H: 显示小时信息
%M: 显示分钟信息
%S: 显示秒信息
man date 可以查看显示时间格式符号信息
应用: 生成不同时间的备份文件
cp oldboy.txt oldboy_date +%F.txt

[root@oldboy63 ~]#date
Fri Jul 19 17:27:00 CST 2019
[root@oldboy63 ~]# date +%F
2019-07-19
[root@oldboy63 ~]# date "+%F %T"
2019-07-19 17:28:18
[root@oldboy63 ~]# date "+%F %T %w"
07-19 17:29:06 5
[root@oldboy63 ~]
显示未来时间
[root@oldboy63 oldboy]#date
Fri Jul 19 17:45:48 CST 2019
[root@oldboy63 oldboy]#date -d "-1 day"
Thu Jul 18 17:46:03 CST 2019
[root@oldboy63 oldboy]#date -d "+3 day"
Mon Jul 22 17:46:12 CST 2019
[root@oldboy63 oldboy]#date -d "2 day"
Sun Jul 21 17:46:38 CST 2019
[root@oldboy63 oldboy]#date -d "1 day"
Sat Jul 20 17:46:45 CST 2019
[root@oldboy63 oldboy]#
设定时间: [root@oldboy63 oldboy]#date -s "20201010 10:10"
Sat Oct 10 10:10:00 CST 2020
[root@oldboy63 oldboy]#date
Sat Oct 10 10:10:11 CST 2020
[root@oldboy63 oldboy]#reboot

同步时间:

update : ntpdate ntp1.aliyun.com

补充: 文件权限位后面的点和selinux程序开启或关闭有关:
selinux程序开启状态: 创建的文件(之前已有文件), 在权限位后面都会有点存在
selinux程序关闭状态: 创建的文件                在权限位后面都不会有点存在
selinux程序关闭之后,可以顺利重启,重新加载selinux配置文件
selinux程序再次开启,启动系统会有延迟情况,延迟时间过后,可以重启系统

你可能感兴趣的:(DAY15 操作系统文件属性)