七、时间日期指令
显示当前时间时分秒
date "+ %y-%m-%d %H:%M:%S"
更改时间,把时间设置为2023年
date -s "23-03-12 13:35:17"
查看2020的日历
cal 2020
八、文件查找
查找 usr 下的demo.txt
# find 搜索目录 指定名字 查找的文件名称
find /usr -name demo.txt
# 从根目录查找文件小于两百M的文件
find / -size -200M
# 从根目录查找文件大于两百M的文件
find / -size +200M
# 从根目录查找文件等于两百M的文件
find / -size n200M
查找指令在哪一个目录
# 查找ls指令在那里一个目录下
which ls
# 查找重启目录在哪一个目录下
which reboot
查找文本关键字
# 查找demo.txt 下的lib值
cat demo.txt | grep "lib"
# 查找demo.txt 下的lib行号和值
cat demo.txt | grep -n "lib"
# 查找demo.txt 下忽略大小写的lib行号和值
cat demo.txt | grep -n -i "lib"
九、文件压缩
压缩文件
# 压缩demo.txt文件
gzip demo.txt
# 解压demo.txt文件
gunzip demo.txt.gz
# 将home 目录下的文件包括home目录压缩为myhome1.zip
zip myhome1.zip /home/
# 将/myhome2.zip 解压缩到/usr/local/mytmp/ -d 是指定解压到的目录
unzip -d /usr/local/mytmp/ /myhome2.zip
# tar c 是压缩 x是解压
# 使用tar 将 1.txt 和2.txt打成一个压缩包
tar -zcvf my.tar.gz 1.txt 2.txt
# 解压
tar -zxvf my.tar.gz 1.txt 2.txt
# 解压到指定目录
tar -zxvf my.tar.gz -C /usr/local/
十、Linux组介绍
Linux中的每个文件都是由三个概念的,分别是所有者、所在组、其他组这三个概念。
- 所有者:指谁创建了这个文件
- 所在组:值创建这个人在那个组
- 其他组:值创建人所在组的其他组
1、所有者
查看目录的所有者
ls -ahl
修改所有者
chown root tom.txt
2、所在组
应用实例
# 创建一个用户组
groupadd school
# 创建一个用户归属到school组里面
useradd -g school xiaoming
# 给xiaoming 分配密码
passwd xiaoming
# 切换到xiaoming 账号
su xiaoming
# 创建一个文件夹
touch my.txt
# ll 查看目录所在组
这里我们发现创建文件的用户归属在那个组文件也归属在那个组
修改默认所在组
# 创建一个新的用户组
groupadd bigschool
# 将my.txt 改为bigschool组
chgrp bigschool my.txt
# ll 查看
这里我们发现默认组被修改了
3、其他组
将xiaoming改到bigschool组里面,修改后xiaoming之前创建的所有文件所在组也都将改为当前组
# 查看小明当前在那个组
id xiaoming
# 修改组
usermod -g bigschool xiaoming
十一、Linux权限介绍
1 、权限简介
每个文件都有下面的权限标识,而这个权限的标识都分别对应了不同的意义,他们主要分为四个部分
0(文件类型)
-
“-” 代表是一个普通文件
-
"d"代表是一个目录,
-
"l"代表是一个软连接
-
"c"代表是一个字符设备为
-
“b” 如果是一个块文件为
1-3(所有者)
- r 代表所有者拥有可以读的权限,- 代表所有者没有可读权限
- w 代表所有者拥有可以读的权限,- 代表所有者没有可写权限
- x 代表所有者有可执行的权限,- 代表所有者没有可执行的权限
4-6(所在组)
- r 代表所在组拥有可以读的权限,- 代表所在组没有可读权限
- w 代表所在组拥有可以读的权限,- 代表所在组没有可写权限
- x 代表所在组有可执行的权限,- 代表所在组没有可执行的权限
7-9(其他组)
- r 代表其他组拥有可以读的权限,- 代表其他组没有可读权限
- w 代表其他组拥有可以读的权限,- 代表其他组没有可写权限
- x 代表其他组有可执行的权限,- 代表其他组没有可执行的权限
2、rwx作用域
- r :作用于文件时表示可以读取查看内容,作用于目录时可以ls 查看目录
- w :作用于文件时表示可以修改内容但是不可以删除,必须拥有该目录的可写权限时才可以删除,作用于目录时可以在目录创建、删除、重命名目录
- x :作用于文件时表示可以执行,作用于目录时表示可以cd到目录内部
3、修改权限
#给my.txt 所有者全部权限,所有组读执行权限,其他组写执行权限
chmod u=rwx,g=rx,o=wx my.txt
#给my.txt 所有者删除执行权限,所有组增加写
chmod u-x,g+w my.txt
#给所有人增加全部权限
chmod a=rwx my.txt
#给所有人增加全部权限 使用数字赋权 第一个表示所有者第二个表示所在组第三个表示其他组
chmod 777 my.txt
十二、定时任务(crontab)
1、crontab 参数详解
参数 | 描述 |
---|---|
-e | 编辑定时任务 |
-l | 查看定时任务 |
-r | 删除当前用户所有的定时任务 |
2、定时任务表达式详解
# .---------------- 分钟 (0 - 59) 一小时的哪一分钟
# | .------------- 小时 (0 - 23) 一天的哪一小时
# | | .---------- 天 (1 - 31) 一个月内哪那一天
# | | | .------- 月 (1 - 12) 一年的哪一个月
# | | | | .---- 周 (0 - 6) 一周的哪一天
# | | | | |
# * * * * *
备注:
1) * 表示任意的(分、时、日、月、周)时间都执行
2) - 表示一个时间范围段, 如5-7点
3) , 表示分隔时段, 如6,0,4表示周六、日、四
4) /1 表示每隔n单位时间, 如*/10 每10分钟
3、表达式示例
00 02 * * * ls #每天的凌晨2点整执行
00 02 1 * * ls #每月的1日的凌晨2点整执行
00 02 14 2 * ls #每年的2月14日凌晨2点执行
00 02 * * 7 ls #每周天的凌晨2点整执行
00 02 * 6 5 ls #每年的6月周五凌晨2点执行
00 02 14 * 7 ls #每月14日或每周日的凌晨2点都执行
00 02 14 2 7 ls #每年的2月14日或每年2月的周天的凌晨2点执行
*/10 02 * * * ls #每天凌晨2点,每隔10分钟执行一次
* * * * * ls #每分钟都执行
00 00 14 2 * ls #每年2月14日的凌晨执行命令
*/5 * * * * ls #每隔5分钟执行一次
00 02 * 1,5,8 * ls #每年的1月5月8月凌晨2点执行
00 02 1-8 * * ls #每月1号到8号凌晨2点执行
0 21 * * * ls #每天晚上21:00执行
45 4 1,10,22 * * ls #每月的1,10,22号的4:45执行
45 4 1-10 * * ls #每月的1到10号的4:45执行
3,15 8-11 */2 * * ls #每隔两天的上午8点到11点的第3和第15分钟执行
0 23-7/1 * * * ls #晚上11点到早上7点之间,每隔一个小时执行
15 21 * * 1-5 ls #周一到周五每天晚上21:15执行
4、应用实例
# 设置定时任务
crontab -e
# 每隔一分钟将/etc下面的目录详情备份到 /usr/local/cron.txt 下面
*/1 * * * * ls -l /etc/ > /usr/local/cron.txt