分隔符

常看 Shell: 文本文件操作

隐身守侯 提交于 2019-11-27 20:42:58
文件显示和信息 wc wc 可以用于统计文件的行数和单词数。 nl nl 在文件的每行内容前面加上行号。 基于行的操作 grep grep 用于筛选匹配特定字符的行。 grep "Hello" : 只显示含有字符串“Hello"的行 grep -v "Hello" : 只显示不含有字符串 "Hello"的行 sort sort 对文件进行排序。默认是按照字典顺序从小到大 sort -n : 按照数值大小,而不是字典顺序,进行排序。 sort -u : 去除重复的行。 sort -k 3 : 按照每行的第三个字段进行排序。默认的分隔符是空格。 uniq uniq 用于去除重复的行。 sed sed 可以看作是一个面向行的编辑器。 awk awk 也是面向行的,但在操作每一行的时候,每行文字自动被分隔为不同的字段(默认用空格作为分隔符)。 基于列的操作 cut cut 从文件中截取相应的列。默认的列分隔符是 tab 字符。 cut -d "|" -f 3-5 t.txt join join 用于合并两个文件。两个文件中具有同样的索引字段的行被组合成一行。join 要求两个文件是根据索引字段排序过的。 join -j 1 a.txt b.txt 杂项 大小写转换 echo $VAR_NAME | tr '[:upper:]' '[:lower:]' echo $VAR_NAME | tr

【Rollo的Python之路】Python Split()函数 的用法

[亡魂溺海] 提交于 2019-11-27 16:38:25
Python Split()函数 Python split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串 split() 方法语法: str.split(str="", num=string.count(str)). 参数 str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。 num -- 分割次数。默认为 -1, 即分隔所有。 返回值 返回分割后的字符串列表。 str = "this is string example....wow!!!" print (str.split( )) # 以空格为分隔符 print (str.split('i',1)) # 以 i 为分隔符 print (str.split('w')) # 以 w 为分隔符 心得:str.split() 可以用来分割取值,JSON格式; 同时也可以用来格式化一些数据 比如: { xxxx:color xxxx:size } #如果想要分开loop出color size这个两个属性,必须要split这个json,然后再来loop 来源: https://www.cnblogs.com/rollost/p/11370439.html

Linux命令: cut

自闭症网瘾萝莉.ら 提交于 2019-11-27 15:39:13
作用:   从名字看,就是cut掉每行中部分列,并默认打印在标准输出上。   不带任何选项的cut命令,是把所有文件连接起来,一起输出到标准输出上。   cut必须至少提供一个选项。 选项:   -d, --delimiter=DELIM 指定域的分隔符。不指定,默认<TAB>。   -f, -fn, 指定显示的列   -b,-bn,指定显示的字节   -c,-cn,指定显示的字符。   -f、-b、-c 都是表示按什么作为一列的表示,其后的n,可以有这几种表示: N-:从第N个字节、字符、字段到结尾; N-M:从第N个字节、字符、字段到第M个(包括M在内)字节、字符、字段; -M:从第1个字节、字符、字段到第M个(包括M在内)字节、字符、字段。 上面是记法,结合下面选项将摸个范围的字节、字符指定为字段:   --complement ,表示指定条件列的其他所有列。是求补集的意思。   --output-delimiter=string , 用这个参数指定的string,替换原文中的列分隔符来显示输出。   -s, --only-delimited,不含列分隔符的行不打印。如a文件内容如下: 12345678 12345 [root@HOSTDJNKWCI master]# cut -d6 -f1 a # 用6做列分隔符,而第二行没有6,仍打印出来。 12345 12345

Python字符串的所有操作

笑着哭i 提交于 2019-11-27 14:15:21
name = 'my name is jack' print(name.capitalize()) #首字母大写 print(name.count('a')) #字符出现次数 print(name.center(50, '*')) #打印50个字符,不足补上* print(name.endswith('!')) #是否以'!'什么结尾 print(name.expandtabs()) #把内部存在的TAB转换为空格的宽度 print(name.find('name')) #返回字符的索引 ''' # 字符串也可以切片 print(name[name.find('name'):]) 输出: #name is jack ''' """ name = 'my name is {name} and my age is {age}!' print(name.format(name = 'jack', age = 28)) 输出: my name is jack and my age is 28! """ name = 'my name is {name} and my age is {age}!' print(name.format_map({'name':'jack', 'age': '28'})) # my name is jack and my age is 28! print

正则表达式和三剑客-2

妖精的绣舞 提交于 2019-11-27 14:03:18
awk 取段(列),不会更改保存文件内容 1. 选项 -F 指定分隔符,默认空格为分隔符 2. 打印输出匹配行 1)类似sed对应的命令 2)匹配某1列或多列中的关健字,打印对应的行 3)符合条件的行(匹配行),打印匹配行的所有列 4)符合条件的行(匹配行),打印匹配行的某些列 3. 打印所有行的某些列 1)打印所有行中的所有列,$0表示所有列 2)打印所有行中多列,格式中列之间用逗号,分隔 3)定义分隔符 4. 打印匹配行中的某些列 5. awk的内置变量 1)NF 表示行的列数 2)NR 表示行号 6. 对文件所有行的某1列做累加 来源: https://www.cnblogs.com/tanzhirong/p/11366780.html

Go bufio库

社会主义新天地 提交于 2019-11-27 13:46:24
bufio.Scanner bufio 包 使处理输入和输出方便又高效。 Scanner 类型是该包最有用的特性之一,它读取输入并将其拆成行或单词;通常是处理行形式的输入最简单的方法。该变量从程序的标准输入中读取内容。每次调用 input.Scanner ,即读入下一行,并移除行末的换行符;读取的内容可以调用 input.Text() 得到。 Scan 函数在读到一行时返回 true ,在无输入时返回 false 。 使用DEMO: func main(){ scanner:=bufio.NewScanner( strings.NewReader("ABCDEFG\nHIJKELM"), ) for scanner.Scan(){ fmt.Println(scanner.Text()) // scanner.Bytes() } } 理解:对于Scanner.Scan方法,相当于其他语言的迭代器iterator,并把迭代器指向的数据存放到新的缓冲区里。新的缓冲区(token)可以通过scanner.Text()或者scanner.Bytes()获取到。 Scanner.Scan方法默认是以换行符 \n ,作为分隔符。如果你想指定分隔符,Go语言提供了四种方法,ScanBytes( 返回单个字节作为一个 token ), ScanLines( 返回一行文本 ), ScanRunes(

xargs,rename,awk,cut,seq,bc,cal

天大地大妈咪最大 提交于 2019-11-27 13:40:10
文章目录 xargs命令 rename 命令 awk命令 cut 命令 seq命令 bc 命令 cal命令 last,lastlog命令 xargs命令 [root@oldboyedu oldboy]# cat file a b c d e f g h i j k l m n o p q r s t u v w x y z [root@oldboyedu oldboy]# cat file | xargs a b c d e f g h i j k l m n o p q r s t u v w x y z xargs的默认命令是echo,空格是默认定界符。这意味着通过管道传递给xargs的输入会包含换行和空白。不过通过xargs的处理,换行和空白将被 空格取代 -n -n选项,指定 输出时每行输出的列数 -d选项,自定义列分割符 [root@oldboyedu oldboy]# echo “a/b/c#d/e/f” | xargs -d/ a b c#d e f -o -o选项相当于就是用来告诉xargs文件的结束标志已经改成NULL [root@oldboyedu oldboy]# find . -name “hello*” -print0 | xargs -0 rm rename 命令 [root@oldboyedu oldboy]# rename txt py 9.txt

python内置函数字符串

孤者浪人 提交于 2019-11-27 12:21:48
一、字符串定义初始化 s1 = 'string' 一个个字符组成的有序的序列,是字符的集合,使用单引号,双引号,三引号引住的字符序列 字符串是不可变的对象,python3起,字符串就是Unicode类型 二、字符串元素访问 1、 字符串支持使用索引访问 sql = "select * from user where name='tom'" sql[4] 字符串访问 sql[4] = 'o' 字符串赋值能否成功? (不能赋值) >>> sql = "select * from user where name='tom'" >>> sql "select * from user where name='tom'" >>> sql[4] 'c' >>> sql[4] = 'o' Traceback (most recent call last): File "<pyshell#52>", line 1, in <module> sql[4] = 'o' TypeError: 'str' object does not support item assignment >>> 2、有序的字符集合,字符序列可迭代 >>> for x in sql: print(x) 三、字符串join连接 将可迭代对象连接起来,使用string作为分隔符 可迭代对象本身元素都是字符串,返回一个新字符串

[linux] 常用命令及参数-2

纵饮孤独 提交于 2019-11-27 11:12:04
sort 1 sort是把结果输出到标准输出,因此需要输出重定向将结果写入文件 2 sort seq.txt > file.txt 3 sort -u seq.txt 输出去重重复后的行 4 sort -r number.txt 逆向排序 5 sort -r number.txt -o file.txt -o具有输出重定向的作用 6 sort -n number.txt 将数字按照大小排序,而不是按照ASCII码排序 7 sort -n -k 3 -t : seq.txt -t:指定分隔符;-k:指定分隔符分割的字段 8 sort a.txt b.txt | uniq -d 取交集 9 sort a.txt b.txt | uniq 取并集 10 sort a.txt b.txt b.txt | uniq -u 取差集(a-b) 11 sort b.txt a.txt a.txt | uniq -u 取差集(b-a) grep 1 \w 代表字母数字下划线 2 \W 代表非字符 3 \b 单词分隔符 '\bX\b' 4 '[A-Z][a-z]' 一个大写字母加一个小写字母 5 'm..c' 6 '[0-9][0-9]' 两个数字 7 'se\+' +表示重复多次时,要加'\' 8 'se\?' 同上 9 '\(se\)*' 括号也需要加'\' 10 '[0-9]\{2,3\}'

(23)awk

早过忘川 提交于 2019-11-27 10:56:43
AWK是一种优良的文本处理工具。其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母,AWK 提供了极其强大的功能:可以进行样式装入、流控制、数学运算符、进程控制语句甚至于内置的变量和函数。它具备了一个完整的语言所应具有的几乎所有精美特性。实际上 AWK 的确拥有自己的语言:AWK 程序设计语言, 三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。 awk命令格式: awk 'pattern1 {action1} pattern2 {action2} ...' filename 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。 awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。 awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 AWK 的确拥有自己的语言: