精华内容
下载资源
问答
  • Linux删除文件

    万次阅读 2019-02-20 14:23:39
    Linux删除文件 使用命令sed sed -i "nd" filename 如果想要删除最后一,但是不知道文件一共几行,可以通过 cat filename | wc -l 获取总行数,再删除,或者直接使用命令 sed -...

    Linux删除文件某一行

    • 使用命令sed
      sed -i "nd" filename

    如果想要删除最后一行,但是不知道文件一共几行,可以通过 cat filename | wc -l 获取总行数,再删除,或者直接使用命令 sed -i "$d" filename 删除最后一行

    例子:

    $ ls
    test.txt
    $ more text.txt
    first
    second
    thrid
    forth
    fifth
    $ # 备份原文件
    $ cp test.txt test.txt.bak
    $ # 删除test.txt的第一行
    $ sed -i "1d" test.txt
    $ more test.txt
    second
    thrid
    forth
    fifth
    $ # 还原文件
    $ cp test.txt.bak test.txt
    $ # 删除test.txt的第三行
    $ sed -i "3d" test.txt
    $ more test.txt
    first
    second
    forth
    fifth
    $ # 还原文件
    $ cp test.txt.bak test.txt
    $ # 删除test.txt的最后一行
    $ sed -i "$d" test.txt
    $ more test.txt
    first
    second
    thrid
    forth
    

    mac上,sed的使用方法略有不同,参见:
    https://www.cnblogs.com/meitian/p/5907562.html

    展开全文
  • 如果有一个abc.txt文件,内容是: aaa bbb BATBUSINESSTYPE, INSIDEID–) ONLINE; INSIDEID–) ONLINE ccc ddd eee fff 如果要删除ddd,那么脚本可以这样写: sed -i '/ddd/d' abc.txt 如果删除的是一个变量的值,...

    如果有一个abc.txt文件,内容是:
    aaa
    bbb
    BATBUSINESSTYPE, INSIDEID–) ONLINE;
    INSIDEID–) ONLINE
    ccc
    ddd
    eee
    fff

    如果要删除ddd,那么脚本可以这样写:

    sed -i '/ddd/d' abc.txt
    

    如果删除的是一个变量的值,假如变量是var,应该写:

    sed -i '/'"$var"'/d' abc.txt
    

    ————————————————
    删除:d命令

     sed '2d' example
    -----删除example文件的第二行。
    
    sed '2,$d' example
    -----删除example文件的第二行到末尾所有行。
    
    $ sed '$d' example-----删除example文件的最后一行。
    
    $ sed '/test/'d example-----删除example文件所有包含test的行。
    

    ————————————————

    替换:s命令

     sed 's/test/mytest/g' example
    

    -----在整行范围内把test替换为mytest。如果没有g标记,则只有每行第一个匹配的test被替换成mytest。

    $ sed -n 's/^test/mytest/p' example
    

    -----(-n)选项和p标志一起使用表示只打印那些发生替换的行。也就是说,如果某一行开头的test被替换成mytest,就打印它。

     sed 's/^192.168.0.1/&localhost/' example
    

    -----&符号表示替换换字符串中被找到的部份。所有以192.168.0.1开头的行都会被替换成它自已加 localhost,变成192.168.0.1localhost。

    $ sed -n 's/loveloveable/\1rs/p' example
    

    -----love被标记为1,所有loveable会被替换成lovers,而且替换的行会被打印出来。

    $ sed 's#10#100#g' example
    

    -----不论什么字符,紧跟着s命令的都被认为是新的分隔符,所以,“#”在这里是分隔符,代替了默认的“/”分隔符。表示把所有10替换成100。
    ————————————————
    原文链接:https://blog.csdn.net/rgb_rgb/article/details/16887937

    展开全文
  • linux删除文件中含有字符的

    千次阅读 2019-04-21 15:12:21
    linux删除文件中含有字符的
                    sed -i -e '/string/d' file


    脚本,从键盘输入删除含某字符行


    #!/bin/shFILENAME=file.txt   # 可换为$1if [ ! -f file.txt ];then        echo "$FILENAME no found"        exit 1fiecho -n "INPUT SOME THING: "readif [ ! -z "$REPLY" ];then     INFO=$(grep $REPLY FILENAME)     if [ ! -z "$INFO" ] ; then          sed -i -e '/$REPLY/d' FILENAME   #删除只用这行就可以了     else          echo "没有指定内容的信息"          exit 1     fielse      echo "input some thing"     exit 1fiexit $? 


               
    展开全文
  •   linux uniq命令怎样将文件中一列重复的行删除?     例如文件 number1.txt 中存储了你的电话簿信息,其中第一列是联系人,第二列是手机号码。电话簿中存在一个人有多个手机号码的情况,但你只想让每个人仅...


      linux uniq命令怎样将文件中某一列重复的行删除?


      例如文件 number1.txt 中存储了你的电话簿信息,其中第一列是联系人,第二列是手机号码。电话簿中存在一个人有多个手机号码的情况,但你只想让每个人仅保留一个手机号码,将多余的手机号去除。

    number1.txt :

    Li 13800001115
    Li 13800001112
    Zhang 13800001118
    Wang 13800001112
    Zhang 13800001114
    Wu 13800001113
    

    这时候可以分三步完成:
    第一步,将你要筛选的列放到最后,方便排重

    awk '{printf("%s %s\n", $2, $1)}' number1.txt > number2.txt
    

    number2.txt :

    13800001115 Li
    13800001112 Li
    13800001118 Zhang
    13800001112 Wang
    13800001114 Zhang
    13800001113 Wu
    

    第二步,利用 sort + uniq 命令去除重复的行

    sort -k 2 number2.txt | uniq -f 1 > number3.txt
    

      sort -k 2 是将 number2.txt 根据第二列的值进行排序,列的分隔符默认是空白字符。 在使用 uniq 命令前先需要排序,因为当重复的行并不相邻时,uniq 命令是不起作用的。 uniq -f 1 选项是 比较时跳过前 1 列,这样就能根据第2列的值是否相同去排重了。

    number3.txt :

    13800001112 Li
    13800001112 Wang
    13800001113 Wu
    13800001114 Zhang
    

    第三步,还原文件格式

    awk '{printf("%s %s\n", $2, $1)}' number3.txt > number1.txt
    

    number1.txt :

    Li 13800001112
    Wang 13800001112
    Wu 13800001113
    Zhang 13800001114
    

      最终大功造成啦!可能你的文件中每一列使用的分隔符不是默认的空白符,这时候也不用担心,你完全可以用 awk 命令将你的分隔符替换成空白符即可,同样,还原的时候只需要执行逆过程而已。

    展开全文
  • 如果有一个abc.txt文件,内容是: aaa bbb BATBUSINESSTYPE, INSIDEID–) ONLINE; INSIDEID–) ONLINE ccc ddd eee fff 如果要删除ddd,那么脚本可以这样写: sed -i '/ddd/d' abc.txt 如果删除的是一个变量的值,...
  • 1.删除前两 sed -i '1,2d' filename 2.删除后两 sed -i '$d' filename sed -i '$d' filename 这是我能想到的最简单的写法,有更简单方法的可以评论分享一下 ...
  • linux shell脚本删除某(sed)

    千次阅读 2017-09-21 09:44:43
    如果有一个abc.txt文件,内容是:  aaa  bbb  ccc  ddd  eee  fff  如果要删除aaa,那么脚本可以这样写:  sed -i '/aaa/d' abc.txt  如果删除的是一个变量的值,假如变量是var,应该写成:  sed...
  • 1、先打开某个文件:  vim 123.txt 2、转到文件结尾  在命令模式输入 G ...5、删除第10到第20的内容:先用20G转到第20,然后使用下面命令:  :9, .d 6、关于删除的一些说明:  ...
  • 如果有一个abc.txt文件,内容是: aaa bbb BATBUSINESSTYPE, INSIDEID--) ONLINE; INSIDEID--) ONLINE ccc ddd eee fff 如果要删除ddd,那么脚本可以这样写: sed -i '/ddd/d' abc.txt 如果删除的...
  • 删除第一 sed -i '1d' filename 范围删除删除1-3 sed -i '1,3d' filename 删除第n sed -i 'nd' filename 删除最后一 sed -i '$d' filename
  • linux删除指定的

    万次阅读 2012-05-02 17:15:25
    #!/bin/sh FILENAME=file.txt # 可换为$1 if [ ! -f file.txt ];then echo "$FILENAME no found" exit 1 fi echo -n "INPUT SOME THING: " read if [ ! -z ”$REPLY“ ];then INFO=$(grep $REPLY
  • Linux删除文件中包含有关键字的

    千次阅读 2020-05-11 10:18:39
    sed -i -e '/string/d' fine
  • 1,删除文本中 例如文本test.txt 如果需要删除end这一:sed -i ‘/end/d’ test.txt 2,如果需要替换test.txt:sed ‘s/end/sss/g’ test.txt 3,还原错误删除的:sed ‘s/sss/ /g’ test...
  • Linux 删除正则匹配

    千次阅读 2011-07-12 11:23:27
    sed -i '/[^a-zA-Z0-9\.\-]/d' domain.txt
  • linux的sed工具是十分强大的,能很...一、在某行的前一行或后一行添加内容 具休操作如下: #匹配行前加 sed -i '/allow 361way.com/iallow www.361way.com' the.conf.file #匹配行前后 sed -i '/allow 361w...
  • #!/bin/bash #----------------------------------------# # 角本描述:批开退订用户处理 ...# 执 :凌晨6点 # #----------------------------------------# #处理文件路径 FILE_PATH='/data/
  • LinuxShell中删除文件中的方法

    万次阅读 2015-07-02 10:44:32
    如果有一个abc.txt文件,内容是:  aaa  bbb  ccc  ddd  eee  fff  如果要删除aaa,那么脚本可以这样写:  sed -i '/aaa/d' abc.txt  如果删除的是一个变量的值,假如变量是var,应该写成:  sed...
  • Linux 删除文件中匹配的

    千次阅读 2020-09-08 11:54:44
    就不能一下拉到底一起复制,所以就研究了下,Linux 可以通过命令,删除文件中匹配到的。 seq sed -i ‘/preSql/d’ a.txt 删除匹配到preSql的 sed -i ‘1d’ a.txt 删除第一 sed -i ‘3~2d
  • Linux sed在某行前一行和后一行添加内容 linux的sed工具是十分...一、在某行的前一行或后一行添加内容 具休操作如下: #匹配行前加 sed -i '/allow 361way.com/i\allow www.361way.com' the.conf.file #匹配行...
  • linux/windows批量删除csv文件第一

    千次阅读 2019-07-01 18:22:25
    需要批量删除某文件夹下所有csv文件或者txt文件第一 方法 将该文件夹导入到linux系统; 打开命令窗口,cd到该文件夹下 运行如下命令 #删除该文件夹下所有csv文件的第一 sed -i "1d" *.csv #删除该...
  • Linux下,如果想要删除目录及其子目录下某种类型文件,比如说所有的txt文件,则可以使用下面的命令: [html]   view plain copy find . -name "*.txt" -type ...
  • 删除目录下所有以.tar.gz结尾的文件 find . -name ‘*.tar.gz’ -type f -print -exec rm -rf {} ; (1) “.” 表示从当前目录开始递归查找 (2) “ -name ‘*.tar.gz’ "根据名称来查找,要查找所有以.tar.gz结尾的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 59,037
精华内容 23,614
关键字:

linux删除txt某行

linux 订阅