Alias to source .bashrc after it's been edited?How to fix a .bashrc that's been edited wrongly?Alias that allows to edit ~/.bashrc and then “sources” it automatically - Why it doesn't work?source .bashrc doesn't workHow can I check whether Vim has the -p (tabs) option or not?Alias defined in .bashrc not working after pipeSource new .bashrc in all open terminalsHow to write alias to use first parameter or * if parameter is blank?Making an alias to add key to remote authorized_keys fileUse .bashrc in a detached screenHow to escape this command to add alias in .bashrc?

Is Cola "probably the best-known" Latin word in the world? If not, which might it be?

What are the spoon bit of a spoon and fork bit of a fork called?

Why is `abs()` implemented differently?

Pressure inside an infinite ocean?

What was the state of the German rail system in 1944?

Identifying a transmission to myself

Unknowingly ran an infinite loop in terminal

How to make a newline without autoindent

Can I get a paladin's steed by True Polymorphing into a monster that can cast Find Steed?

CRT Oscilloscope - part of the plot is missing

I caught several of my students plagiarizing. Could it be my fault as a teacher?

Are we obligated to aspire to be Talmidei Chachamim?

Casual versus formal jacket

Junior developer struggles: how to communicate with management?

Is it cheaper to drop cargo than to land it?

Why is Arya visibly scared in the library in S8E3?

Enumerate Derangements

How would adding a darkvision racial trait to Dragonborn affect balance?

Why is C# in the D Major Scale?

What is the unit of the area when geometry attributes are calculated in QGIS?

Would glacier 'trees' be plausible?

Quoting Yourself

Why was the battle set up *outside* Winterfell?

Confused about proofs by contradiction, the Law of the Excluded Middle and existence of consistent axiomatic systems.



Alias to source .bashrc after it's been edited?


How to fix a .bashrc that's been edited wrongly?Alias that allows to edit ~/.bashrc and then “sources” it automatically - Why it doesn't work?source .bashrc doesn't workHow can I check whether Vim has the -p (tabs) option or not?Alias defined in .bashrc not working after pipeSource new .bashrc in all open terminalsHow to write alias to use first parameter or * if parameter is blank?Making an alias to add key to remote authorized_keys fileUse .bashrc in a detached screenHow to escape this command to add alias in .bashrc?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








1















I would like to add an alias (for convenience sake) that would allow me to edit my bashrc, and if changes were made, source it, but if no changes were made, don't source (in case I changed my mind).



I initially tried alias vb='vi ~/.bashrc && source ~/.bashrc' but then I realized that even just quitting out of vi :q or :q! probably still returns a success return value which is why it still sources.



Is there some way to make an alias such that quitting vi without making any changes to the file doesn't source .bashrc but if something is changed, it does?










share|improve this question







New contributor




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


























    1















    I would like to add an alias (for convenience sake) that would allow me to edit my bashrc, and if changes were made, source it, but if no changes were made, don't source (in case I changed my mind).



    I initially tried alias vb='vi ~/.bashrc && source ~/.bashrc' but then I realized that even just quitting out of vi :q or :q! probably still returns a success return value which is why it still sources.



    Is there some way to make an alias such that quitting vi without making any changes to the file doesn't source .bashrc but if something is changed, it does?










    share|improve this question







    New contributor




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






















      1












      1








      1








      I would like to add an alias (for convenience sake) that would allow me to edit my bashrc, and if changes were made, source it, but if no changes were made, don't source (in case I changed my mind).



      I initially tried alias vb='vi ~/.bashrc && source ~/.bashrc' but then I realized that even just quitting out of vi :q or :q! probably still returns a success return value which is why it still sources.



      Is there some way to make an alias such that quitting vi without making any changes to the file doesn't source .bashrc but if something is changed, it does?










      share|improve this question







      New contributor




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












      I would like to add an alias (for convenience sake) that would allow me to edit my bashrc, and if changes were made, source it, but if no changes were made, don't source (in case I changed my mind).



      I initially tried alias vb='vi ~/.bashrc && source ~/.bashrc' but then I realized that even just quitting out of vi :q or :q! probably still returns a success return value which is why it still sources.



      Is there some way to make an alias such that quitting vi without making any changes to the file doesn't source .bashrc but if something is changed, it does?







      linux bash vim bashrc bash-alias






      share|improve this question







      New contributor




      psycho9o 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




      psycho9o 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






      New contributor




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









      asked 4 hours ago









      psycho9opsycho9o

      61




      61




      New contributor




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





      New contributor





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






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




















          2 Answers
          2






          active

          oldest

          votes


















          3














          What about:



          alias vb='SUM1=$(md5sum ~/.bashrc) && vi ~/.bashrc && SUM2=$(md5sum ~/.bashrc) && if [ "$SUM1" != "$SUM2" ] ; then source ~/.bashrc ; fi'





          share|improve this answer








          New contributor




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



























            2














            How about using a bash function instead of an alias. This works in my tests:



            • Add the following function to ~/.bashrc

            • source ~/.bashrc


            • when you want to change ~/.bashrc type bashmod at the prompt



              function bashmod () 

              pre=$(shasum ~/.bashrc);
              vim mybuf;
              post=$(shasum ~/.bashrc);

              if [ "$pre" = "$post" ]; then
              echo "~/.bashrc unchanged";
              else
              . ~/.bashrc;
              fi







            share|improve this answer























              Your Answer








              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "3"
              ;
              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: true,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: 10,
              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
              );



              );






              psycho9o 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%2fsuperuser.com%2fquestions%2f1431553%2falias-to-source-bashrc-after-its-been-edited%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









              3














              What about:



              alias vb='SUM1=$(md5sum ~/.bashrc) && vi ~/.bashrc && SUM2=$(md5sum ~/.bashrc) && if [ "$SUM1" != "$SUM2" ] ; then source ~/.bashrc ; fi'





              share|improve this answer








              New contributor




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
























                3














                What about:



                alias vb='SUM1=$(md5sum ~/.bashrc) && vi ~/.bashrc && SUM2=$(md5sum ~/.bashrc) && if [ "$SUM1" != "$SUM2" ] ; then source ~/.bashrc ; fi'





                share|improve this answer








                New contributor




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






















                  3












                  3








                  3







                  What about:



                  alias vb='SUM1=$(md5sum ~/.bashrc) && vi ~/.bashrc && SUM2=$(md5sum ~/.bashrc) && if [ "$SUM1" != "$SUM2" ] ; then source ~/.bashrc ; fi'





                  share|improve this answer








                  New contributor




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










                  What about:



                  alias vb='SUM1=$(md5sum ~/.bashrc) && vi ~/.bashrc && SUM2=$(md5sum ~/.bashrc) && if [ "$SUM1" != "$SUM2" ] ; then source ~/.bashrc ; fi'






                  share|improve this answer








                  New contributor




                  Comar 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 answer



                  share|improve this answer






                  New contributor




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









                  answered 1 hour ago









                  ComarComar

                  1312




                  1312




                  New contributor




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





                  New contributor





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






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























                      2














                      How about using a bash function instead of an alias. This works in my tests:



                      • Add the following function to ~/.bashrc

                      • source ~/.bashrc


                      • when you want to change ~/.bashrc type bashmod at the prompt



                        function bashmod () 

                        pre=$(shasum ~/.bashrc);
                        vim mybuf;
                        post=$(shasum ~/.bashrc);

                        if [ "$pre" = "$post" ]; then
                        echo "~/.bashrc unchanged";
                        else
                        . ~/.bashrc;
                        fi







                      share|improve this answer



























                        2














                        How about using a bash function instead of an alias. This works in my tests:



                        • Add the following function to ~/.bashrc

                        • source ~/.bashrc


                        • when you want to change ~/.bashrc type bashmod at the prompt



                          function bashmod () 

                          pre=$(shasum ~/.bashrc);
                          vim mybuf;
                          post=$(shasum ~/.bashrc);

                          if [ "$pre" = "$post" ]; then
                          echo "~/.bashrc unchanged";
                          else
                          . ~/.bashrc;
                          fi







                        share|improve this answer

























                          2












                          2








                          2







                          How about using a bash function instead of an alias. This works in my tests:



                          • Add the following function to ~/.bashrc

                          • source ~/.bashrc


                          • when you want to change ~/.bashrc type bashmod at the prompt



                            function bashmod () 

                            pre=$(shasum ~/.bashrc);
                            vim mybuf;
                            post=$(shasum ~/.bashrc);

                            if [ "$pre" = "$post" ]; then
                            echo "~/.bashrc unchanged";
                            else
                            . ~/.bashrc;
                            fi







                          share|improve this answer













                          How about using a bash function instead of an alias. This works in my tests:



                          • Add the following function to ~/.bashrc

                          • source ~/.bashrc


                          • when you want to change ~/.bashrc type bashmod at the prompt



                            function bashmod () 

                            pre=$(shasum ~/.bashrc);
                            vim mybuf;
                            post=$(shasum ~/.bashrc);

                            if [ "$pre" = "$post" ]; then
                            echo "~/.bashrc unchanged";
                            else
                            . ~/.bashrc;
                            fi








                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered 1 hour ago









                          CaqeCaqe

                          414




                          414




















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









                              draft saved

                              draft discarded


















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












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











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














                              Thanks for contributing an answer to Super User!


                              • 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%2fsuperuser.com%2fquestions%2f1431553%2falias-to-source-bashrc-after-its-been-edited%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

                              Invision Community Contents History See also References External links Navigation menuProprietaryinvisioncommunity.comIPS Community ForumsIPS Community Forumsthis blog entry"License Changes, IP.Board 3.4, and the Future""Interview -- Matt Mecham of Ibforums""CEO Invision Power Board, Matt Mecham Is a Liar, Thief!"IPB License Explanation 1.3, 1.3.1, 2.0, and 2.1ArchivedSecurity Fixes, Updates And Enhancements For IPB 1.3.1Archived"New Demo Accounts - Invision Power Services"the original"New Default Skin"the original"Invision Power Board 3.0.0 and Applications Released"the original"Archived copy"the original"Perpetual licenses being done away with""Release Notes - Invision Power Services""Introducing: IPS Community Suite 4!"Invision Community Release Notes

                              Canceling a color specificationRandomly assigning color to Graphics3D objects?Default color for Filling in Mathematica 9Coloring specific elements of sets with a prime modified order in an array plotHow to pick a color differing significantly from the colors already in a given color list?Detection of the text colorColor numbers based on their valueCan color schemes for use with ColorData include opacity specification?My dynamic color schemes

                              Ласкавець круглолистий Зміст Опис | Поширення | Галерея | Примітки | Посилання | Навігаційне меню58171138361-22960890446Bupleurum rotundifoliumEuro+Med PlantbasePlants of the World Online — Kew ScienceGermplasm Resources Information Network (GRIN)Ласкавецькн. VI : Літери Ком — Левиправивши або дописавши її