在linux中删除ped文件中一列的命令

fiy 其他 63

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux中,可以通过使用`cut`命令来删除ped文件中的一列。`cut`命令用于从文件中提取指定列的数据。

    具体使用方法如下:
    “`
    cut -f –complement
    “`
    其中,``表示要删除的列号,从1开始计数;``表示要操作的文件名。

    例如,假设要删除ped文件中的第3列,可以使用以下命令:
    “`
    cut -f 3 –complement file.ped > new_file.ped
    “`
    该命令会将删除了第3列的内容保存到new_file.ped文件中。

    值得注意的是,`–complement`选项用于保留除指定列之外的所有列。如果不加该选项,则只会提取指定列。

    另外,如果要删除多个列,可以在``中使用逗号分隔的列号,如`1,3,5`。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中删除一个PED(PlainText EDitor)文件中的一列,可以使用以下命令:

    1. 使用 awk 命令:
    “`
    awk ‘{print $1,$3,$4,$5}’ input.ped > output.ped
    “`
    上述命令将输入文件 input.ped 的第1、3、4、5列输出到 output.ped 中,跳过了第2列。

    2. 使用 cut 命令:
    “`
    cut -f1,3-5 input.ped > output.ped
    “`
    上述命令将输入文件 input.ped 的第1,3,4和5列输出到 output.ped 中,跳过了第2列。

    3. 使用 sed 命令:
    “`
    sed ‘s/[^ ]*[ ]//2’ input.ped > output.ped
    “`
    上述命令将输入文件 input.ped 的第2列删除,并将结果输出到 output.ped 中。

    4. 使用 Perl 命令:
    “`
    perl -lane ‘print “$F[0] $F[2] $F[3] $F[4]”‘ input.ped > output.ped
    “`
    上述命令使用 Perl 脚本打印出输入文件 input.ped 的第1、3、4和5列,并将结果输出到 output.ped 中。

    5. 使用 Python 命令:
    “`python
    python -c ‘with open(“input.ped”) as f1, open(“output.ped”, “w”) as f2:
    for line in f1:
    fields = line.split()
    del fields[1]
    f2.write(” “.join(fields) + “\n”)’
    “`
    上述命令使用 Python 脚本打开输入文件 input.ped 和输出文件 output.ped,逐行处理文件,删除第2列,并将结果输出到 output.ped 中。

    请注意,上述命令中的 input.ped 是输入文件的名字,output.ped 是输出文件的名字,请根据实际情况替换成相应的文件名。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux中删除文件的一列,我们可以使用sed命令,它是一种流编辑器,用于从文件中读取数据,并根据给定的规则对数据进行编辑。

    以下是在Linux中使用sed命令删除文件的一列的步骤:

    步骤1:打开终端
    首先,打开终端,可以使用Ctrl + Alt + T组合键打开终端。

    步骤2:使用sed命令删除文件的一列
    使用以下命令格式删除文件的一列:

    sed ‘s/\([^ ]*\) *//1’ 文件名 > 新文件名

    解释:
    – sed:流编辑器命令。
    – ‘s/xxxx/xxxx/1’:指定替换规则。
    – \([^ ]*\):正则表达式,匹配除空格外的任意字符。
    – *:匹配零个或多个空格字符。
    – //:将匹配到的内容替换为空字符,即删除。
    – 1:指定只替换第一个匹配项。
    – 文件名:要操作的文件名。
    – > 新文件名:将结果输出到新文件中(可选)。

    请注意,替换操作将会修改文件内容,而 > 新文件名 的部分可选,如果不需要保存结果到新文件中,则不需要添加。

    示例:
    假设我们有一个名为data.txt的文件,其中包含以下内容:

    1 2 3
    a b c
    x y z

    我们想要删除第二列,可以运行以下命令:

    sed ‘s/\([^ ]*\) *//2’ data.txt

    运行命令后,终端将显示以下结果:

    1 3
    a c
    x z

    如果我们要将结果保存到新文件中,可以使用以下命令:

    sed ‘s/\([^ ]*\) *//2’ data.txt > new_data.txt

    运行命令后,将创建一个名为new_data.txt的文件,其中包含以下内容:

    1 3
    a c
    x z

    这样就完成了删除文件中一列的操作。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部