How to count the number of bytes in a file, grouping the same bytes?count lines in a fileHow do you write specific bytes to a file?How could I use Bash to find 2 bytes in a binary file, increase their values, and replace?How do you get a count of all file extensions on a hard drive using the gnu+linux terminal?Writing an unlimited number of defined values into a fileCount the Number of Words that Start with each Letter in a FileHow do I trim bytes from the beginning and end of a file?How to get a count of specific process using ps command and then sort nd count it user wiseHow to improve the specific columns count AWKHow to print the count of pattern at each line?

What are the children of two Muggle-borns called?

Is my guitar action too high or is the bridge too high?

Reusable spacecraft: why still have fairings detach, instead of open/close?

Word ending in "-ine" for rat-like

Does a lens with a bigger max. aperture focus faster than a lens with a smaller max. aperture?

What happens if a caster is surprised while casting a spell with a long casting time?

English idiomatic equivalents of 能骗就骗 (if you can cheat, then cheat)

I just started; should I accept a farewell lunch for a coworker I don't know?

Why doesn't SpaceX land boosters in Africa?

Why is exile often an intermediate step?

Why didn't Caesar move against Sextus Pompey immediately after Munda?

How useful would a hydroelectric power plant be in the post-apocalypse world?

Correct use of the the idiom 'Гнать/Катить бочку'

Installed software from source, how to say yum not to install it from package?

What does 'in attendance' mean on a death certificate - England?

Copy group of files (Filename*) to backup (Filename*.bak)

Delete all files from a folder using a bat that match a certain pattern in Windows 10

Journal standards vs. personal standards

Could all three Gorgons turn people to stone, or just Medusa?

Having to constantly redo everything because I don't know how to do it

Early 2000s movie about time travel, protagonist travels back to save girlfriend, then into multiple points in future

Why do some PCBs have exposed plated perimeters?

Do electrons really perform instantaneous quantum leaps?

How to count the number of bytes in a file, grouping the same bytes?



How to count the number of bytes in a file, grouping the same bytes?


count lines in a fileHow do you write specific bytes to a file?How could I use Bash to find 2 bytes in a binary file, increase their values, and replace?How do you get a count of all file extensions on a hard drive using the gnu+linux terminal?Writing an unlimited number of defined values into a fileCount the Number of Words that Start with each Letter in a FileHow do I trim bytes from the beginning and end of a file?How to get a count of specific process using ps command and then sort nd count it user wiseHow to improve the specific columns count AWKHow to print the count of pattern at each line?













2















Example: I have the file "mybinaryfile", and the contents in hex are:



A0 01 00 FF 77 01 77 01 A0


I need to know how many A0 bytes there are in this file, how many 01, and so on. The result could be:



A0: 2
01: 3
00: 0
FF: 0
77: 2


Is there some way to make this count directly in shell or do I need to write a program in whatever language to do this specific task?










share|improve this question
























  • Does this file have multiple lines? Also why do you have 0 for 00 and FF when there is one of each?

    – Jesse_b
    8 hours ago
















2















Example: I have the file "mybinaryfile", and the contents in hex are:



A0 01 00 FF 77 01 77 01 A0


I need to know how many A0 bytes there are in this file, how many 01, and so on. The result could be:



A0: 2
01: 3
00: 0
FF: 0
77: 2


Is there some way to make this count directly in shell or do I need to write a program in whatever language to do this specific task?










share|improve this question
























  • Does this file have multiple lines? Also why do you have 0 for 00 and FF when there is one of each?

    – Jesse_b
    8 hours ago














2












2








2








Example: I have the file "mybinaryfile", and the contents in hex are:



A0 01 00 FF 77 01 77 01 A0


I need to know how many A0 bytes there are in this file, how many 01, and so on. The result could be:



A0: 2
01: 3
00: 0
FF: 0
77: 2


Is there some way to make this count directly in shell or do I need to write a program in whatever language to do this specific task?










share|improve this question
















Example: I have the file "mybinaryfile", and the contents in hex are:



A0 01 00 FF 77 01 77 01 A0


I need to know how many A0 bytes there are in this file, how many 01, and so on. The result could be:



A0: 2
01: 3
00: 0
FF: 0
77: 2


Is there some way to make this count directly in shell or do I need to write a program in whatever language to do this specific task?







linux command-line files binary byte






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 8 hours ago









Stephen Kitt

193k26 gold badges460 silver badges530 bronze badges




193k26 gold badges460 silver badges530 bronze badges










asked 8 hours ago









LawrenceLawrence

255 bronze badges




255 bronze badges












  • Does this file have multiple lines? Also why do you have 0 for 00 and FF when there is one of each?

    – Jesse_b
    8 hours ago


















  • Does this file have multiple lines? Also why do you have 0 for 00 and FF when there is one of each?

    – Jesse_b
    8 hours ago

















Does this file have multiple lines? Also why do you have 0 for 00 and FF when there is one of each?

– Jesse_b
8 hours ago






Does this file have multiple lines? Also why do you have 0 for 00 and FF when there is one of each?

– Jesse_b
8 hours ago











2 Answers
2






active

oldest

votes


















9














This uses od to show one hex value per line, then sorts and counts:



od -t x1 -w1 -v -An mybinaryfile | sort | uniq -c


(-w1 is an extension, it’s not mandated by POSIX.)






share|improve this answer
































    2














    Using Perl to unpack the slurped file to a byte array and then use a hash to count unique bytes:



    printf 'xA0x01x00xFFx77x01x77x01xA0' | 
    perl -0777 -nE '
    @bytes = unpack("C*",$_)










    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "106"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f527521%2fhow-to-count-the-number-of-bytes-in-a-file-grouping-the-same-bytes%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    9














    This uses od to show one hex value per line, then sorts and counts:



    od -t x1 -w1 -v -An mybinaryfile 
    perl -0777 -nE '
    @bytes = unpack("C*",$_)

    perl -0777 -nE '
    @bytes = unpack("C*",$_)

    perl -0777 -nE '
    @bytes = unpack("C*",$_)
    {
    $counts$_++ for @bytes;
    for $k (sort $a <=> $b keys %counts)
    printf "%02X: %dn", $k, $counts$k

    '
    00: 1
    01: 3
    77: 2
    A0: 2
    FF: 1


    If a sufficiently recent version of List::MoreUtils is available, you may be able to simplify the counting by using its frequency function.







    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited 7 hours ago









    Stéphane Chazelas

    323k57 gold badges625 silver badges992 bronze badges




    323k57 gold badges625 silver badges992 bronze badges










    answered 8 hours ago









    steeldriversteeldriver

    40.3k4 gold badges55 silver badges93 bronze badges




    40.3k4 gold badges55 silver badges93 bronze badges



























        draft saved

        draft discarded
















































        Thanks for contributing an answer to Unix & Linux Stack Exchange!


        • Please be sure to answer the question. Provide details and share your research!

        But avoid


        • Asking for help, clarification, or responding to other answers.

        • Making statements based on opinion; back them up with references or personal experience.

        To learn more, see our tips on writing great answers.




        draft saved


        draft discarded














        StackExchange.ready(
        function ()
        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f527521%2fhow-to-count-the-number-of-bytes-in-a-file-grouping-the-same-bytes%23new-answer', 'question_page');

        );

        Post as a guest















        Required, but never shown





















































        Required, but never shown














        Required, but never shown












        Required, but never shown







        Required, but never shown

































        Required, but never shown














        Required, but never shown












        Required, but never shown







        Required, but never shown







        Popular posts from this blog

        ParseJSON using SSJSUsing AMPscript with SSJS ActivitiesHow to resubscribe a user in Marketing cloud using SSJS?Pulling Subscriber Status from Lists using SSJSRetrieving Emails using SSJSProblem in updating DE using SSJSUsing SSJS to send single email in Marketing CloudError adding EmailSendDefinition using SSJS

        Кампала Садржај Географија Географија Историја Становништво Привреда Партнерски градови Референце Спољашње везе Мени за навигацију0°11′ СГШ; 32°20′ ИГД / 0.18° СГШ; 32.34° ИГД / 0.18; 32.340°11′ СГШ; 32°20′ ИГД / 0.18° СГШ; 32.34° ИГД / 0.18; 32.34МедијиПодациЗванични веб-сајту

        19. јануар Садржај Догађаји Рођења Смрти Празници и дани сећања Види још Референце Мени за навигацијуу