Monday, 8 December 2014

How to put scp in background

To execute any linux command in background we use nohup. But the problem with scp command is that it prompts for the password (if password authentication is used).
So to make scp execute as a background process do this:


Step 1>
$ nohup scp file_to_copy user@server:/path/to/copy/the/file > nohup.out 2>&1
if it prompts for password then enter password.
Then press ctrl + z which will temporarily suspend the command,


SCP will give output:
[1]+  Stopped   scp file_to_copy user@server:/path/to/copy/the/file > nohup.out 2>&1


Step 2>
then enter the command:
$ bg
This will start executing the command in backgroud


SCP will give output:
[1]+ scp file_to_copy user@server:/path/to/copy/the/file > nohup.out 2>&1




Step 3>
To see what background process that is running you can type command:


$ jobs
SCP will give output:
[1]+  Running  scp file_to_copy user@server:/path/to/copy/the/file > nohup.out 2>&1




To bring the process back to foreground you can use 'fg' command.

No comments:

Post a Comment