Bird
0
0

You want to automate copying a directory project from your local machine to multiple remote servers listed in servers.txt. Which approach correctly uses scp in a bash script?

hard📝 Application Q9 of 15
Linux CLI - SSH and Remote Access
You want to automate copying a directory project from your local machine to multiple remote servers listed in servers.txt. Which approach correctly uses scp in a bash script?
Afor server in $(cat servers.txt); do scp -r project user@$server:~/; done
Bscp -r project user@$(cat servers.txt):~/
Cscp -r project user@servers.txt:~/
Dwhile read server; scp project user@$server:~/; done < servers.txt
Step-by-Step Solution
Solution:
  1. Step 1: Understand looping over servers

    To copy to multiple servers, loop over each server name and run scp for each.
  2. Step 2: Check options

    for server in $(cat servers.txt); do scp -r project user@$server:~/; done correctly loops over servers and runs scp -r for each. scp -r project user@$(cat servers.txt):~/ tries to use all servers at once, which is invalid. scp -r project user@servers.txt:~/ treats servers.txt as a host. while read server; scp project user@$server:~/; done < servers.txt has syntax error in loop and misses -r for directory.
  3. Final Answer:

    for server in $(cat servers.txt); do scp -r project user@$server:~/; done -> Option A
  4. Quick Check:

    Loop over servers and scp each separately [OK]
Quick Trick: Use a for loop to scp directory to each server [OK]
Common Mistakes:
  • Trying to scp to multiple hosts at once
  • Incorrect loop syntax
  • Omitting -r for directories

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Linux CLI Quizzes