On Mon, 10 Jul 2023 06:44:53 +0000 Sharon Gabay <Sharon.Gabay@xxxxxxxxxxxx> wrote: > I think it would be useful to have two fixes: > - make trace-cmd create the temporary output ("tmp.0.0") using either a > uuid, or the name of the output file itself, or maybe add some suffix to > it. In short, avoid collisions. And the patch pretty much does the above ;-) > - I'm not sure why but "trace-cmd split -o /tmp/a" will actually write to > /tmp/a.1, if possible it would be best to write to the exact name > specified by the user. That was partially due to the default of the output file being the same as the input file, and the '.1' made sure that the two did not collide. But I can modify it to do the following: diff --git a/tracecmd/trace-split.c b/tracecmd/trace-split.c index 1daa847d9775..59df1d02b345 100644 --- a/tracecmd/trace-split.c +++ b/tracecmd/trace-split.c @@ -545,7 +545,7 @@ void trace_split (int argc, char **argv) if (!output) output = strdup(input_file); - if (!repeat) { + if (!repeat && strcmp(output, input_file) == 0) { output = realloc(output, strlen(output) + 3); strcat(output, ".1"); } That is, only add the '.1' if the output file is the same as the input file. -- Steve