Add new uuid to each line of a file using sed or equivalent command

前端 未结 3 1459
说谎
说谎 2021-01-27 02:19

I\'ve got a multi line text file that I want to use to create an SQL statement that requires a UUID. I\'m attempting to come up with a way to generate the SQL using sed or some

3条回答
  •  半阙折子戏
    2021-01-27 02:29

    This might work for you:

    echo -e 'a\nb\nc' | 
    sed 's/.*/uuidgen;echo "&"/' | 
    sh | 
    sed 'N;s/^\(.*\)\n\(.*\)/insert into table values('\''\1'\'',\2);/'
    insert into table values('c9939dfe-5a74-465a-b538-66aeba774b6b',a);
    insert into table values('da6684f2-3426-4561-b41d-7b507d2d79ee',b);
    insert into table values('23c72ef5-2a50-4a09-b964-83eea3c54e83',c);
    

    or using GNU sed:

    echo -e 'a\nb\nc' | 
    sed 'h;s/.*/uuidgen/e;G;s/^\(.*\)\n\(.*\)/insert into table values('\''\1'\'',\2);/'
    insert into table values('ac1a130c-50a3-43ce-8d41-987ca0d942b7',a);
    insert into table values('59426b2f-cf03-4233-bcc2-3ce05c47bece',b);
    insert into table values('fdec75d6-313e-48c4-adfb-335721a0f6e7',c);
    

提交回复
热议问题