Bird
Raised Fist0
PowerShellscripting~10 mins

Copy-Item and Move-Item in PowerShell - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Copy-Item and Move-Item
Start
↓
Specify Source Path
↓
Specify Destination Path
↓
Choose Operation: Copy or Move
↓
Copy-Item: Duplicate file/folder
↓
Confirm copy success
↓
Move-Item: Transfer file/folder
↓
Confirm move success
↓
End
The flow starts by specifying source and destination paths, then choosing to copy or move the item, and finally confirming the operation success.
Execution Sample
PowerShell
Copy-Item -Path 'C:\temp\file.txt' -Destination 'C:\backup\file.txt'
Move-Item -Path 'C:\temp\file2.txt' -Destination 'C:\backup\file2.txt'
This script copies one file to a backup folder and moves another file to the same backup folder.
Execution Table
StepCommandSource PathDestination PathActionResult
1Copy-ItemC:\temp\file.txtC:\backup\file.txtCopy file.txtfile.txt copied to backup
2Move-ItemC:\temp\file2.txtC:\backup\file2.txtMove file2.txtfile2.txt moved to backup
3Check SourceC:\temp\file.txt-ExistsYes (unchanged)
4Check SourceC:\temp\file2.txt-ExistsNo (moved)
💡 Operations complete: file.txt copied (source remains), file2.txt moved (source removed)
Variable Tracker
VariableStartAfter Step 1After Step 2Final
file.txt in C:\tempExistsExistsExistsExists
file.txt in C:\backupNot existExistsExistsExists
file2.txt in C:\tempExistsExistsNot existNot exist
file2.txt in C:\backupNot existNot existExistsExists
Key Moments - 3 Insights
Why does file.txt still exist in the source folder after Copy-Item?
Copy-Item duplicates the file, so the original stays in the source folder as shown in execution_table row 3.
Why is file2.txt missing from the source folder after Move-Item?
Move-Item transfers the file, removing it from the source, as shown in execution_table row 4.
What happens if the destination file already exists?
By default, Copy-Item and Move-Item overwrite the destination file without prompt unless -NoClobber is used.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, after which step does file2.txt no longer exist in the source folder?
AAfter Step 2
BAfter Step 1
CAfter Step 3
DAfter Step 4
💡 Hint
Check the 'file2.txt in C:\temp' row in variable_tracker after Step 2
According to the execution_table, what action does Copy-Item perform?
ADeletes the source file
BMoves the file to destination
CDuplicates the file to destination
DRenames the file
💡 Hint
Look at Step 1 action and result in execution_table
If we change Move-Item to Copy-Item for file2.txt, what will happen to the source file after Step 2?
AIt will be deleted
BIt will remain in source folder
CIt will be renamed
DIt will move to a different folder
💡 Hint
Compare behavior of Copy-Item vs Move-Item in variable_tracker
Concept Snapshot
Copy-Item duplicates files or folders from source to destination.
Move-Item transfers files or folders, removing them from source.
Both require source and destination paths.
By default, existing destination files are overwritten.
Use Copy-Item to keep source intact, Move-Item to relocate files.
Full Transcript
This lesson shows how Copy-Item and Move-Item work in PowerShell. First, you specify the source and destination paths. Copy-Item duplicates the file or folder, so the original stays in place. Move-Item transfers the file or folder, removing it from the source. The execution table traces these steps with examples copying and moving files. Variable tracking shows file existence changes. Key moments clarify why copied files remain and moved files disappear from source. The quiz tests understanding of these behaviors. Remember, Copy-Item keeps the source, Move-Item moves it.

Practice

(1/5)
1. What does the PowerShell command Copy-Item do?
easy
A. Duplicates files or folders to a new location without removing the original
B. Deletes files or folders permanently
C. Moves files or folders to a new location and deletes the original
D. Renames files or folders in the current location

Solution

  1. Step 1: Understand the purpose of Copy-Item

    Copy-Item creates a copy of the specified file or folder at a new location, leaving the original intact.
  2. Step 2: Compare with other commands

    Unlike Move-Item, Copy-Item does not remove the original file or folder.
  3. Final Answer:

    Duplicates files or folders to a new location without removing the original -> Option A
  4. Quick Check:

    Copy-Item = Duplicate without deleting original [OK]
Hint: Copy-Item duplicates; Move-Item moves and deletes original [OK]
Common Mistakes:
  • Confusing Copy-Item with Move-Item
  • Thinking Copy-Item deletes the original file
  • Assuming Copy-Item renames files
2. Which of the following is the correct syntax to move a file named report.txt from C:\Docs to D:\Backup in PowerShell?
easy
A. Copy-Item -Source 'C:\Docs\report.txt' -Target 'D:\Backup'
B. Move-Item -Path 'C:\Docs\report.txt' -Destination 'D:\Backup'
C. Move-Item -Source 'C:\Docs\report.txt' -Target 'D:\Backup' -Force
D. Copy-Item -Path 'C:\Docs\report.txt' -Destination 'D:\Backup'

Solution

  1. Step 1: Identify the correct command for moving files

    Move-Item is used to move files; Copy-Item copies files.
  2. Step 2: Check the correct parameter names

    Move-Item uses -Path for source and -Destination for target location.
  3. Final Answer:

    Move-Item -Path 'C:\Docs\report.txt' -Destination 'D:\Backup' -> Option B
  4. Quick Check:

    Move-Item syntax = -Path and -Destination [OK]
Hint: Use Move-Item with -Path and -Destination to move files [OK]
Common Mistakes:
  • Using Copy-Item instead of Move-Item to move files
  • Using incorrect parameter names like -Source or -Target
  • Omitting quotes around paths with backslashes
3. What will be the result of running this PowerShell code?
Copy-Item -Path 'C:\Temp\file1.txt' -Destination 'C:\Backup' -Force
Move-Item -Path 'C:\Temp\file2.txt' -Destination 'C:\Backup'
medium
A. file1.txt is copied to C:\Backup; file2.txt is moved to C:\Backup and removed from C:\Temp
B. Both file1.txt and file2.txt are copied to C:\Backup; originals remain in C:\Temp
C. file1.txt is moved to C:\Backup; file2.txt is copied to C:\Backup
D. Both commands will fail due to missing parameters

Solution

  1. Step 1: Analyze Copy-Item command

    Copy-Item copies file1.txt to C:\Backup; -Force overwrites if exists; original remains.
  2. Step 2: Analyze Move-Item command

    Move-Item moves file2.txt to C:\Backup and deletes it from C:\Temp.
  3. Final Answer:

    file1.txt is copied to C:\Backup; file2.txt is moved to C:\Backup and removed from C:\Temp -> Option A
  4. Quick Check:

    Copy-Item copies; Move-Item moves and deletes original [OK]
Hint: Copy-Item keeps original; Move-Item removes original [OK]
Common Mistakes:
  • Assuming Move-Item copies instead of moves
  • Thinking Copy-Item deletes original file
  • Confusing -Force parameter effects
4. You run this command but get an error:
Move-Item -Path 'C:\Data\file.txt' -Destination 'C:\Archive\file.txt'

What is the most likely cause?
medium
A. The destination path includes the filename, causing a conflict
B. Move-Item cannot move files between drives
C. Move-Item requires the -Force parameter to work
D. The source file does not exist or path is incorrect

Solution

  1. Step 1: Check if source file exists

    Move-Item fails if the source file path is wrong or file missing.
  2. Step 2: Understand destination path usage

    Destination can include filename; this is valid and not an error cause.
  3. Final Answer:

    The source file does not exist or path is incorrect -> Option D
  4. Quick Check:

    Missing source file causes Move-Item error [OK]
Hint: Verify source file exists before moving [OK]
Common Mistakes:
  • Assuming destination filename causes error
  • Thinking Move-Item can't move across drives
  • Believing -Force is always required
5. You want to move all .log files from C:\Logs to D:\OldLogs, but keep a copy of the latest log file in C:\Logs. Which PowerShell commands achieve this?
hard
A. Copy-Item -Path 'C:\Logs\*.log' -Destination 'D:\OldLogs'; Move-Item -Path 'C:\Logs\*.log' -Destination 'D:\OldLogs' -Exclude 'latest.log'
B. Move-Item -Path 'C:\Logs\*.log' -Destination 'D:\OldLogs'; Move-Item -Path 'D:\OldLogs\latest.log' -Destination 'C:\Logs'
C. Move-Item -Path 'C:\Logs\latest.log' -Destination 'D:\OldLogs'; Move-Item -Path 'C:\Logs\*.log' -Destination 'D:\OldLogs' -Exclude 'latest.log'
D. Move-Item -Path 'C:\Logs\*.log' -Destination 'D:\OldLogs' -Exclude 'latest.log'; Copy-Item -Path 'C:\Logs\latest.log' -Destination 'C:\Logs'

Solution

  1. Step 1: Move latest.log first

    Move-Item moves latest.log to D:\OldLogs, removing it from C:\Logs.
  2. Step 2: Move all other .log files excluding latest.log

    Move-Item moves all other .log files to D:\OldLogs, excluding latest.log which is already moved.
  3. Final Answer:

    Move-Item -Path 'C:\Logs\latest.log' -Destination 'D:\OldLogs'; Move-Item -Path 'C:\Logs\*.log' -Destination 'D:\OldLogs' -Exclude 'latest.log' -> Option C
  4. Quick Check:

    Moving latest.log first then moving others excluding latest.log moves all logs correctly [OK]
Hint: Move latest.log first, then move others excluding latest.log [OK]
Common Mistakes:
  • Copying all files first losing latest.log
  • Moving latest.log to wrong folder
  • Using -Exclude incorrectly or in wrong command
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard