精华内容
下载资源
问答
  • 2019-08-06 16:25:23

    需要用到shell命令awk

    在前面、后面、指定列添加相同字符

    (1)给一个文件中的每一行开头插入字符的方法:awk '{print "需要添加的字符" $0}' fileName

    (2)给一个文件中的每一行结尾插入字符的方法:awk '{print $0 "需要添加的字符"}' fileName

    (3)给一个文件中的每一行的指定列插入字符的方法:awk '$0=$0 X"' fileName

    删除某一个列

    (1)删除文件中的第一列:awk '{$1="";print $0}' fileName 或者另一种方法 sed -e 's/[^ ]* //' text

    (2)删除指定列:awk '{$Num="";print $0}' fileName

    把Num换成要删除的列数即可

     

    需求:

     

    由于hive表中有大量的临时表,所以决定要想删除它们,这些表全是以t_开头。

    因为hive的shell客户端不支持以某个字符开头或以正则表达式删除表,要么一个一个删,要么使用Java程序查出来再删。

     

    操作过程:

    1.把表全显示出来

    show tables

    2.把你要的表名复制到一个文件中

    3.给文件中的每一行开头添加drop tables

    awk '{print "drop table "$0}' aa.txt > bb.txt

    4.给文件中的每一行结尾添加分号

    awk '{print $0";"}' bb.txt > cc.txt

    5.直接复制到hive的shell客户端执行即可

     

    样子看看:

    drop table t_131760;

    drop table t_131760_1;

    drop table t_131761_1;

    drop table t_131761_2;

    更多相关内容
  • 现在我们要指定删除包含字符串(lisi)这一行字符串(feichang) sed -r ‘s@lisi(.)feichang(.)@lisi\1\2@’ test.txt 如上图显示,这样lisi这一行的(feichang)就被删掉了 当然这样匹配其他位置的也可

    现在有一个文件里面有多行相似内容
    例如
    test.txt
    zhangsan=zheren,feichang,youqian
    lisi=zheren,feichang,youqian
    laowang=zheren,feichang,youqian

    现在我们要指定删除包含字符串(lisi)这一行的字符串(feichang)
    sed -r ‘s@lisi(.)feichang(.)@lisi\1\2@’ test.txt

    如上图显示,这样lisi这一行的(feichang)就被删掉了
    当然这样匹配其他位置的也可以比如删除字符串(zhren)

    这里有一个简单的例子:

    $ echo ‘abcabcabc’ | sed ‘s/(ab)c/\1/’
    ababcabc
    $ echo ‘abcabcabc’ | sed ‘s/(ab)c/\1/g’
    ababab
    $ echo ‘abcabcabc’ | sed ‘s/(ab)(c)/\1d\2/g’
    abdcabdcabdc
    在第一个命令中,只有第一个匹配受到影响。在第二个命令中,每个匹配都会受到影响。在这两种情况下,\1指的是由转义括号捕获的字符。

    在第三个命令中,指定了两个捕获组。他们通过使用\1和引用\2。最多可以使用九个捕获组。

    除了g(全局)运算符(或没有它,第一次匹配)之外,你可以指定特定的匹配项:

    $ echo ‘aaaaaa’ | sed ‘s/a/A/4’
    aaaAaa

    (…)将捕获在parens内指定的字符,\1并将用于引用第一个匹配,这是正则表达式的一部分。

    展开全文
  • Shell 删除指定文件中含有指定字符,2个参数,脚本中有注释
  • 学习文章:删除文件每行中前几个字符 替换 1、将old.txt中|替换为,,并重定向到new.txt。原文件old.txt不会改变,产生新的文件new.txt。 sed 's/|/,/g' old.txt > new.txt 2、将old.txt中||替换为(等价于删除...

    学习文章:删除文件每行中前几个字符

    替换
    1、将old.txt|替换为,,并重定向到new.txt。原文件old.txt不会改变,产生新的文件new.txt

    sed 's/|/,/g' old.txt > new.txt
    

    2、将old.txt||替换为(等价于删除文件中的||),原文件old.txt文本内容发生改变。

    sed -i 's/|//g' old.txt
    

    删除每行前几个字符
    1、^.表示开头1个字符,n个.即表示n个字符。

    sed -i 's/^..//g' old.txt  #删除每行前2个字符,old.txt发生改变。不生成新文件。
    

    2、正则表达式

    sed 's/^.\{10\}//g' old.txt > new.txt #删除old.txt中每行的前10个字符,重定向到new.txt。old.txt不发生改变
    

    tips:

    sed -i 's/|/,/g' xxx.txt #添加-i后,命令会修改原文件,且不可重定向或追加 >  >>
    
    cat old.txt > new.txt #将old.txt内容重定向到new.txt中,即复制一个与old.txt内容相同的new.txt文件。
    #若原本无new.txt,则自动生成new.txt。若new.txt已存在,则会发生覆盖
    
    cat old.txt >> new.txt # >> 实现追加功能。打印old.txt中内容追加到new.txt。
    #若原本无new.txt,则自动生成new.txt。若new.txt已存在,则新内容会追加到文件尾部
    
    展开全文
  • 可以将每行字符串clean后面的内容都去掉。 最后结果变为 cd $AICBS22/vgroup/busivpmn/server/atmi/;gmake -f Makefile.test clean 。。。 省略 。。。 cd $AICBS22/vgroup/busivpmn/server/vpmnAsyncNextProd/;...

    文本文件tmp.txt中含有一下内容

    cd $AICBS22/vgroup/busivpmn/server/atmi/;gmake -f Makefile.test clean;gmake -f Makefile.test

    cd $AICBS22/vgroup/busivpmn/server/atmi/test/source/;gmake -f Makefile clean;gmake -f Makefile

    cd $AICBS22/vgroup/busivpmn/server/mgr/;gmake -f Makefile clean;gmake -f Makefile

    cd $AICBS22/vgroup/busivpmn/server/mgr/;gmake -f Makefile.mml clean;gmake -f Makefile.mml

    cd $AICBS22/vgroup/busivpmn/server/mgr/;gmake -f Makefile.res clean;gmake -f Makefile.res

    cd $AICBS22/vgroup/busivpmn/server/pmgr/;gmake -f Makefile clean;gmake -f Makefile

    cd $AICBS22/vgroup/busivpmn/server/pmgr/;gmake -f Makefile.intf clean;gmake -f Makefile.intf

    cd $AICBS22/vgroup/busivpmn/server/releaseVpmnPhone/;gmake -f Makefile clean;gmake -f Makefile

    cd $AICBS22/vgroup/busivpmn/server/svr/;gmake -f Makefile clean;gmake -f Makefile

    cd $AICBS22/vgroup/busivpmn/server/svr/;gmake -f Makefile.svr1 clean;gmake -f Makefile.svr1

    cd $AICBS22/vgroup/busivpmn/server/syncvnextprod/;gmake -f Makefile clean;gmake -f Makefile

    cd $AICBS22/vgroup/busivpmn/server/vpmnAsyncNextProd/;gmake -f Makefile clean;gmake -f Makefile

    请各位老大看看这么写个shell。可以将每行中字符串clean后面的内容都去掉。

    最后结果变为

    cd $AICBS22/vgroup/busivpmn/server/atmi/;gmake -f Makefile.test clean

    。。。

    省略

    。。。

    cd $AICBS22/vgroup/busivpmn/server/vpmnAsyncNextProd/;gmake -f Makefile clean

    解决

    1、

    grep -o ‘.*clean’ tmp.txt

    2、

    sed ‘s/\(.*clean\).*/\1/’ urfile

    3、

    awk -F ‘clean’ ‘{print $1″”FS}’ urfile

    展开全文
  • shell给一个文件中的每一行开头插入字符的方法:awk '{print "X"$0}' fileNameshell给一个文件中的每一行结尾插入字符的方法:awk '{print $0"X"}' fileNameshell给一个文件中的每一行指定列插入字符的方法:awk '...
  • ]删除文件中含特定字符串的[bash]: sed -e '/abc/d'a.txt// 删除a.txt中含"abc"的,但不改变a.txt文件本身,操作之后的结果在终端显示 sed -e '/abc/d'a.txt> a.log// 删除a.txt中含"abc"的,将操作...
  • 由于最近Oracle导出来的sql数据隔300条包含了prompt xx records committed…, mysql无法识别此字符串,有几万条数据,条条手动删除的话很麻烦。用linux 中的 sed可以解决这个问题。 用如下命令删除包含committed...
  • 例如 {info}, {info}, {info}, {info}, 变成 {info}, {info}, {info}, {info} 命令: sed -i '$ s/.$/]/' changeList.txt
  • 删除包含特定字符 sed -e '/abc/d' tt.txt// 删除tt.txt中含"abc"的,但不改tt.txt文件本身,操作之后的结果在终端显示 使用sed命令删除以a字符开头的所有 # sed -i ‘/^a/d’ abc.txt ...
  • 1、将当前目录下包含hello串的文件中,1字符串替换为2 sed -i 's/1/2/g' `grep "1" -rl ./` 2、将某个文件中的hello字符串替换为hi sed -i "s/1/2/g" test.txt ...4、删除行尾空格 sed -i 's/ $//g' test.txt ...
  • [Linux]用sed命令删除行或者字符

    千次阅读 2021-08-12 16:43:08
    用sed命令删除行或者字符、sed命令常用到的两个选项: -i : 直接在文件上编辑 (edit files in place) -e[默认选项]:只在命令行输出,而文件不改变(add the script to the commands to be executed) ...
  • https://blog.csdn.net/cgy8919/article/details/100007671一、在某行(指具体...4atest' test.txt#第4行行首追加一行,内容为testsed -i 'N;4itest' test.txt#匹配到test字段的行行首插入一行find . -name test.t...
  • 文章目录、命令介绍二、常用选项三、命令示例根据指定的字节范围显示指定文件中的内容指定字段分隔符,显示指定字段的内容显示指定字段的内容根据指定字符范围显示指定文件中的内容显示指定字段以外的字段的内容...
  • 【需求】 ...在个1G多大的文本文件中,查找给定的字符串,并删除这些字符串所在的 【解决】 sed -ie '/指定字符串/d' 文件名.log 转载于:https://www.cnblogs.com/ftrako/p/10298545.html...
  • Linux字符截取命令-cut

    千次阅读 2021-05-11 14:29:26
    Linux字符截取命令-cut 做者 | WenasWeihtml Linux之cut命令详解将每一个文件中选定的部分打印到标准输出, 若是没有文件,或者文件是-,则读取标准输入,长选项的强制参数对于短选项也是强制的。nodecut 是个...
  • linux删除文件中含有某字符

    千次阅读 2018-11-13 02:21:28
    linux删除文件中含有某字符
  • sed 删除匹配指定字符

    千次阅读 2019-05-17 16:36:58
    另外,如果想在一行行尾增加字符串,通常是这样做: # sed 's/$/aaa/' file1 # ^表示行首,$表示行尾 但如果将 access_log /usr/local/nginx/logs/$SERVICE_access.log; 改成 access_log /usr/local...
  • linux的sed工具是十分强大的,能很容易的实现在某关键词的前一行或后一行增加内容。今天在批量修改tomcat的日志时就用到了该功能。如下是centos防火墙iptables的规则,以这段规则为例子*filter:INPUT DROP [0:0]:...
  • linux下利用shell在指定添加内容的方法在linux的一些配置中总会要进行某个文件中的某的操作,进行增加,修改,删除等操作。而这里主要是进行的是指定添加数据的操作:脚本如下:sed -i '3i asdf 1.sh' 1....
  • Linux下实现字符串截取方法总结

    千次阅读 2021-05-08 21:38:15
    具体截取方式如下:a、#截取,可以实现删除左边字符,保留右边字符从左边第个>开始,删除>及之前的所有字符str=http://www.baidu.com/index.htmlecho${str#*/}#rightfirst/输出:/...
  •   linux uniq命令怎样将文件中某列重复的行删除?     例如文件 number1.txt 中存储了你的电话簿信息,其中第列是联系人,第二列是手机号码。电话簿中存在个人有多个手机号码的情况,但你只想让个人仅...
  • sed删除指定行

    千次阅读 2022-02-09 14:07:22
    sed命令常用到的两个选项: -i : 直接在文件上编辑 (edit files in place) -e[默认选项]:只在命令行输出,而...删除第N: sed -i 'Nd' filename 删除第N~M: sed -i 'N,Md' filename #file的[N,M]都被删除
  • 1.多行行首插入指定字符串 :1,6 s/^/System.out.println(" :2,$ s/^/System.out.println(" 注:此为2至尾行 :% s/^/System.out.println(" 注:此为所有 2.多行行尾插入指定字符串 :1,6 s/$/"); :2,$ s/...
  • Linux删除整行

    千次阅读 2022-03-04 16:12:32
    1、终端删除整行 Ctrl+u 删除命令行开始至光标处 Ctrl+k 删除光标至命令行结尾 Ctrl+a 光标移到最前 ...X:向前删除一字符(同Backspace) x:向后删除一字符(同Delete) nx:连续向后删除n个字符 ...
  • shell删除文件的最后字符

    千次阅读 2020-09-23 11:21:17
    使用命令sed,命令相关参考 Linux sed 命令 sed [OPTION]… {script-only-if-no-other-script} [input-file]… sed -i '$s/.$//' file_path 效果展示
  • 删除txt等文本文档中指定行方法

    千次阅读 2020-10-24 11:49:30
    问题背景 有txt文件0000.txt,内容如下: 0 -1 DontCare -1 -1 -10.000000 219.310000 188.490000 245.... 步骤3: 点击全部替换即可: 【参考】 1、vim删除包含特定字符串的 2、Notepad++删除指定关键字的
  • sed 命令:指定行,从第一行到第一行;把该行的ssd,换成cd;-i 表示的是替换并直接修改文件;sed -i '1,1s/ssd/cd/g' test_file命令使用:sed -i s/yyyy/xxxx/g `grep yyyy -rl --include="*.txt" ./`作用:将当前...
  • Linux sed命令在指定行前后添加内容

    千次阅读 2021-05-12 15:12:16
    一、在匹配行前后加内容在包含www.baidu.com的行前面或后面添加多一行内容www.qq.com#匹配行前加sed -i '/www.baidu.com/i www.qq.com' domain.file#匹配行后加sed -i '/www.baidu.com/a www.qq.com' domain.file二...
  • 最近在学习Oracle11g...可是MySQL脚本太大,普通文本编辑器无法处理,于是用Linux下的sed老牌流编辑器来做。其中,有段SQL脚本内容如下,INSERT INTO bonusreturnorder VALUES ('47', '224', '1300573', '2', '1

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 204,982
精华内容 81,992
关键字:

linux 删除每一行指定位置的字符

友情链接: STM32_BMP085_PRJ.rar