Welcome 微信登录

首页 / 操作系统 / Linux

shell中case的用法学习笔记

shell中case的用法学习笔记

shell中的case语句:可以把变量的内容与多个模板进行匹配,再根据成功匹配的模板去决定应该执行哪部分代码。使用格式:case 匹配母板 in模板1 [ | 模板2 ] … ) 语句组 ;;模板3 [ | 模板4 ] … ) 语句组 ;;esaccase语句的匹配是从上往下地匹配顺序。因此,case语句编写的原则是从上往下,模板从特殊到普通。在C语言里,case语句中有default模板,而在shell程序设计中,可能将模板写成*,就可以完成相同的功能。...
Linux内核链表实现过程

Linux内核链表实现过程

关于双链表实现,一般教科书上定义一个双向链表节点的方法如下:复制代码 代码如下:struct list_node{stuct list_node *pre;stuct list_node *next;ElemType data; }即一个链表节点包含:一个指向前向节点的指针、一个指向后续节点的指针,以及数据域共三部分。但查看linux内核代码中的list实现时,会发现其与教科书上的方法有很大的差别。来看看linux是如何实现双链表。双链表节点定义复制代码 ...
linux网络编程用到的网络函数详解用和使用示例

linux网络编程用到的网络函数详解用和使用示例

一.概念介绍网络程序分为服务端程序和客户端程序。服务端即提供服务的一方,客户端为请求服务的一方。但实际情况是有些程序的客户端、服务器端角色不是这么明显,即互为客户端和服务端。我们编写网络程序时,一般是基于TCP协议或者UDP协议进行网络通信的。TCP:(Transfer Control Protocol)传输控制协议是一种面向连接的协议, 当我们的网络程序使用这个协议的时候,网络可以保证我们的客户端和服务端之间的传输是可靠的。UDP:(User Datag...
给定链表中间节点指针,删除中间节点的方法

给定链表中间节点指针,删除中间节点的方法

问题如下输入:链表 a->b->c->d->e中指向节点c的指针输出:无返回值,但新链表变为a->b->d->e解答:想了好久没想出来,看了提示才知道解法的。这里用到了一个小技巧。要删除中间节点,但是我们不知道要删除节点的上一个节点p,所以无法通过修改指针的方法(p->next=del->next)来删除节点,但知道要删除节点的后一个节点,那么我们换一个思路,把要删除的节点的数据与该节点的后一个节点的数...
又拍云存储同步脚本

又拍云存储同步脚本

本blog使用的服务器是AWS EC2,选用节点位于日本,所以访问速度只能说凑合。前段时间把网站上的css、js以及图片等静态资源放在又拍云存储上,访问速度明显提高不少。由于网站没有备案,所以不能使用自己的域名来直接访问又拍云存储上的内容,只能通过又拍云存储的三级域名来访问。实现大致步骤如下:1、注册并激活又拍云账号;2、登入后在“操作员管理”中添加一个账号,账号在ftp中会使用到;3、“空间管理”中创建一个空间,注意最好是选择“文件类空间”,因为“图片类...
linux shell awk获得外部变量(变量传值)简介

linux shell awk获得外部变量(变量传值)简介

AWK 提供了极其强大的功能: 可以进行正则表达式的匹配 样式装入 流控制 数学运算符 进程控制语句 内置的变量和函数 可以把awk看作一门完全的程序设计语言,它处理文本的速度是快得惊人的。现在很多基于shell 日志分析工具都可以用它完成。设计简单,速度表现很好。 涉及到以上六个方面内容,我会在以后文章中加以介绍。 这次主要说下,怎么样把外部变量传入到awk执行语句中。一、基础:awk [ -F re] [parameter...] ["pattern ...
shell脚本分析 nginx日志访问次数最多及最耗时的页面(慢查询)

shell脚本分析 nginx日志访问次数最多及最耗时的页面(慢查询)

当服务器压力比较大,跑起来很费力时候。我们经常做站点页面优化,会去查找那些页面访问次数比较多,而且比较费时。 找到那些访问次数高,并且比较耗时的地址,就行相关优化,会取得立竿见影的效果的。 下面是我在做优化时候,经常用到的一段shell 脚本。 这个也可以算是,统计web页面的slowpage 慢访问页面,象mysql slowquery 。以下是我的:nginx 配制复制代码 代码如下:log_format main "$remote_addr - $r...
如何编写健壮的Bash脚本(经验分享)

如何编写健壮的Bash脚本(经验分享)

shell脚本在运行异常时会受到非常大的影响。本文介绍一些让bash脚本变得健壮的技术。使用set -u因为没有对变量初始化而使脚本崩溃过多少次?对于我来说,很多次。chroot=$1...rm -rf $chroot/usr/share/doc如果上面的代码没有给参数就运行,不会仅仅删除掉chroot中的文档,而是将系统的所有文档都删除。那应该做些什么呢?好在bash提供了set -u,当使用未初始化的变量时,让bash自动退出。也可以使用可读性更强一点...
<< 141 142 143 144 145 146 147 148 149 150 >>