Append a note to one of three files based on user choiceMaking kexec reboots less painfulProcess files in all subdirectories and save output to new files based on their current pathText files: Copy, Rename, Append/Merge togetherSort and source configuration files from one of two directoriesCopy recently modified files from one directory to anotherOne to One network file transfer code C# socket basedGo: Generate color palettes for set of files in a directory based on a specific field property in each of themUser-friendly script for searching through log filesScript to clean up old files that should only run one instanceSSMTP configuration in Ubuntu 18.04 with Bash in my own system (one user)

2×2×2 rubik's cube corner is twisted!

Virginia employer terminated employee and wants signing bonus returned

BitNot does not flip bits in the way I expected

Could you please stop shuffling the deck and play already?

What wound would be of little consequence to a biped but terrible for a quadruped?

Unreachable code, but reachable with exception

Grey hair or white hair

Why is this plane circling around the Lucknow airport every day?

Do f-stop and exposure time perfectly cancel?

Why is there a voltage between the mains ground and my radiator?

Accountant/ lawyer will not return my call

Should QA ask requirements to developers?

Good allowance savings plan?

Why would a jet engine that runs at temps excess of 2000°C burn when it crashes?

The bar has been raised

Best approach to update all entries in a list that is paginated?

show this identity with trigometric

Why does the negative sign arise in this thermodynamic relation?

Replacing Windows 7 security updates with anti-virus?

infinitive telling the purpose

A question on the ultrafilter number

Should I take out a loan for a friend to invest on my behalf?

Should I tell my boss the work he did was worthless

How do I express some one as a black person?



Append a note to one of three files based on user choice


Making kexec reboots less painfulProcess files in all subdirectories and save output to new files based on their current pathText files: Copy, Rename, Append/Merge togetherSort and source configuration files from one of two directoriesCopy recently modified files from one directory to anotherOne to One network file transfer code C# socket basedGo: Generate color palettes for set of files in a directory based on a specific field property in each of themUser-friendly script for searching through log filesScript to clean up old files that should only run one instanceSSMTP configuration in Ubuntu 18.04 with Bash in my own system (one user)













3












$begingroup$


The user selects one of the three categories then makes a note on that selection. Then the note is appended and saved to the appropriate list.



It took me four hours to write this. I'm trying to learn and was wondering if this could be improved or cleaned up at all.



#!/bin/bash

#get the date
date=$(date +%d-%B-%Y)

#save locations
wsave="$HOME/worknotes.txt"
shsave="$HOME/shoppingnotes.txt"
scsave="$HOME/schoolnotes.txt"


#list
while [ true ]
do
read -p "What is this note for?
Work
School
Shopping
> " topic
case $topic in

"Work" )
read -p "
Note
> " wnote
echo "$date: $wnote" >> "$wsave"
echo "Note saved to $wsave"
break
;;
"Shopping" )
read -p "
Note
> " shnote
echo "$date: $shnote" >> "$shsave"
echo "Note saved to $shsave"
break
;;
"School" )
read -p "
Note
> " scnote
echo "$date: $scnote" >> "$scsave"
echo "Note saved to $scsave"
break
;;
*) echo "Error: Selection was not on list, try again.
"
;;
esac
done









share|improve this question









New contributor




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







$endgroup$
















    3












    $begingroup$


    The user selects one of the three categories then makes a note on that selection. Then the note is appended and saved to the appropriate list.



    It took me four hours to write this. I'm trying to learn and was wondering if this could be improved or cleaned up at all.



    #!/bin/bash

    #get the date
    date=$(date +%d-%B-%Y)

    #save locations
    wsave="$HOME/worknotes.txt"
    shsave="$HOME/shoppingnotes.txt"
    scsave="$HOME/schoolnotes.txt"


    #list
    while [ true ]
    do
    read -p "What is this note for?
    Work
    School
    Shopping
    > " topic
    case $topic in

    "Work" )
    read -p "
    Note
    > " wnote
    echo "$date: $wnote" >> "$wsave"
    echo "Note saved to $wsave"
    break
    ;;
    "Shopping" )
    read -p "
    Note
    > " shnote
    echo "$date: $shnote" >> "$shsave"
    echo "Note saved to $shsave"
    break
    ;;
    "School" )
    read -p "
    Note
    > " scnote
    echo "$date: $scnote" >> "$scsave"
    echo "Note saved to $scsave"
    break
    ;;
    *) echo "Error: Selection was not on list, try again.
    "
    ;;
    esac
    done









    share|improve this question









    New contributor




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







    $endgroup$














      3












      3








      3





      $begingroup$


      The user selects one of the three categories then makes a note on that selection. Then the note is appended and saved to the appropriate list.



      It took me four hours to write this. I'm trying to learn and was wondering if this could be improved or cleaned up at all.



      #!/bin/bash

      #get the date
      date=$(date +%d-%B-%Y)

      #save locations
      wsave="$HOME/worknotes.txt"
      shsave="$HOME/shoppingnotes.txt"
      scsave="$HOME/schoolnotes.txt"


      #list
      while [ true ]
      do
      read -p "What is this note for?
      Work
      School
      Shopping
      > " topic
      case $topic in

      "Work" )
      read -p "
      Note
      > " wnote
      echo "$date: $wnote" >> "$wsave"
      echo "Note saved to $wsave"
      break
      ;;
      "Shopping" )
      read -p "
      Note
      > " shnote
      echo "$date: $shnote" >> "$shsave"
      echo "Note saved to $shsave"
      break
      ;;
      "School" )
      read -p "
      Note
      > " scnote
      echo "$date: $scnote" >> "$scsave"
      echo "Note saved to $scsave"
      break
      ;;
      *) echo "Error: Selection was not on list, try again.
      "
      ;;
      esac
      done









      share|improve this question









      New contributor




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







      $endgroup$




      The user selects one of the three categories then makes a note on that selection. Then the note is appended and saved to the appropriate list.



      It took me four hours to write this. I'm trying to learn and was wondering if this could be improved or cleaned up at all.



      #!/bin/bash

      #get the date
      date=$(date +%d-%B-%Y)

      #save locations
      wsave="$HOME/worknotes.txt"
      shsave="$HOME/shoppingnotes.txt"
      scsave="$HOME/schoolnotes.txt"


      #list
      while [ true ]
      do
      read -p "What is this note for?
      Work
      School
      Shopping
      > " topic
      case $topic in

      "Work" )
      read -p "
      Note
      > " wnote
      echo "$date: $wnote" >> "$wsave"
      echo "Note saved to $wsave"
      break
      ;;
      "Shopping" )
      read -p "
      Note
      > " shnote
      echo "$date: $shnote" >> "$shsave"
      echo "Note saved to $shsave"
      break
      ;;
      "School" )
      read -p "
      Note
      > " scnote
      echo "$date: $scnote" >> "$scsave"
      echo "Note saved to $scsave"
      break
      ;;
      *) echo "Error: Selection was not on list, try again.
      "
      ;;
      esac
      done






      beginner bash linux shell






      share|improve this question









      New contributor




      Ryan R 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




      Ryan R 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 8 hours ago









      200_success

      130k17153419




      130k17153419






      New contributor




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









      asked 9 hours ago









      Ryan RRyan R

      162




      162




      New contributor




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





      New contributor





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






      Ryan R 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


















          2












          $begingroup$

          Extract common code into a common block. You only need the case to determine the save-location. The note itself can be read before switching:



          #...
          read -p "What is this note for?
          Work
          School
          Shopping
          > " topic
          read -p "
          Note
          > " note
          save=""
          case $topic in
          "Work")
          save=$wsave
          break
          ;;
          "School")
          save=scsave
          break
          ;;
          "Shopping")
          save=$shsave
          break
          ;;
          *) echo "Error: Selection was not on list, try again.
          "
          ;;
          esac
          if [[ $save!="" ]]; then
          echo "$date: $note" >> "$save"
          echo "Note saved to $save"
          fi
          #...


          this removes the duplication in the case-blocks and still allows you to clearly work with what you expect for every note.




          The variable names could use a bit more... characters in general. You could even use snake_case to differentiate between words and all that. This allows you to make the code significantly more speaking.




          The comment #list is really not adding any value. #get the date is already clearly outlined by the code, maybe a more human readable format explanation might be useful there. #save locations should be completely replaceable with proper variable names.




          A word on the save locations you are using. As it stands, these are totally visible and will clutter the user's home directory. You should consider making these hidden by default by prefixing the filenames with a ., maybe even put them into a separate folder in the home-directory.






          share|improve this answer









          $endgroup$




















            2












            $begingroup$

            A couple of points:




            1. You determine the date outside your loop, then loop forever. Every note you make after the first one is going to have the same date stamp.



              A better approach would be to collect the date stamp just as you are writing to the file:



              datestamp=$(...)
              echo "$datestamp: $note" >> ...



            2. When shells were originally written, almost everything was a program. The if statement takes an executable as its conditional element. (If you look, you will find a program named [ in /bin so that if [ ... will work.)



              There is a program named true and a program named false. You can run them, and they don't do anything except set their exit codes to appropriate values.



              You don't need to write while [ true ]. Instead, just write while true. This is important because while false will do something different from while [ false ]. You may be surprised ...




            3. As @Vogel612 points out, you have duplicated code. I think you should keep the user feedback close to the user entry, so your checking should happen before typing the note. You can use another variable to hold the destination file path:



              read -p "What is this note for?
              Work
              School
              Shopping
              > " topic
              destfile=''
              case $topic in
              "Work" ) destfile="$wsave" ;;
              "School" ) destfile="$scsave" ;;
              "Shopping" ) destfile="$shsave" ;;
              * ) echo "Error: Selection was not on list, try again.n" ;;
              esac

              if [ "$destfile" ]; then
              read -p "nNoten> " note
              echo "$date: $note" >> "$destfile"
              echo "Note saved to $destfile"
              fi






            share|improve this answer









            $endgroup$












              Your Answer





              StackExchange.ifUsing("editor", function ()
              return StackExchange.using("mathjaxEditing", function ()
              StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
              StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
              );
              );
              , "mathjax-editing");

              StackExchange.ifUsing("editor", function ()
              StackExchange.using("externalEditor", function ()
              StackExchange.using("snippets", function ()
              StackExchange.snippets.init();
              );
              );
              , "code-snippets");

              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "196"
              ;
              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
              );



              );






              Ryan R 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%2fcodereview.stackexchange.com%2fquestions%2f215297%2fappend-a-note-to-one-of-three-files-based-on-user-choice%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









              2












              $begingroup$

              Extract common code into a common block. You only need the case to determine the save-location. The note itself can be read before switching:



              #...
              read -p "What is this note for?
              Work
              School
              Shopping
              > " topic
              read -p "
              Note
              > " note
              save=""
              case $topic in
              "Work")
              save=$wsave
              break
              ;;
              "School")
              save=scsave
              break
              ;;
              "Shopping")
              save=$shsave
              break
              ;;
              *) echo "Error: Selection was not on list, try again.
              "
              ;;
              esac
              if [[ $save!="" ]]; then
              echo "$date: $note" >> "$save"
              echo "Note saved to $save"
              fi
              #...


              this removes the duplication in the case-blocks and still allows you to clearly work with what you expect for every note.




              The variable names could use a bit more... characters in general. You could even use snake_case to differentiate between words and all that. This allows you to make the code significantly more speaking.




              The comment #list is really not adding any value. #get the date is already clearly outlined by the code, maybe a more human readable format explanation might be useful there. #save locations should be completely replaceable with proper variable names.




              A word on the save locations you are using. As it stands, these are totally visible and will clutter the user's home directory. You should consider making these hidden by default by prefixing the filenames with a ., maybe even put them into a separate folder in the home-directory.






              share|improve this answer









              $endgroup$

















                2












                $begingroup$

                Extract common code into a common block. You only need the case to determine the save-location. The note itself can be read before switching:



                #...
                read -p "What is this note for?
                Work
                School
                Shopping
                > " topic
                read -p "
                Note
                > " note
                save=""
                case $topic in
                "Work")
                save=$wsave
                break
                ;;
                "School")
                save=scsave
                break
                ;;
                "Shopping")
                save=$shsave
                break
                ;;
                *) echo "Error: Selection was not on list, try again.
                "
                ;;
                esac
                if [[ $save!="" ]]; then
                echo "$date: $note" >> "$save"
                echo "Note saved to $save"
                fi
                #...


                this removes the duplication in the case-blocks and still allows you to clearly work with what you expect for every note.




                The variable names could use a bit more... characters in general. You could even use snake_case to differentiate between words and all that. This allows you to make the code significantly more speaking.




                The comment #list is really not adding any value. #get the date is already clearly outlined by the code, maybe a more human readable format explanation might be useful there. #save locations should be completely replaceable with proper variable names.




                A word on the save locations you are using. As it stands, these are totally visible and will clutter the user's home directory. You should consider making these hidden by default by prefixing the filenames with a ., maybe even put them into a separate folder in the home-directory.






                share|improve this answer









                $endgroup$















                  2












                  2








                  2





                  $begingroup$

                  Extract common code into a common block. You only need the case to determine the save-location. The note itself can be read before switching:



                  #...
                  read -p "What is this note for?
                  Work
                  School
                  Shopping
                  > " topic
                  read -p "
                  Note
                  > " note
                  save=""
                  case $topic in
                  "Work")
                  save=$wsave
                  break
                  ;;
                  "School")
                  save=scsave
                  break
                  ;;
                  "Shopping")
                  save=$shsave
                  break
                  ;;
                  *) echo "Error: Selection was not on list, try again.
                  "
                  ;;
                  esac
                  if [[ $save!="" ]]; then
                  echo "$date: $note" >> "$save"
                  echo "Note saved to $save"
                  fi
                  #...


                  this removes the duplication in the case-blocks and still allows you to clearly work with what you expect for every note.




                  The variable names could use a bit more... characters in general. You could even use snake_case to differentiate between words and all that. This allows you to make the code significantly more speaking.




                  The comment #list is really not adding any value. #get the date is already clearly outlined by the code, maybe a more human readable format explanation might be useful there. #save locations should be completely replaceable with proper variable names.




                  A word on the save locations you are using. As it stands, these are totally visible and will clutter the user's home directory. You should consider making these hidden by default by prefixing the filenames with a ., maybe even put them into a separate folder in the home-directory.






                  share|improve this answer









                  $endgroup$



                  Extract common code into a common block. You only need the case to determine the save-location. The note itself can be read before switching:



                  #...
                  read -p "What is this note for?
                  Work
                  School
                  Shopping
                  > " topic
                  read -p "
                  Note
                  > " note
                  save=""
                  case $topic in
                  "Work")
                  save=$wsave
                  break
                  ;;
                  "School")
                  save=scsave
                  break
                  ;;
                  "Shopping")
                  save=$shsave
                  break
                  ;;
                  *) echo "Error: Selection was not on list, try again.
                  "
                  ;;
                  esac
                  if [[ $save!="" ]]; then
                  echo "$date: $note" >> "$save"
                  echo "Note saved to $save"
                  fi
                  #...


                  this removes the duplication in the case-blocks and still allows you to clearly work with what you expect for every note.




                  The variable names could use a bit more... characters in general. You could even use snake_case to differentiate between words and all that. This allows you to make the code significantly more speaking.




                  The comment #list is really not adding any value. #get the date is already clearly outlined by the code, maybe a more human readable format explanation might be useful there. #save locations should be completely replaceable with proper variable names.




                  A word on the save locations you are using. As it stands, these are totally visible and will clutter the user's home directory. You should consider making these hidden by default by prefixing the filenames with a ., maybe even put them into a separate folder in the home-directory.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 8 hours ago









                  Vogel612Vogel612

                  21.8k447130




                  21.8k447130























                      2












                      $begingroup$

                      A couple of points:




                      1. You determine the date outside your loop, then loop forever. Every note you make after the first one is going to have the same date stamp.



                        A better approach would be to collect the date stamp just as you are writing to the file:



                        datestamp=$(...)
                        echo "$datestamp: $note" >> ...



                      2. When shells were originally written, almost everything was a program. The if statement takes an executable as its conditional element. (If you look, you will find a program named [ in /bin so that if [ ... will work.)



                        There is a program named true and a program named false. You can run them, and they don't do anything except set their exit codes to appropriate values.



                        You don't need to write while [ true ]. Instead, just write while true. This is important because while false will do something different from while [ false ]. You may be surprised ...




                      3. As @Vogel612 points out, you have duplicated code. I think you should keep the user feedback close to the user entry, so your checking should happen before typing the note. You can use another variable to hold the destination file path:



                        read -p "What is this note for?
                        Work
                        School
                        Shopping
                        > " topic
                        destfile=''
                        case $topic in
                        "Work" ) destfile="$wsave" ;;
                        "School" ) destfile="$scsave" ;;
                        "Shopping" ) destfile="$shsave" ;;
                        * ) echo "Error: Selection was not on list, try again.n" ;;
                        esac

                        if [ "$destfile" ]; then
                        read -p "nNoten> " note
                        echo "$date: $note" >> "$destfile"
                        echo "Note saved to $destfile"
                        fi






                      share|improve this answer









                      $endgroup$

















                        2












                        $begingroup$

                        A couple of points:




                        1. You determine the date outside your loop, then loop forever. Every note you make after the first one is going to have the same date stamp.



                          A better approach would be to collect the date stamp just as you are writing to the file:



                          datestamp=$(...)
                          echo "$datestamp: $note" >> ...



                        2. When shells were originally written, almost everything was a program. The if statement takes an executable as its conditional element. (If you look, you will find a program named [ in /bin so that if [ ... will work.)



                          There is a program named true and a program named false. You can run them, and they don't do anything except set their exit codes to appropriate values.



                          You don't need to write while [ true ]. Instead, just write while true. This is important because while false will do something different from while [ false ]. You may be surprised ...




                        3. As @Vogel612 points out, you have duplicated code. I think you should keep the user feedback close to the user entry, so your checking should happen before typing the note. You can use another variable to hold the destination file path:



                          read -p "What is this note for?
                          Work
                          School
                          Shopping
                          > " topic
                          destfile=''
                          case $topic in
                          "Work" ) destfile="$wsave" ;;
                          "School" ) destfile="$scsave" ;;
                          "Shopping" ) destfile="$shsave" ;;
                          * ) echo "Error: Selection was not on list, try again.n" ;;
                          esac

                          if [ "$destfile" ]; then
                          read -p "nNoten> " note
                          echo "$date: $note" >> "$destfile"
                          echo "Note saved to $destfile"
                          fi






                        share|improve this answer









                        $endgroup$















                          2












                          2








                          2





                          $begingroup$

                          A couple of points:




                          1. You determine the date outside your loop, then loop forever. Every note you make after the first one is going to have the same date stamp.



                            A better approach would be to collect the date stamp just as you are writing to the file:



                            datestamp=$(...)
                            echo "$datestamp: $note" >> ...



                          2. When shells were originally written, almost everything was a program. The if statement takes an executable as its conditional element. (If you look, you will find a program named [ in /bin so that if [ ... will work.)



                            There is a program named true and a program named false. You can run them, and they don't do anything except set their exit codes to appropriate values.



                            You don't need to write while [ true ]. Instead, just write while true. This is important because while false will do something different from while [ false ]. You may be surprised ...




                          3. As @Vogel612 points out, you have duplicated code. I think you should keep the user feedback close to the user entry, so your checking should happen before typing the note. You can use another variable to hold the destination file path:



                            read -p "What is this note for?
                            Work
                            School
                            Shopping
                            > " topic
                            destfile=''
                            case $topic in
                            "Work" ) destfile="$wsave" ;;
                            "School" ) destfile="$scsave" ;;
                            "Shopping" ) destfile="$shsave" ;;
                            * ) echo "Error: Selection was not on list, try again.n" ;;
                            esac

                            if [ "$destfile" ]; then
                            read -p "nNoten> " note
                            echo "$date: $note" >> "$destfile"
                            echo "Note saved to $destfile"
                            fi






                          share|improve this answer









                          $endgroup$



                          A couple of points:




                          1. You determine the date outside your loop, then loop forever. Every note you make after the first one is going to have the same date stamp.



                            A better approach would be to collect the date stamp just as you are writing to the file:



                            datestamp=$(...)
                            echo "$datestamp: $note" >> ...



                          2. When shells were originally written, almost everything was a program. The if statement takes an executable as its conditional element. (If you look, you will find a program named [ in /bin so that if [ ... will work.)



                            There is a program named true and a program named false. You can run them, and they don't do anything except set their exit codes to appropriate values.



                            You don't need to write while [ true ]. Instead, just write while true. This is important because while false will do something different from while [ false ]. You may be surprised ...




                          3. As @Vogel612 points out, you have duplicated code. I think you should keep the user feedback close to the user entry, so your checking should happen before typing the note. You can use another variable to hold the destination file path:



                            read -p "What is this note for?
                            Work
                            School
                            Shopping
                            > " topic
                            destfile=''
                            case $topic in
                            "Work" ) destfile="$wsave" ;;
                            "School" ) destfile="$scsave" ;;
                            "Shopping" ) destfile="$shsave" ;;
                            * ) echo "Error: Selection was not on list, try again.n" ;;
                            esac

                            if [ "$destfile" ]; then
                            read -p "nNoten> " note
                            echo "$date: $note" >> "$destfile"
                            echo "Note saved to $destfile"
                            fi







                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered 7 hours ago









                          Austin HastingsAustin Hastings

                          7,0921233




                          7,0921233




















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









                              draft saved

                              draft discarded


















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












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











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














                              Thanks for contributing an answer to Code Review 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.

                              Use MathJax to format equations. MathJax reference.


                              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%2fcodereview.stackexchange.com%2fquestions%2f215297%2fappend-a-note-to-one-of-three-files-based-on-user-choice%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

                              Are there any AGPL-style licences that require source code modifications to be public? Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Force derivative works to be publicAre there any GPL like licenses for Apple App Store?Do you violate the GPL if you provide source code that cannot be compiled?GPL - is it distribution to use libraries in an appliance loaned to customers?Distributing App for free which uses GPL'ed codeModifications of server software under GPL, with web/CLI interfaceDoes using an AGPLv3-licensed library prevent me from dual-licensing my own source code?Can I publish only select code under GPLv3 from a private project?Is there published precedent regarding the scope of covered work that uses AGPL software?If MIT licensed code links to GPL licensed code what should be the license of the resulting binary program?If I use a public API endpoint that has its source code licensed under AGPL in my app, do I need to disclose my source?

                              2013 GY136 Descoberta | Órbita | Referências Menu de navegação«List Of Centaurs and Scattered-Disk Objects»«List of Known Trans-Neptunian Objects»

                              Button changing it's text & action. Good or terrible? The 2019 Stack Overflow Developer Survey Results Are Inchanging text on user mouseoverShould certain functions be “hard to find” for powerusers to discover?Custom liking function - do I need user login?Using different checkbox style for different checkbox behaviorBest Practices: Save and Exit in Software UIInteraction with remote validated formMore efficient UI to progress the user through a complicated process?Designing a popup notice for a gameShould bulk-editing functions be hidden until a table row is selected, or is there a better solution?Is it bad practice to disable (replace) the context menu?