Skip to content

Instantly share code, notes, and snippets.

@NanXiao
Created February 17, 2020 10:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save NanXiao/8fa6ddf0fce39992cf6d89a3005560b7 to your computer and use it in GitHub Desktop.
Save NanXiao/8fa6ddf0fce39992cf6d89a3005560b7 to your computer and use it in GitHub Desktop.
#!/usr/bin/awk -f
BEGIN {
FS = ",";
}
function update_array(server_name, ticket)
{
if (length(ticket) != 0)
{
partial_8bytes_array[server_name, substr(ticket, 1, 16)]++;
partial_16bytes_array[server_name, substr(ticket, 1, 32)]++;
partial_32bytes_array[server_name, substr(ticket, 1, 64)]++;
partial_64bytes_array[server_name, substr(ticket, 1, 128)]++;
partial_128bytes_array[server_name, substr(ticket, 1, 256)]++;
partial_256bytes_array[server_name, substr(ticket, 1, 512)]++;
partial_512bytes_array[server_name, substr(ticket, 1, 1024)]++;
full_array[ticket]++;
}
}
{
update_array($5, $3);
update_array($5, $4);
}
END {
printf "Array element number (use full 512 bytes of ticket as key): %d\n", length(full_array);
printf "Array element number (use sever name and first 8 bytes of ticket as key): %d\n", length(partial_8bytes_array);
printf "Array element number (use sever name and first 16 bytes of ticket as key): %d\n", length(partial_16bytes_array);
printf "Array element number (use sever name and first 32 bytes of ticket as key): %d\n", length(partial_32bytes_array);
printf "Array element number (use sever name and first 64 bytes of ticket as key): %d\n", length(partial_64bytes_array);
printf "Array element number (use sever name and first 128 bytes of ticket as key): %d\n", length(partial_128bytes_array);
printf "Array element number (use sever name and first 256 bytes of ticket as key): %d\n", length(partial_256bytes_array);
printf "Array element number (use sever name and first 512 bytes of ticket as key): %d\n", length(partial_512bytes_array);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment