rsync: list new and modified in source












1














I am using the following rsync command to determine all files that are newer (or different in checksum) in my source dir, or don't exist in the destination dir:



rsync -rltDO -hvinuczz /source/ /dest


and -i to get to know the exact reason for why a file would be transferred/updated.
I am omitting dir-times (-O) since there are updated directories in the destination that would show up in the output generated by rsync.
The problem I have with this command is: It lists new (i.e., not existing in the source) files in the destination like so: >f+++++++++.



So my questions are:



(1) Why is -i listing those at all? My options clearly specify that I want to sync from source to destination, all content that is newer (or has different checksum) in source. Files existing in destination but not in source do not fall into that category.



(2) Which options achieve: List anything in source that either does not exist in destination, or exists and is newer (or has diff checksum) in the source?



Note that man rsync describes -i like so:




-i, --itemize-changes



    Requests a simple itemized list of the changes that are being made to each file, including attribute changes. 
    This is exactly the same as specifying --out-format='%i %n%L'
    If you repeat the option, unchanged files will also be output, but only if the receiving rsync is at least version 2.6.7 (you can use -vv with older versions of rsync, but that also turns on the output of other verbose messages).

    The “%i” escape has a cryptic output that is 11 letters long. 
    The general format is like the string YXcstpoguax, where Y is replaced by the type of update being done, X is replaced by the file-type, and the other letters represent attributes that may be output if they are being modified.



    The update types that replace the Y are as follows:





    • A < means that a file is being transferred to the remote host (sent).

    • A > means that a file is being transferred to the local host (received).

    •    ︙





So >f+++++++++ is telling me that there is a new file to be transferred – and if I interpret the documentation, it should be received on the local end (== source). Really?










share|improve this question





























    1














    I am using the following rsync command to determine all files that are newer (or different in checksum) in my source dir, or don't exist in the destination dir:



    rsync -rltDO -hvinuczz /source/ /dest


    and -i to get to know the exact reason for why a file would be transferred/updated.
    I am omitting dir-times (-O) since there are updated directories in the destination that would show up in the output generated by rsync.
    The problem I have with this command is: It lists new (i.e., not existing in the source) files in the destination like so: >f+++++++++.



    So my questions are:



    (1) Why is -i listing those at all? My options clearly specify that I want to sync from source to destination, all content that is newer (or has different checksum) in source. Files existing in destination but not in source do not fall into that category.



    (2) Which options achieve: List anything in source that either does not exist in destination, or exists and is newer (or has diff checksum) in the source?



    Note that man rsync describes -i like so:




    -i, --itemize-changes



      Requests a simple itemized list of the changes that are being made to each file, including attribute changes. 
      This is exactly the same as specifying --out-format='%i %n%L'
      If you repeat the option, unchanged files will also be output, but only if the receiving rsync is at least version 2.6.7 (you can use -vv with older versions of rsync, but that also turns on the output of other verbose messages).

      The “%i” escape has a cryptic output that is 11 letters long. 
      The general format is like the string YXcstpoguax, where Y is replaced by the type of update being done, X is replaced by the file-type, and the other letters represent attributes that may be output if they are being modified.



      The update types that replace the Y are as follows:





      • A < means that a file is being transferred to the remote host (sent).

      • A > means that a file is being transferred to the local host (received).

      •    ︙





    So >f+++++++++ is telling me that there is a new file to be transferred – and if I interpret the documentation, it should be received on the local end (== source). Really?










    share|improve this question



























      1












      1








      1







      I am using the following rsync command to determine all files that are newer (or different in checksum) in my source dir, or don't exist in the destination dir:



      rsync -rltDO -hvinuczz /source/ /dest


      and -i to get to know the exact reason for why a file would be transferred/updated.
      I am omitting dir-times (-O) since there are updated directories in the destination that would show up in the output generated by rsync.
      The problem I have with this command is: It lists new (i.e., not existing in the source) files in the destination like so: >f+++++++++.



      So my questions are:



      (1) Why is -i listing those at all? My options clearly specify that I want to sync from source to destination, all content that is newer (or has different checksum) in source. Files existing in destination but not in source do not fall into that category.



      (2) Which options achieve: List anything in source that either does not exist in destination, or exists and is newer (or has diff checksum) in the source?



      Note that man rsync describes -i like so:




      -i, --itemize-changes



        Requests a simple itemized list of the changes that are being made to each file, including attribute changes. 
        This is exactly the same as specifying --out-format='%i %n%L'
        If you repeat the option, unchanged files will also be output, but only if the receiving rsync is at least version 2.6.7 (you can use -vv with older versions of rsync, but that also turns on the output of other verbose messages).

        The “%i” escape has a cryptic output that is 11 letters long. 
        The general format is like the string YXcstpoguax, where Y is replaced by the type of update being done, X is replaced by the file-type, and the other letters represent attributes that may be output if they are being modified.



        The update types that replace the Y are as follows:





        • A < means that a file is being transferred to the remote host (sent).

        • A > means that a file is being transferred to the local host (received).

        •    ︙





      So >f+++++++++ is telling me that there is a new file to be transferred – and if I interpret the documentation, it should be received on the local end (== source). Really?










      share|improve this question















      I am using the following rsync command to determine all files that are newer (or different in checksum) in my source dir, or don't exist in the destination dir:



      rsync -rltDO -hvinuczz /source/ /dest


      and -i to get to know the exact reason for why a file would be transferred/updated.
      I am omitting dir-times (-O) since there are updated directories in the destination that would show up in the output generated by rsync.
      The problem I have with this command is: It lists new (i.e., not existing in the source) files in the destination like so: >f+++++++++.



      So my questions are:



      (1) Why is -i listing those at all? My options clearly specify that I want to sync from source to destination, all content that is newer (or has different checksum) in source. Files existing in destination but not in source do not fall into that category.



      (2) Which options achieve: List anything in source that either does not exist in destination, or exists and is newer (or has diff checksum) in the source?



      Note that man rsync describes -i like so:




      -i, --itemize-changes



        Requests a simple itemized list of the changes that are being made to each file, including attribute changes. 
        This is exactly the same as specifying --out-format='%i %n%L'
        If you repeat the option, unchanged files will also be output, but only if the receiving rsync is at least version 2.6.7 (you can use -vv with older versions of rsync, but that also turns on the output of other verbose messages).

        The “%i” escape has a cryptic output that is 11 letters long. 
        The general format is like the string YXcstpoguax, where Y is replaced by the type of update being done, X is replaced by the file-type, and the other letters represent attributes that may be output if they are being modified.



        The update types that replace the Y are as follows:





        • A < means that a file is being transferred to the remote host (sent).

        • A > means that a file is being transferred to the local host (received).

        •    ︙





      So >f+++++++++ is telling me that there is a new file to be transferred – and if I interpret the documentation, it should be received on the local end (== source). Really?







      rsync






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Dec 16 '18 at 15:40









      Scott

      15.6k113889




      15.6k113889










      asked Dec 16 '18 at 12:24









      quaylarquaylar

      1163




      1163






















          0






          active

          oldest

          votes











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


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1384997%2frsync-list-new-and-modified-in-source%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















          draft saved

          draft discarded




















































          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%2f1384997%2frsync-list-new-and-modified-in-source%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

          Plaza Victoria

          Brian Clough

          Cáceres