AWK是一种处理文本文件的语言是┅个强大的文本分析工具。
# 每行按空格或TAB分割输出文本中的1、4项
# 使用多个分隔符.先使用空格分割,然后对分割结果再使用","分割
匹配正则表达式和不匹配正则表达式 |
增加或减少作为前缀或后缀 |
过滤第一列大于2并且第二列等于'Are'的行
当前记录的第n个字段,字段间由FS分隔 |
命令行中当前文件的位置(从0开始算) |
数字转换格式(默认值为%.6g)ENVIRON环境变量关联数组 |
最后一个系统错误的描述 |
字段宽度列表(用空格键分隔) |
字段分隔符(默认是任何空格) |
如果为真则进行忽略大小写的匹配 |
已经读出的记录数,就是行号从1开始 |
数字的输出格式(默认值是%.6g) |
输出记录分隔符(输出换行符),输出时用指定的符号代替换行符 |
输出记录分隔符(默认值是一个换行符) |
由match函数所匹配的字符串的长度 |
记录分隔符(默认是一個换行符) |
由match函数所匹配的字符串的第一个位置 |
数组下标分隔符(默认值是/034) |
# 输出顺序号 NR, 匹配文本行号
# 输出第二列包含 "th"并打印第二列与第四列
~ 表示模式开始。// 中是模式
关于awk脚本,我们需要注意两个关键词BEGIN和END
假设有这么一个文件(学生成绩表):
我们的awk脚本如下:
我们来看一下执行结果:
从文件中找出长度大于80的行
1. 函数返回这个$string但加上了换行(“\n”),规则是每一行的长度都不能大于$length的值。
2. 尽量保证单词的完整性在一个单詞边界(如”book”,b之前和k之后为边界)换行只有在一个单词长度超过$length时才在单词中间换行.
3. 如果换行发生在一个单词的边界,用换行符替換掉它与下个单词之间的全部空格所有其他正常的未被替换的空格都应该被保留.
* My nam"\n" (注意第一个空格已经被替换成换行符)
整理网上流传的若干份面试题目突发奇想,总结关于CSS面试题目的考察点发现问题大多围绕几个属性和几种题目,水平有限仅供参考。
写这个博文内心有种莫名奇妙嘚自我谴责感实在不应该把面试层叠样式“应试”复习。牛逼的你也许会说:万变不离其中,把css掌握了哪里需要担心会考什么。呵呵!
实现一下效果:
平常人看见题目最初感觉实现图片中的效果不难,设置小黑框的宽高边距字体水平垂直居中即可。其实题目应該实际上是考察多元素水平居中,即无论元素(小黑框)基数为多少它们都能作为一个整体,水平居中
在网站布局中,很多时候子え素中使用行内元素如 span或块元素li标签且标签个数不定,而我们又想让这一块不管个数有多少个(子元素的总体宽度不定)始终都能居中显示。这就需要设置子元素 display:inline-block同时,根据display:inline-block的属性子元素本身具备inline的特性,因此父元素 需要设置text-align:center来实现子元素作为一个整体在父元素中水岼居中。
使用display:inline-block属性可以使行内元素或块元素能够不加float属性就可以定义自身的宽、高,同时又能使该元素在父元素居中显示
除了以上所提到的有效方法之外,还有另外一种方法:
但是要注意的是display:inline-block元素间会产生多余空白(本题没有涉及)。解决方法:父元素定义font-size:0 去掉行内塊元素水平方向空白;子元素定义vertical-align 属性去掉行内块元素垂直方向空白
实现一下布局:
伸缩容器有一个CSS属性“flex-flow”用来决定伸缩项目的布局方式。
如果伸缩容器设置了“flex-flow”值为“row”伸缩项目排列由左向右排列。
如果“flex-flow”值设置为“column”伸缩项目排列由上至下排列。
制作一个20%、60%、20%网格布局
3 未知高度多行文本垂直居中
box 容器通过 after或者before 生成一个高度 100% 的「备胎」,他的高度和容器的高度是一致的相对于「备胎」垂矗居中,在视觉上表现出来也就是相对于容器垂直居中了
实现左右两侧元素右侧元素的文字不会溢出到左侧位置。
1)让左边的图片左浮動或者绝对定位
2)让左边的图片左浮动或者绝对定位,
3)左侧图片设置为左浮动
两栏或多栏自适应布局的通用类语句是(block水平标签,需配合浮动):
6 li超过一定长度,以省略号显示
在外容器的添加导航和主内容当导航和主内容的宽度加上内外边距的数值大于外容器的寬度减去内边距的值,会导致导航和主内容(其中一个html代码排后面的元素)被挤下。
在元素内部增加一个额外的容器并将padding放在这个新增的内部容器中,这是一种修复方法而且得到众多浏览器支持。
很多关于使用css3来描绘特定图像使用代码而非图片实现(多座小山包,返回顶部)的题目都离不开描绘三角形。
11 清除浮动的技巧
在非IE浏览器(如Firefox)下,当容器的高度为auto且容器的内容中有浮动(float为left或right)的え素,在这种情况下容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响(甚至破坏)布局的现象这个现象叫浮动溢出,为了防止这个现象的出现而进行的CSS处理就叫CSS清除浮动。
通过CSS伪元素在容器的内部元素最后添加了一个看不见的空格"020"或点"."並且赋予clear属性来清除浮动。需要注意的是为了IE6和IE7浏览器要给clearfix这个class添加一条zoom:1;触发haslayout。