Bash: What does “masking return values” mean?2019 Community Moderator ElectionHow to name a file in the deepest level of a directory treeWhat does || mean in bash?Printf formatting with variable format - what does this var reference?What does $'r' mean?What is return code 1 for git-rebase? What are other values it could return?How does one parse $!i (and what does it mean)?Should I double quote these parameter expansions?“Make sure not to read and write the same file in the same pipeline”How to return a values from a method which prints its out putWhy not to export variables on the same line you assign them?

My story is written in English, but is set in my home country. What language should I use for the dialogue?

Can anyone tell me why this program fails?

Is Mortgage interest accrued after a December payment tax deductible?

How do anti-virus programs start at Windows boot?

How to generate globally unique ids for different tables of the same database?

Can unconscious characters be unwilling?

Why does Deadpool say "You're welcome, Canada," after shooting Ryan Reynolds in the end credits?

How to get the name of the database a stored procedure is executed in within that stored procedure while it's executing?

Where is the 1/8 CR apprentice in Volo's Guide to Monsters?

Citation at the bottom for subfigures in beamer frame

Professor being mistaken for a grad student

Why is stat::st_size 0 for devices but at the same time lseek defines the device size correctly?

What are the possible solutions of the given equation?

Make a transparent 448*448 image

Rejected in 4th interview round citing insufficient years of experience

2D counterpart of std::array in C++17

Counting certain elements in lists

Have researchers managed to "reverse time"? If so, what does that mean for physics?

Pinhole Camera with Instant Film

Employee lack of ownership

Theorems like the Lovász Local Lemma?

Could the Saturn V actually have launched astronauts around Venus?

Is having access to past exams cheating and, if yes, could it be proven just by a good grade?

Does splitting a potentially monolithic application into several smaller ones help prevent bugs?



Bash: What does “masking return values” mean?



2019 Community Moderator ElectionHow to name a file in the deepest level of a directory treeWhat does || mean in bash?Printf formatting with variable format - what does this var reference?What does $'r' mean?What is return code 1 for git-rebase? What are other values it could return?How does one parse $!i (and what does it mean)?Should I double quote these parameter expansions?“Make sure not to read and write the same file in the same pipeline”How to return a values from a method which prints its out putWhy not to export variables on the same line you assign them?










4















shellcheck generated the following warning



SC2155: Declare and assign separately to avoid masking return
values


For this line of code



local key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


What does "masking return values" mean, and how does it pertain to the aforementioned warning?










share|improve this question









New contributor




Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
























    4















    shellcheck generated the following warning



    SC2155: Declare and assign separately to avoid masking return
    values


    For this line of code



    local key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


    What does "masking return values" mean, and how does it pertain to the aforementioned warning?










    share|improve this question









    New contributor




    Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.






















      4












      4








      4








      shellcheck generated the following warning



      SC2155: Declare and assign separately to avoid masking return
      values


      For this line of code



      local key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


      What does "masking return values" mean, and how does it pertain to the aforementioned warning?










      share|improve this question









      New contributor




      Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.












      shellcheck generated the following warning



      SC2155: Declare and assign separately to avoid masking return
      values


      For this line of code



      local key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


      What does "masking return values" mean, and how does it pertain to the aforementioned warning?







      bash shell-script shellcheck






      share|improve this question









      New contributor




      Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question









      New contributor




      Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question








      edited 50 mins ago







      Inquisitor













      New contributor




      Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 1 hour ago









      InquisitorInquisitor

      254




      254




      New contributor




      Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      Inquisitor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




















          1 Answer
          1






          active

          oldest

          votes


















          4














          When you declare a variable as either local or exported that in itself is a command that will return success or not.



          $ var=$(false)
          $ echo $?
          1
          $ export var=$(false)
          $ echo $?
          0


          So if you wanted to act on the return value of your command (echo "$current_line" | mawk '/.+=.+/ print $1 '), you would be unable to since it's going to exit with 0 as long as the local declaration succeeds (which is almost always will).



          In order to avoid this it suggests declaring separately and then assigning:



          local key_value
          key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


          This is a shellcheck rule I frequently ignore and IMO is safe to ignore as long as you know you aren't trying to act on the return value of that variable declaration.



          You can ignore it by adding the following to the top of your script (Below the hashbang of course):



          # shellcheck disable=SC2155





          share|improve this answer






















            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
            );



            );






            Inquisitor is a new contributor. Be nice, and check out our Code of Conduct.









            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f506352%2fbash-what-does-masking-return-values-mean%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            4














            When you declare a variable as either local or exported that in itself is a command that will return success or not.



            $ var=$(false)
            $ echo $?
            1
            $ export var=$(false)
            $ echo $?
            0


            So if you wanted to act on the return value of your command (echo "$current_line" | mawk '/.+=.+/ print $1 '), you would be unable to since it's going to exit with 0 as long as the local declaration succeeds (which is almost always will).



            In order to avoid this it suggests declaring separately and then assigning:



            local key_value
            key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


            This is a shellcheck rule I frequently ignore and IMO is safe to ignore as long as you know you aren't trying to act on the return value of that variable declaration.



            You can ignore it by adding the following to the top of your script (Below the hashbang of course):



            # shellcheck disable=SC2155





            share|improve this answer



























              4














              When you declare a variable as either local or exported that in itself is a command that will return success or not.



              $ var=$(false)
              $ echo $?
              1
              $ export var=$(false)
              $ echo $?
              0


              So if you wanted to act on the return value of your command (echo "$current_line" | mawk '/.+=.+/ print $1 '), you would be unable to since it's going to exit with 0 as long as the local declaration succeeds (which is almost always will).



              In order to avoid this it suggests declaring separately and then assigning:



              local key_value
              key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


              This is a shellcheck rule I frequently ignore and IMO is safe to ignore as long as you know you aren't trying to act on the return value of that variable declaration.



              You can ignore it by adding the following to the top of your script (Below the hashbang of course):



              # shellcheck disable=SC2155





              share|improve this answer

























                4












                4








                4







                When you declare a variable as either local or exported that in itself is a command that will return success or not.



                $ var=$(false)
                $ echo $?
                1
                $ export var=$(false)
                $ echo $?
                0


                So if you wanted to act on the return value of your command (echo "$current_line" | mawk '/.+=.+/ print $1 '), you would be unable to since it's going to exit with 0 as long as the local declaration succeeds (which is almost always will).



                In order to avoid this it suggests declaring separately and then assigning:



                local key_value
                key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


                This is a shellcheck rule I frequently ignore and IMO is safe to ignore as long as you know you aren't trying to act on the return value of that variable declaration.



                You can ignore it by adding the following to the top of your script (Below the hashbang of course):



                # shellcheck disable=SC2155





                share|improve this answer













                When you declare a variable as either local or exported that in itself is a command that will return success or not.



                $ var=$(false)
                $ echo $?
                1
                $ export var=$(false)
                $ echo $?
                0


                So if you wanted to act on the return value of your command (echo "$current_line" | mawk '/.+=.+/ print $1 '), you would be unable to since it's going to exit with 0 as long as the local declaration succeeds (which is almost always will).



                In order to avoid this it suggests declaring separately and then assigning:



                local key_value
                key_value=$(echo "$current_line" | mawk '/.+=.+/ print $1 ')


                This is a shellcheck rule I frequently ignore and IMO is safe to ignore as long as you know you aren't trying to act on the return value of that variable declaration.



                You can ignore it by adding the following to the top of your script (Below the hashbang of course):



                # shellcheck disable=SC2155






                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered 1 hour ago









                Jesse_bJesse_b

                13.4k23370




                13.4k23370




















                    Inquisitor is a new contributor. Be nice, and check out our Code of Conduct.









                    draft saved

                    draft discarded


















                    Inquisitor is a new contributor. Be nice, and check out our Code of Conduct.












                    Inquisitor is a new contributor. Be nice, and check out our Code of Conduct.











                    Inquisitor is a new contributor. Be nice, and check out our Code of Conduct.














                    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%2f506352%2fbash-what-does-masking-return-values-mean%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

                    Which organization defines CJK Unified Ideographs? The Next CEO of Stack OverflowCharacters which have several different shapesHow useful are the kanji in reading Chinese?Can Chinese readers scan large amounts of text faster/more accurately than their alphabet-using counterparts?丼: why is “well” also “bowl of food”?What Does Unicode 8.0 Mean For Chinese?How are blanks indicated for placeholders in Chinese (like ???)Is there a dictionary of standard character variants?How to display CJK Extension F?How is it decided as to which character is used on the tech terminology?How does 子 come to mean 'midnight'?

                    Shenzhen Football Club Índice Elenco atual | Títulos | Referências Ligações externas | Menu de navegaçãoGooglenotíciaslivrosacadêmicoeditar«"Elenco"»Site oficialexpandindo-oeee

                    When We Were Young (canção de Adele) Índice Antecedentes e lançamento | Faixas e formatos | Performances e covers | Desempenho nas tabelas musicais | Créditos | Histórico de lançamento | Referências Menu de navegação«Best albums of 2015»«Adele - When We Were Young (Radio Date: 22-01-2016)»«When We Were Young - Single by Adele»«Adele: Inside Her Private Life and Triumphant Return»«adele interview: world exclusive first interview in three years»«Tobias Jesso Jr: since Adele tweeted his song, he's even bigger than his dad»«Adele interviews Tobias Jesso Jr: 'I think that a couple of the ideas we had could be rap songs'»«Adele on Her Return: 'I Was So Frightened That No One Cared'»«Tobias Jesso Jr. on working with Adele: 'I was as nervous as shit'»«How Ariel Rechtshaid Pushed Adele To Her Limit»«Adele Previews 'When We Were Young' on '60 Minutes' Teaser, Tops Trending 140»«Adele Performs New '25' Ballad, "When We Were Young" Live: Watch»«Which '25' Song Should Be Adele's Next Single?»«Adele's 'When We Were Young' Confirmed As Second Single From '25'»«Adele's new single artwork for 'When We Were Young' is perfectly adorable»«Adele at the BBC review: honest, funny and spectacular – Celebrity News News»«'Saturday Night Live': Adele Sings 'Hello' and 'When We Were Young'»«'Adele: Live in New York City' NBC Special – Set List Revealed!»«Adele Closes Out the 2016 Brit Awards With 'When We Were Young'»«What Is The Adele Live Tour Set List? There's No Way She'd Leave Out These 8 Songs»«See Demi Lovato's Soaring Cover of Adele's 'When We Were Young'»«'The Voice': 5 Best Moments From Week 1 Blind Auditions»«Adele – When We Were Young (Media Control Charts)»«Adele – When We Were Young (Entertainment Monitoring Africa)»«Adele – When We Were Young (ARIA Charts)»«Adele – When We Were Young (Ö3 Austria Top 40)»«Adele – When We Were Young (Ultratop 50)»«Adele – When We Were Young (Ultratop 40)»«Adele – When We Were Young (Canadian Hot 100)»«Adele – When We Were Young (Tracklisten)»«Adele – When We Were Young (The Official Charts Company)»«Adele – Hello (IFPI Slovenská Republika)»«Adele – When We Were Young (Productores de Música de España)»«Adele – When We Were Young (Billboard Hot 100)»«Adele – When We Were Young (Pop Songs)»«Adele – When We Were Young (Adult Pop Songs)»«Adele – When We Were Young (Hot Adult Contemporary Charts)»«Adele – When We Were Young (Hot Dance Club Songs)»«Adele – When We Were Young (Rock Airplay)»«Adele – When We Were Young (IFPI Finlândia)»«Adele – When We Were Young (Syndicat National de l'Éditon Phonographique)»«Adele – When We Were Young (Magyar Hanglemezkiadók Szövetsége)»«Adele – When We Were Young (Irish Recorded Music Association)»«Adele – When We Were Young (Mexico Airplay)»«Adele – When We Were Young (VG-lista)»«Adele – When We Were Young (NZ Top 40 Singles)»«Adele – When We Were Young (MegaCharts)»«Adele – When We Were Young (Związek Producentów Audio Video)»«Adele – When We Were Young (Portugal Digital Songs)»«Adele – When We Were Young (UK Indie Singles Chart)»«Adele – When We Were Young (UK Singles Chart)»«Adele – When We Were Young (Sverigetopplistan)»«Adele – When We Were Young (Schweizer Hitparade)»«Adele – When We Were Young (Portugal Digital Songs)»«Music Canada – Gold/Platinum – When We Were Young»«NZ Top 40 Singles Chart»«Certified Awards»e