分隔符

awk

南笙酒味 提交于 2020-03-04 22:58:51
1.awk语法格式 awk [options] 'commands' filename awk [options] -f awk-script-file filenamesBEGIN行处理前动作 {}行处理 END行处理后动作BEGIN{print 1/2} {print "ok"} END{print "Over"}如:awk 'BEGIN{print 1/2} {print "ok"} END{print "Over"; print "Over2"}' /etc/passwd匹配awk 'pattern' filenameawk '/root/' /etc/passwd处理动作awk '{action}' filenameawk -F: '{print $1}' /etc/passwd匹配+处理动作awk 'pattern {action}' filenameawk 'BEGIN{FS=":"} /root/ {print $1,$3}' /etc/passwd加判断语句df | awk '/\boot/ {if ($2 < 300000) {print "1"} else {print "2"}}' 2. awk的工作原理 awk将文件中的每一行作为输入,awk会将每一行赋给内部变量$0,以换行符结束 awk开始进行字段分解,每个字段存储在已编号的变量中,从$1开始

Java的File类浅析

大城市里の小女人 提交于 2020-03-04 12:32:52
File类,输入输出流基本上是离不开File类的。 File类里面常用的构造方法 File(String pathname) File(File parent, String child) File(String parent, String child) File(URI uri) 常用实例方法 canRead() canWrite() canExecute() delete() getAbsolutePath() getName() getParent() isFile() isDirectory() mkdir() length() 代码示例。 注意:在Windows中用"\"来分割路径,但是在java代码里面可以用"/"来分割Windows的路径,不会错,而且不需要转义。 import org.testng.annotations.Test; import java.io.File; import java.io.IOException; public class FileDemo { @Test public void fileTest() throws IOException { //获取操作系统默认的文件路径分隔符 String sp = File.separator; System.out.println("The name separater on Windows

C#中的格式

狂风中的少年 提交于 2020-03-03 06:55:58
基本内容是:可以在 Console.WriteLine (以及 String.Format ,它被 Console.WriteLine 调用)中的格式字符串内的括号中放入非索引数字的内容。格式规范的完整形式如下: { index [, width ][: formatstring ] } 其中, index 是此格式程序引用的格式字符串之后的参数,从零开始计数; width (如果有的话)是要设置格式的字段的宽度(以空格计)。 width 取正数表示结果右对齐,取负数则意味着数字在字段中左对齐。(请参阅下面的前两个示例。) formatstring 是可选项,其中包含有关设置类型格式的格式说明。如果对象实现 IFormattable , formatstring 就会传递给对象的 Format 方法(在 Beta 2 和后续版本中,该方法的签名变为 ToString(string, IFormatProvider) ,但功能不变)。如果对象不实现 IFormattable ,就会调用 Object.ToString() ,而忽略 formatstring 。 另请注意,在 Beta 1 中不区分当前语言的 ToString 在 Beta 2 和后续版本中“将”区分语言。例如,对于用“.”分隔千位,用“,”分隔小数的国家,1,234.56 将会格式化成 1.234,56

转:数字格式化

倖福魔咒の 提交于 2020-03-03 06:54:32
转自: http://www.cnblogs.com/jinluo/archive/2008/03/26/1122398.html C#中的数字格式化、格式日期格式化 字符串格式化这部分内容是我们经常用到的,如“2008-03-26”日期格式、“28.20”数字格式。 举一个例子,我们有时需要将订单号“12”显示为“00000012”这种样式(不足8位前面补0),就可以使用下面的方法: int originalCode = 12 ; Response.Write( string .Format( " {0:00000000} " , originalCode)); 或者 int originalCode = 12 ; Response.Write(originalCode.ToString( " 00000000 " )); 又如我们在使用日期做为某种关键字时,比如图片的文件名,一般是到秒级,如“ 20080326082708 ” Response.Write(DateTime.Now.ToString( " yyyyMMddHHmmss " )); // 输出:20080326082708 这样如果并发操作比较多的话,就会产生文件重名的现象。我们可以将日期精确到1/10000000秒,这样的话重名的可能性就很小了。 Response.Write(DateTime.Now

Python系统模块os

二次信任 提交于 2020-03-02 21:25:04
在昨天的文章里,我们说到,python官方库中比较重要的两个模块是sys和os,然后在昨天的文章中列出了几个sys模块内部函数的用法。今天我们来看一下另外一个重要模块os的用法。 os模块是直接和系统调用或者说系统提供的api打交道的模块,因此可以把它的功能分为3大类,分别是: POSIX工具,即处理文件系统相关的功能 提供跨平台能力的功能或函数 运行系统命令相关的函数 下面我们来一一看这些功能常用的函数有哪些。 1. 文件系统处理相关函数 一般在做文件或目录操作的时候,最常用的基本都是增删改查,os模块提供了对应的函数如下: os.remove() 删除文件 os.rename() 重命名文件或目录 os.mkdir() / os.makedirs() 创建单个目录 / 创建多级目录 os.rmdir() / os.removedirs() 删除空目录 / 删除多级空目录 os.copy('_dir', 'newfile') 复制文件或目录到新的目录中, os.listdir() 显示当前目录下的文件或目录,如果参数是路径,那么显示这个路径下的文件。 os.chdir('/path/to/new/dir') 切换当前工作目录到新的工作目录 在上面的代码中我们可以看到,os模块提供了对文件的修改、删除和查询方法,对目录提供了创建、删除、修改和删除的方法。但是没有创建文件的方法

oc swift 时间通用

旧城冷巷雨未停 提交于 2020-03-02 08:32:52
//实例化一个NSDateFormatter对象 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; //设定时间格式,这里可以设置成自己需要的格式 [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; //用[NSDate date]可以获取系统当前时间 NSString *currentDateStr = [dateFormatter stringFromDate:[NSDate date]]; //输出格式为:2010-10-27 10:22:13 NSLog(@"%@",currentDateStr); //alloc后对不使用的对象别忘了release [dateFormatter release]; ///根据时间字符串获得当前星期几-- -(void)GetTime { //根据字符串转换成一种时间格式 供下面解析 NSString* string = @"2013-07-16 13:21"; NSDateFormatter *inputFormatter = [[[NSDateFormatter alloc] init]autorelease]; [inputFormattersetDateFormat:@"yyyy-MM-dd HH

python之字符串的分割和拼接

ε祈祈猫儿з 提交于 2020-03-01 14:26:42
关于string的split 和 join 方法 对导入os模块进行os.path.splie()/os.path.join() 貌似是处理机制不一样,但是功能上一样。 1. string.split(str=' ',num=string.count(str)):  以str为分隔,符切片string,如果num有指定值,则仅分隔num个子字符串。 S.split([sep [,maxsplit]]) -> 由字符串分割成的列表 返回一组使用分隔符(sep)分割字符串形成的列表。如果指定最大分割数,则在最大分割时结束。 如果分隔符未指定或者为none,则分隔符默认为空格。 注意:分隔符不能为空,否则会出错, 但是可以有不含其中的分隔符 。 os.path.split() os.path.split是按照路径将文件名和路径分割开,比如d:\\python\\python.ext,可分割为['d:\\python', 'python.exe'] import os print os.path.split('c:\\Program File\\123.doc') print os.path.split('c:\\Program File\\') -----------------output--------------------- ('c:\\Program File', '123

(5)awk划分字段的3种方式

时间秒杀一切 提交于 2020-03-01 13:45:28
详细分析awk字段分割 awk读取每一条记录之后,会将其赋值给 $0 ,同时还会对这条记录按照 预定义变量FS 划分字段,将划分好的各个字段分别赋值给 $1 $2 $3 $4...$N ,同时将划分的字段数量赋值给 预定义变量NF 。 引用字段的方式 $N引用字段: N=0:即$0,引用记录本身 0<N<=NF:引用对应字段 N>NF:表示引用不存在的字段,返回空字符串 N<0:报错 可使用变量或计算的方式指定要获取的字段序号。 [root@docker-01 ~]# awk '{n = 5;print $n}' a.txt email abc@qq.com def@gmail.com aaa@163.com bbb@189.com ccc@xyz.com ddd@139.com exdsa@189.com bax@qq.com bc@sohu.com bcbd@139.com [root@docker-01 ~]# awk '{print $(2+2)}' a.txt # 括号必不可少,用于改变优先级 age 28 24 21 21 18 22 25 20 23 27 [root@docker-01 ~]# awk '{print $(NF-3)}' a.txt gender male female male male male female female male female

带分隔符的字符串翻转单词

若如初见. 提交于 2020-03-01 13:28:23
1、题目描述:  对一行给定的字符串进行反转输出,同时去除中间不满足条件的分隔符输入字符串:I am an 20-years out--standing @ * -stu- dent,去除分割符并反转之后,输出字符串(子字符串以一个空格隔开):dent stu standing out 20-years an am I 分割符描述如下: 1、除了字母、数字和 - 之外,其他的都是分割符,如输入字符串中的@ *等都属于分割符 2、20-years中的'-' 表示的是连接符,即当‘-’两边都有字母、数字时,‘-’就属于连接符,否则属于分割符 3、out--standing中的‘--’表示分割符,应该拆分为两个字字符串out 和 standing 2、思路:剑指offer翻转单词变种   由于字符串中含有分割符,因此要去掉分隔符。   首先,需要去除字符串中的分隔符:借助栈stack来实现,依次遍历字符串中的元素,并插入stack中。字母数字直接插入;分割符不插入;空格需判断栈顶是否有空格再插入;“-”要判断前后元素是否为字母或数字来判断是否为分隔符。   然后,将栈中的元素依次弹出,即实现了翻转,又去掉了分隔符。   最后,将字符中的每个单词进行翻转,这就是剑指offer中的翻转单词的一步。 3、代码实现: 来源: https://www.cnblogs.com/guoyu1/p

StringTokenizer类的使用

余生颓废 提交于 2020-03-01 12:27:15
StringTokenizer是一个用来分隔String的应用类,相当于VB的split函数。 1.构造函数 public StringTokenizer(String str) public StringTokenizer(String str, String delim) public StringTokenizer(String str, String delim, boolean returnDelims) 第一个参数就是要分隔的String,第二个是分隔字符集合,第三个参数表示分隔符号是否作为标记返回,如果不指定分隔字符,默认的是:”\t\n\r\f” 2.核心方法 public boolean hasMoreTokens() public String nextToken() public String nextToken(String delim) public int countTokens() 其实就是三个方法,返回分隔字符块的时候也可以指定分割符,而且以后都是采用最后一次指定的分隔符号。 3.多余方法 public boolean hasMoreElements() public boolean hasMoreElements() 这个类实现了Enumeration接口,所以多了这么两个方法,其实根本没有必要实现这个接口