Linux 实战技能 100 讲
尹会生
前游戏公司技术总监,前新浪网技术经理
47505 人已学习
新⼈⾸单¥68
课程目录
已完结/共 118 讲
第五章:文本操作篇 (15讲)
Linux 实战技能 100 讲
登录|注册
留言
9
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 85 | 为脚本加锁
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 课程介绍
02 | 内容综述
03 | 什么是Linux
04 | Linux的内核版本及常见发行版
05 | 安装VirtualBox虚拟机
06 | 在虚拟机中安装Linux系统
07 | 第一次启动Linux
08 | 万能的帮助命令:man、help、info
09 | 初识pwd和ls命令
10 | 详解ls命令
11 | 详解cd命令
12 | 创建和删除目录
13 | 复制和移动目录
14 | 如何在Linux下进行文本查看
15 | 打包压缩和解压缩
16 | Vim的四种模式
17 | Vim的正常模式
18 | Vim的命令模式
19 | Vim的可视模式
20 | 用户和用户组管理及密码管理
21 | su和sudo命令的区别和使用方法
22 | 用户和用户组的配置文件介绍
23 | 文件与目录权限的表示方法
24 | 文件权限的修改方法和数字表示方法
25 | 权限管理以及文件的特殊权限
26 | 网络管理
27 | 查看网络配置
28 | 修改网络配置
29 | 网络故障排除命令
30 | 网络管理和配置文件
31 | 软件包管理器的使用
32 | 使用rpm命令安装软件包
33 | 使用yum包管理器安装软件包
34 | 通过源代码编译安装软件包
35 | 如何进行内核升级
36 | grub配置文件介绍
37 | 使用ps和top命令查看进程
38 | 进程的控制与进程之间的关系
39 | 进程的通信方式与信号:kill命令
40 | 守护进程
41 | screen命令和系统日志
42 | 服务管理工具systemctl
43 | SELinux简介
44 | 内存与磁盘管理
45 | 内存查看命令
46 | 磁盘分区和文件大小查看
47 | 文件系统管理
48 | i节点和数据块操作
49 | 分区和挂载
50 | 分区和挂载磁盘配额
51 | 交换分区swap的查看与创建
52 | 软件RAID的使用
53 | 逻辑卷LVM的用途与创建
54 | 系统综合状态查看命令sar以及第三方命令
55 | 什么是Shell
56 | Linux的启动过程
57 | Shell脚本的格式
58 | 脚本不同执行方式的影响
59 | 管道
60 | 重定向
61 | 变量赋值
62 | 变量引用及作用范围
63 | 环境变量、预定义变量与位置变量
64 | 环境变量配置文件
65 | 数组
66 | 转义和引用
67 | 运算符
68 | 特殊字符大全
69 | test比较
70 | if判断的使用
71 | if-else判断的使用
72 | 嵌套if的使用
73 | case分支
74 | for的基本使用
75 | C语言风格的for
76 | while循环和until循环
77 | 循环的嵌套和break、continue语句
78 | 使用循环处理位置参数
79 | 自定义函数
80 | 系统函数库介绍
81 | 脚本资源控制
82 | 信号
83 | 一次性计划任务
84 | 周期性计划任务
85 | 为脚本加锁
86 | 元字符介绍
87 | find 演示
88 | sed和awk介绍
89 | sed替换命令讲解
90 | sed的替换指令加强版
91 | sed的其他常用命令
92 | sed多行模式空间
93 | 什么是sed的保持空间
94 | 认识awk
95 | awk的字段
96 | awk表达式
97 | awk判断和循环
98 | awk数组
99 | awk数组功能的使用
100 | awk函数
101 | 防火墙概述
102 | iptables规则的基本使用演示
103 | iptables过滤规则的使用
105 | firewalld
104 | iptables nat表的使用
106 | SSH介绍之Telnet明文漏洞
107 | SSH服务演示
108 | FTP服务器vsftpd介绍与软件包安装
109 | vsftpd配置文件介绍
110 | vsftp虚拟用户
111 | samba服务演示
112 | NFS服务
113 | Nginx基本配置文件
114 | 使用Nginx配置域名虚拟主机
115 | LNMP环境搭建
116 | DNS服务的原理
117 | NAS演示
118 | 结课测试&结束语
登录 后留言

全部留言(9)

  • 最新
  • 精选
未聞花名
老师,没太明白延时的是怎么使用的,需要我们配置什么吗?还是说linux自己保证了定时的开机自动检查,发现没执行的执行

作者回复: 搞明白为什么有延时计划任务,要先搞明白计划任务的逻辑。 计划任务是指在有周期性的执行一系列命令。这一系列命令要么因为太频繁,人力不想手动执行,想偷懒;要么因为可能要在深夜执行,不想半夜爬起来敲一下回车。 而让计算机代替人,又想稳定的执行这个任务,那么设计逻辑必然要非常简单,所以计划任务就根据crontab配置的时间点,对照计算机的时钟,每分钟来代替人进行时间的对比, 一旦配置文件的时间和系统时钟的时间相同,那么就可以执行计划任务了。 但是按照上面的逻辑,还有一种意外的情况,就是系统时间还没到计划任务时间的时候,操作系统执行了重启。而系统恢复正常的时候已经过了计划任务的时间。这时候人就要考虑了,错过了定时任务的时间之后,这个任务是在下一个时间周期执行还是等操作系统开机几分钟以后再扫描一遍,把错过的任务给补上。 很明显linux选择的是后一种做法,后一种做法就用到了延时计划任务,它会在linux重启之后几分钟,自动再扫描一次计划任务的配置文件:“延时计算任务会查询计划任务,哪些任务在该执行的时间点没执行?需要在开机多久再补充执行一次?” 这就是延时计划任务的用途了,默认操作系统已经配置好延时计划任务了,大部分情况下你是不需要改动它的。除非你想利用这样的机制来给自己写的另一套计划任务加上“保险”,才需要改动它

2021-12-20
2
6
Amosヾ
既然系统已经给出延时执行的文件,是否我们基本不需要自己编写,只需要更改延时的时间就可以了?

作者回复: 是的

2021-02-02
书木子谢明
学完了shell部分,请教几个问题。看系统自带脚本时,有如下命令不理解: 1. ${BASH_VERSION%.*}:从输出结果上看,是将”4.3.48(1)-release“裁剪成了”4.3“。 2. ${bash#*.} 3. ${XDG_CONFIG_HOME:-$HOME/.config} 从效果看,这个应该是若变量为空则赋默认值?这个写法比老师讲的多了”:”。

作者回复: 这些是shell脚本的变量替换功能 , :- 是一个整体

2021-01-05
麦芽科技学堂
老师,ubuntu下面没有/etc/anacrontab这个文件呀

作者回复: ubuntu需要安装anaconda ,它不是ubuntu自带的软件包

2020-03-25
客厅的电视📻
老师 已经使用了flock ,新开启了一个终端,为什么还是能运行呢?

作者回复: 确保你的锁文件权限正确,可以的话,把代码贴上来一起分析一下原因

2019-11-24
Frank
老师,flock 怎么在脚本文件中使用呢?

作者回复: 在cron 里的一行命令,相当于bash 直接解释,所以flock 当做单行命令使用即可

2019-10-29
布凡
/etc/cron.d/0hourly /etc/anacrontab flock 保证任务只执行一次
2020-10-23
1
学习使人快乐
这个命令和脚本的参数有关系吗,脚本传递不同的参数会怎么样?
2020-07-16
Junkai
anaconda cron.daily 是开机5分钟后检查,如果时间段在3-22点就执行cront.daily吧?
2020-04-22
收起评论