簡體   English   中英

如何使用批處理腳本從當前目錄復制文件,而不復制子目錄?

[英]How do I copy files from the current directory, but not sub-directories using a batch script?

我有一份學校作業,我堅持這個問題。 我不知道還能在哪里轉。

所以這個問題是從上一個問題開始的,即將腳本“myfile.txt”復制到我的環境變量%BackUpPath%(設置為C:\\ backup)。 我的腳本如下:

  • copy / y myfile.txt%backuppath%

我堅持的問題要求我使用IF EXIST語句結合FOR循環創建一個腳本,以復制當前目錄中的所有文件,但不復制任何子目錄到%backuppath%。

我該怎么寫這個腳本?

按順序嘗試這些命令

@echo off tree "C:\\backup" find /c "*.TXT" C:\\Backup if exists "file path\\name" move /y "files within the folder to other folder" del /f /s "main file-path" for each %.txt IN C:\\Backup goto a <replace move with copy if needed> ;;this is a rough idea of what you might need.

這應該可以解決問題,但它是學術性的,而不是現實生活中的代碼。

它使用for-in-do的遞歸開關並檢查由for-in-do生成的filename.ext是否實際存在於當前目錄中 - 然后復制這些文件。

@echo off
set "backuppath=c:\folder"
for /r %%a in (*) do (
    if exist "%cd%\%%~nxa" (
       echo copying "%%a"
       copy "%%a" "%backuppath%" >nul
    )
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM