UNIX中txt文件中的序列号
我想在unix中为文件中的每一行生成一个唯一的序列号。我无法在数据库中创建标识列,因为它有一些其他源,这些源也在其中插入数据。我尝试在awk中使用NR number,但由于我的脚本中有过滤器,它可能会跳过文件中的行,因此我可能无法获得序列号。 我的要求是-这个序列号需要是持久的,因为每天我都会收到这个文件,应该从我离开的地方开始。此外,对于文件中的每一行,数字前面需要加上EMP_u 请建议UNIX中txt文件中的序列号,unix,awk,Unix,Awk,我想在unix中为文件中的每一行生成一个唯一的序列号。我无法在数据库中创建标识列,因为它有一些其他源,这些源也在其中插入数据。我尝试在awk中使用NR number,但由于我的脚本中有过滤器,它可能会跳过文件中的行,因此我可能无法获得序列号。 我的要求是-这个序列号需要是持久的,因为每天我都会收到这个文件,应该从我离开的地方开始。此外,对于文件中的每一行,数字前面需要加上EMP_u 请建议 提前感谢。要在UNIX中获得唯一id,可以使用文件存储和读取值。然而,这种方法非常繁琐,需要文件IO锁定机
提前感谢。要在UNIX中获得唯一id,可以使用文件存储和读取值。然而,这种方法非常繁琐,需要文件IO锁定机制。最简单的方法是使用日期时间获取唯一id示例:
#!/bin/sh
uniqueVal = `date '+%Y%m%d%H%M%S'`
展示你的尝试。您可能每次都需要解析最后一行以获得前一个结束序列号,并使用计数器+++.awk-F |'BEGIN{OFS=|}NR=1{print IMP_NR,$3,$8,$9}'filename>newfile注意print中的NR请将您用作测试语料库的任何样本包括在内,以改进您的问题。此外,还应包括一个格式正确的预期输出示例,以便人们了解您试图实现的结果。如果“=”周围有空格,示例将放大。祝大家好运。