how does the expression b=$b:-“/data” work [duplicate]What does `:-` mean in a shell scriptHow/why does this globbing expression work?What does : $param:=value mean?How does bash know how it is being invoked?Extract data from line and prepend to the line?What does this regex mean?Why does n expand to n in bash?How does storing the regular expression in a shell variable avoid problems with quoting characters that are special to the shell?Is it secure to use the following kinds of pathnames in `$PATH`?$@ used in a loop for mathMixing if ..; with command-grouping and [[ test ]] and logical operators

Landlord wants to switch my lease to a "Land contract" to "get back at the city"

Email Account under attack (really) - anything I can do?

Why is the design of haulage companies so “special”?

Can one use the reaction spell from the War Caster feat to cast Bigby's Hand?

Ideas for 3rd eye abilities

Are objects structures and/or vice versa?

Landing in very high winds

How would photo IDs work for shapeshifters?

Was there ever an axiom rendered a theorem?

When blogging recipes, how can I support both readers who want the narrative/journey and ones who want the printer-friendly recipe?

Doomsday-clock for my fantasy planet

Hosting Wordpress in a EC2 Load Balanced Instance

Why is my log file so massive? 22gb. I am running log backups

Pristine Bit Checking

COUNT(*) or MAX(id) - which is faster?

Can I find out the caloric content of bread by dehydrating it?

Where to refill my bottle in India?

Why doesn't a const reference extend the life of a temporary object passed via a function?

What is GPS' 19 year rollover and does it present a cybersecurity issue?

Unbreakable Formation vs. Cry of the Carnarium

"listening to me about as much as you're listening to this pole here"

Symmetry in quantum mechanics

Can I legally use front facing blue light in the UK?

Does it makes sense to buy a new cycle to learn riding?



how does the expression b=$b:-“/data” work [duplicate]


What does `:-` mean in a shell scriptHow/why does this globbing expression work?What does : $param:=value mean?How does bash know how it is being invoked?Extract data from line and prepend to the line?What does this regex mean?Why does n expand to n in bash?How does storing the regular expression in a shell variable avoid problems with quoting characters that are special to the shell?Is it secure to use the following kinds of pathnames in `$PATH`?$@ used in a loop for mathMixing if ..; with command-grouping and [[ test ]] and logical operators






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0
















This question already has an answer here:



  • What does `:-` mean in a shell script [duplicate]

    2 answers



I've run a cross a shell script with BUILDDIR=$BUILDDIR:-"/data" which , upon experimentation, takes the original BUILDDIR if it exists and isnt an empty string, and otherwise sets it to /data.
What I don't understand is how the expression works - why the : and - operators and how they work.










share|improve this question















marked as duplicate by Kusalananda bash
Users with the  bash badge can single-handedly close bash questions as duplicates and reopen them as needed.

StackExchange.ready(function()
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function()
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function()
$hover.showInfoMessage('',
messageElement: $msg.clone().show(),
transient: false,
position: my: 'bottom left', at: 'top center', offsetTop: -7 ,
dismissable: false,
relativeToBody: true
);
,
function()
StackExchange.helpers.removeMessages();

);
);
);
Apr 2 at 16:20


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.
























    0
















    This question already has an answer here:



    • What does `:-` mean in a shell script [duplicate]

      2 answers



    I've run a cross a shell script with BUILDDIR=$BUILDDIR:-"/data" which , upon experimentation, takes the original BUILDDIR if it exists and isnt an empty string, and otherwise sets it to /data.
    What I don't understand is how the expression works - why the : and - operators and how they work.










    share|improve this question















    marked as duplicate by Kusalananda bash
    Users with the  bash badge can single-handedly close bash questions as duplicates and reopen them as needed.

    StackExchange.ready(function()
    if (StackExchange.options.isMobile) return;

    $('.dupe-hammer-message-hover:not(.hover-bound)').each(function()
    var $hover = $(this).addClass('hover-bound'),
    $msg = $hover.siblings('.dupe-hammer-message');

    $hover.hover(
    function()
    $hover.showInfoMessage('',
    messageElement: $msg.clone().show(),
    transient: false,
    position: my: 'bottom left', at: 'top center', offsetTop: -7 ,
    dismissable: false,
    relativeToBody: true
    );
    ,
    function()
    StackExchange.helpers.removeMessages();

    );
    );
    );
    Apr 2 at 16:20


    This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.




















      0












      0








      0









      This question already has an answer here:



      • What does `:-` mean in a shell script [duplicate]

        2 answers



      I've run a cross a shell script with BUILDDIR=$BUILDDIR:-"/data" which , upon experimentation, takes the original BUILDDIR if it exists and isnt an empty string, and otherwise sets it to /data.
      What I don't understand is how the expression works - why the : and - operators and how they work.










      share|improve this question

















      This question already has an answer here:



      • What does `:-` mean in a shell script [duplicate]

        2 answers



      I've run a cross a shell script with BUILDDIR=$BUILDDIR:-"/data" which , upon experimentation, takes the original BUILDDIR if it exists and isnt an empty string, and otherwise sets it to /data.
      What I don't understand is how the expression works - why the : and - operators and how they work.





      This question already has an answer here:



      • What does `:-` mean in a shell script [duplicate]

        2 answers







      bash environment-variables






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Apr 2 at 15:48









      Rui F Ribeiro

      42k1483142




      42k1483142










      asked Apr 2 at 15:34









      jeremy_rutmanjeremy_rutman

      159312




      159312




      marked as duplicate by Kusalananda bash
      Users with the  bash badge can single-handedly close bash questions as duplicates and reopen them as needed.

      StackExchange.ready(function()
      if (StackExchange.options.isMobile) return;

      $('.dupe-hammer-message-hover:not(.hover-bound)').each(function()
      var $hover = $(this).addClass('hover-bound'),
      $msg = $hover.siblings('.dupe-hammer-message');

      $hover.hover(
      function()
      $hover.showInfoMessage('',
      messageElement: $msg.clone().show(),
      transient: false,
      position: my: 'bottom left', at: 'top center', offsetTop: -7 ,
      dismissable: false,
      relativeToBody: true
      );
      ,
      function()
      StackExchange.helpers.removeMessages();

      );
      );
      );
      Apr 2 at 16:20


      This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.









      marked as duplicate by Kusalananda bash
      Users with the  bash badge can single-handedly close bash questions as duplicates and reopen them as needed.

      StackExchange.ready(function()
      if (StackExchange.options.isMobile) return;

      $('.dupe-hammer-message-hover:not(.hover-bound)').each(function()
      var $hover = $(this).addClass('hover-bound'),
      $msg = $hover.siblings('.dupe-hammer-message');

      $hover.hover(
      function()
      $hover.showInfoMessage('',
      messageElement: $msg.clone().show(),
      transient: false,
      position: my: 'bottom left', at: 'top center', offsetTop: -7 ,
      dismissable: false,
      relativeToBody: true
      );
      ,
      function()
      StackExchange.helpers.removeMessages();

      );
      );
      );
      Apr 2 at 16:20


      This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.






















          1 Answer
          1






          active

          oldest

          votes


















          1














          It's one of (fortunately only) a handful of shortcuts done as part of parameter expansion. In short, there's the following, loosely defined:




          • $VAR:-value Use $VAR if possible, else value


          • $VAR:=value Use $VAR if possible, else set $VAR to value and use value


          • $VAR:?value (exit if $VAR is undefined) and $VAR:+value (opposite of :- ) exist, but I've never seen them in the wild.


          • $VAR:offset and $VAR:offset:length take substrings of $VAR.

          (There's also a bunch of others that remove prefixes or suffixes or do general substitution; please see the bash info page linked above for those.)






          share|improve this answer





























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            1














            It's one of (fortunately only) a handful of shortcuts done as part of parameter expansion. In short, there's the following, loosely defined:




            • $VAR:-value Use $VAR if possible, else value


            • $VAR:=value Use $VAR if possible, else set $VAR to value and use value


            • $VAR:?value (exit if $VAR is undefined) and $VAR:+value (opposite of :- ) exist, but I've never seen them in the wild.


            • $VAR:offset and $VAR:offset:length take substrings of $VAR.

            (There's also a bunch of others that remove prefixes or suffixes or do general substitution; please see the bash info page linked above for those.)






            share|improve this answer



























              1














              It's one of (fortunately only) a handful of shortcuts done as part of parameter expansion. In short, there's the following, loosely defined:




              • $VAR:-value Use $VAR if possible, else value


              • $VAR:=value Use $VAR if possible, else set $VAR to value and use value


              • $VAR:?value (exit if $VAR is undefined) and $VAR:+value (opposite of :- ) exist, but I've never seen them in the wild.


              • $VAR:offset and $VAR:offset:length take substrings of $VAR.

              (There's also a bunch of others that remove prefixes or suffixes or do general substitution; please see the bash info page linked above for those.)






              share|improve this answer

























                1












                1








                1







                It's one of (fortunately only) a handful of shortcuts done as part of parameter expansion. In short, there's the following, loosely defined:




                • $VAR:-value Use $VAR if possible, else value


                • $VAR:=value Use $VAR if possible, else set $VAR to value and use value


                • $VAR:?value (exit if $VAR is undefined) and $VAR:+value (opposite of :- ) exist, but I've never seen them in the wild.


                • $VAR:offset and $VAR:offset:length take substrings of $VAR.

                (There's also a bunch of others that remove prefixes or suffixes or do general substitution; please see the bash info page linked above for those.)






                share|improve this answer













                It's one of (fortunately only) a handful of shortcuts done as part of parameter expansion. In short, there's the following, loosely defined:




                • $VAR:-value Use $VAR if possible, else value


                • $VAR:=value Use $VAR if possible, else set $VAR to value and use value


                • $VAR:?value (exit if $VAR is undefined) and $VAR:+value (opposite of :- ) exist, but I've never seen them in the wild.


                • $VAR:offset and $VAR:offset:length take substrings of $VAR.

                (There's also a bunch of others that remove prefixes or suffixes or do general substitution; please see the bash info page linked above for those.)







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Apr 2 at 15:56









                Ulrich SchwarzUlrich Schwarz

                10.1k13148




                10.1k13148













                    -bash, environment-variables

                    Popular posts from this blog

                    Creating 100m^2 grid automatically using QGIS?Creating grid constrained within polygon in QGIS?Createing polygon layer from point data using QGIS?Creating vector grid using QGIS?Creating grid polygons from coordinates using R or PythonCreating grid from spatio temporal point data?Creating fields in attributes table using other layers using QGISCreate .shp vector grid in QGISQGIS Creating 4km point grid within polygonsCreate a vector grid over a raster layerVector Grid Creates just one grid

                    Nikolai Prilezhaev Bibliography References External links Navigation menuEarly Russian Organic Chemists and Their Legacy092774english translationRussian Biography

                    How to link a C library to an Assembly library on Mac with clangHow do you set, clear, and toggle a single bit?Find (and kill) process locking port 3000 on MacWho is listening on a given TCP port on Mac OS X?How to start PostgreSQL server on Mac OS X?Compile assembler in nasm on mac osHow do I install pip on macOS or OS X?AFNetworking 2.0 “_NSURLSessionTransferSizeUnknown” linking error on Mac OS X 10.8C++ code for testing the Collatz conjecture faster than hand-written assembly - why?How to link a NASM code and GCC in Mac OS X?How to run x86 .asm on macOS Sierra