苹果7plus有没有nfc 为什么没有

1200人阅读
linux(54)
转自:/aaronwxb/archive//2145364.html
昨天写一个脚本花了一天的2/3的时间,而且大部分时间都耗在了sed命令上,今天不总结一下都对不起昨天流逝的时间啊~~~
用sed命令在行首或行尾添加字符的命令有以下几种:
假设处理的文本为test.file
在每行的头添加字符,比如&HEAD&,命令如下:
sed 's/^/HEAD&/g' test.file
在每行的行尾添加字符,比如“TAIL”,命令如下:
sed 's/$/&TAIL/g' test.file
运行结果如下图:
几点说明:
1.&^&代表行首,&$&代表行尾
2.'s/$/&TAIL/g'中的字符g代表每行出现的字符全部替换,如果想在特定字符处添加,g就有用了,否则只会替换每行第一个,而不继续往后找了
3.如果想导出文件,在命令末尾加&& outfile_name&;如果想在原文件上更改,添加选项&-i&,如
4.也可以把两条命令和在一起,在test.file的每一行的行头和行尾分别添加字符&HEAD&、“TAIL”,命令:sed '/./{s/^/HEAD&/;s/$/&TAIL/}' test.file
以上其实都还OK,昨天花太多时间,主要因为被处理的文件是用mysql从数据库提取的结果导出来的,别人给我之后我就直接处理,太脑残了= -我一直有点怀疑之所以结果不对,有可能是windows和linux换行的问题,可是因为对sed不熟,就一直在搞sed。。。。。。。
众所周知(= -),window和linux的回车换行之云云,如果你知道了,跳过这一段,不知道,读一下呗:
Unix系统里,每行结尾只有“&换行&”,即“\n”;Windows系统里面,每行结尾是“&换行&&回 车&”,即“\n\r”。一个直接后果是,Unix系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix下打开的话,在每行的结尾可能会多出一个^M符号。
好了,所以我的问题就出在被处理的文件的每行末尾都有^M符号,而这通常是看不出来的。可以用&cat -A test.file&命令查看。因此当我想在行尾添加字符的时候,它总是添加在行首且会覆盖掉原来行首的字符。
要把文件转换一下,有两种方法:
1.命令dos2unix test.file
2.去掉&\r& ,用命令sed -i 's/\r//' test.file
好了,这样处理完,就OK啦!!!
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:543625次
积分:6497
积分:6497
排名:第3411名
原创:93篇
转载:220篇
评论:48条
(1)(1)(4)(3)(2)(1)(6)(2)(3)(6)(3)(1)(2)(4)(3)(8)(23)(2)(6)(41)(35)(28)(48)(14)(5)(8)(6)(6)(1)(6)(2)(25)(6)linux指定行插入文本內容
昨天在linux下的某個文件插入另外一個文件的內容
發現原來awk也可以同樣處理,我承認我不是很熟shell
#如果知道行号可以用下面的方法
sed -i '88 r b.file' a.file
#在a.txt的第88行插入文件b.txt
awk '1;NR==88{system(&cat b.file&)}' a.file & a.file
#如果不知道行号,可以用正則匹配
sed -i '/regex/ r b.txt' a.txt # regex是正则表达式
awk '/target/{system(&cat b.file&)}' a.file & c.file
#sed的話如果不改变源文件,可以去掉-i开关,修改会输出到STDOUT
以下是话题补充:
:希望可以幫到有用的人
话说awk和sed我一直搞不会
--- 共有 1 条评论 ---
我也不是很懂
试着用慢慢理解}

我要回帖

更多关于 苹果7plus没有耳机吗 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信