zoukankan      html  css  js  c++  java
  • csplit命令

    csplit命令

    csplit命令将用PATTERN分隔的FILE文件输出到文件xx00xx01...,并将每个文件的字节数输出到标准输出。

    语法

    csplit [OPTION]... FILE PATTERN...
    

    参数

    • -b, --suffix-format=FORMAT: 使用sprintf FORMAT格式而不是%02d
    • -f, --prefix=PREFIX: 使用PREFIX代替xx
    • -k, --keep-files: 出错时不要删除输出文件。
    • -m, --suppress-matched: 取消匹配PATTERN的行。
    • -n, --digits=DIGITS: 使用指定的数字位数,而不是2
    • -s, --quiet, --silent: 不要打印输出文件大小的计数。
    • -z, --elide-empty-files: 删除空输出文件。
    • --help: 输出帮助信息。
    • --version: 输出版本信息。

    模式

    如果文件被指定为破折号-csplit将读取标准输入,每种模式可能是:

    • INTEGER: 复制到指定行号,但不包括指定行号。
    • /REGEXP/[OFFSET]: 复制到但不包括匹配行。
    • %REGEXP%[OFFSET]: 跳至但不包括匹配行。
    • {INTEGER}: 重复上一个模式指定的次数。
    • {*}: 尽可能多次重复前面的模式。

    示例

    list.txt文件内容如下:

    1. Apples
    2. Bananas
    3. Oranges
    4. Pineapples
    5. Guava
    

    使用csplit命令将此文件分为两部分,第二部分从第三行开始。

    csplit list.txt 3
    # 21
    # 34
    
    cat xx00
    # 1. Apples
    # 2. Bananas
    
    cat xx01
    # 3. Oranges
    # 4. Pineapples
    # 5. Guava
    

    使用csplit命令将此文件分为三部分。

    csplit list.txt 2 3
    # 21
    # 34
    
    cat xx00
    # 1. Apples
    
    cat xx01
    # 2. Bananas
    
    cat xx02
    # 3. Oranges
    # 4. Pineapples
    # 5. Guava
    

    使用自定义的分割前缀aa代替xx分割前缀。

    csplit list.txt -f aa 3
    # 21
    # 34
    
    ls
    # aa00  aa01 list.txt
    

    使用三位数字代替默认的两位数字。

    csplit list.txt -n 3 3
    # 21
    # 34
    
    ls
    # list.txt  xx000  xx001
    

    使用模式定义分割规则,重复上一个模式指定的次数。

    csplit list.txt 2 {1}
    # 10
    # 22
    # 23
    
    ls xx*
    # xx00  xx01  xx02
    

    每日一题

    https://github.com/WindrunnerMax/EveryDay
    

    参考

    https://www.computerhope.com/unix/ucsplit.htm
    https://www.runoob.com/linux/linux-comm-csplit.html
    https://www.geeksforgeeks.org/csplit-command-in-linux-with-examples/
    
  • 相关阅读:
    P1410 子序列 (动态规划)
    P2085 最小函数值 (堆)
    [ZJOI2007]棋盘制作 (单调栈,动态规划)
    [ZJOI2005]午餐 (贪心,动态规划)
    黑匣子_NOI导刊2010提高 (对顶堆)
    [BZOJ1455] 罗马游戏 (左偏树||并查集)
    P1651 塔 (动态规划)
    两类斯特林数 (组合数学)
    从编程到工程
    失败的过程也是过程
  • 原文地址:https://www.cnblogs.com/WindrunnerMax/p/13967947.html
Copyright © 2011-2022 走看看