【问题标题】:Is it possible to rename a FTP Folder using FTP commands?是否可以使用 FTP 命令重命名 FTP 文件夹?
【发布时间】:2010-12-07 11:16:00
【问题描述】:

是否可以使用 FTP 命令重命名 FTP 服务器上的文件夹?

我知道有一个重命名命令用于文件重命名,但我可以将它用于文件夹的名称吗?

【问题讨论】:

    标签: ftp


    【解决方案1】:

    AFAIK,用于重命名目录(文件夹)的命令(RNFR/RNTO)与用于重命名文件的命令相同。您的问题可能是您无权执行您正在尝试执行的操作。

    【讨论】:

      【解决方案2】:

      我正在使用以下代码在 ftp 登录功能后复制所有文件和文件夹

      function ftp_sync ($dir) 
      { 
          global $conn_id; 
      
          if ($dir != ".") 
          { 
              if (ftp_chdir($conn_id, $dir) == false) 
              { 
                  echo ("Change Dir Failed: $dir<BR>\r\n"); 
                  return; 
              } 
              if (!(is_dir($dir))) 
                  mkdir($dir); 
              chdir ($dir); 
          } 
      
          $contents = ftp_nlist($conn_id, "."); 
          foreach ($contents as $file) 
          { 
              if ($file == '.' || $file == '..') 
                  continue; 
      
              if (@ftp_chdir($conn_id, $file)) 
              { 
                  ftp_chdir ($conn_id, ".."); 
                  ftp_sync ($file); 
              } 
              else 
                  ftp_get($conn_id, $file, $file, FTP_BINARY); 
          } 
      
          ftp_chdir ($conn_id, ".."); 
          chdir (".."); 
      } 
      

      【讨论】:

        【解决方案3】:

        重命名应该可以:

        rename <dirname> <newdirname>
        

        【讨论】:

          【解决方案4】:

          一种方法是创建一个临时目录,将所有文件移入其中,删除现有目录,创建所需目录并将所有文件移入新目录。最后,删除临时目录。

          (假设 ftp 重命名不起作用,因为原始文件夹不为空)。

          【讨论】:

          • 你是在告诉我在 FTP 服务器上重命名非空文件夹是不可能的吗?
          • 不,但我记得在某些情况下——某些 ftp 服务器实现中的 iirc——如果文件夹不为空,则无法重命名该文件夹。这将是一种解决方法——但不是一个很好的解决方案。
          【解决方案5】:

          这可能取决于您使用的 FTP 客户端以及您要连接的 FTP 服务器。你能同时指定它们吗?

          【讨论】:

          • 我不使用任何客户端。我必须在我的应用程序中使用 ftp 命令。
          • 你在测试/使用什么服务器?
          猜你喜欢
          • 1970-01-01
          • 2015-05-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-08-17
          相关资源
          最近更新 更多