1

I have images that I scan into a directory in Windows 7 that need to be uploaded to a network share. I know there are several methods of doing this, but I'm wondering if you all know of some options that would work best.

Process I'm Looking For:

  1. I scan in an image to a local directory
  2. In the background (on a scheduled basis, probably overnight), the files that I've scanned are copied to a network share, silently.

This process is taking place on more than one PC, so I need an easy deployment option. I need the process to be silent, running in the background.

On the share, I need a way to differentiate which PC the scanned files came from.

Methods that might work:

  • Scheduled task of xcopy of the local folder to the share
  • Third party folder sync software

I'd prefer not using a cloud storage option, as I'm not sure if they allow you to use their software on more than one PC (I have 30 or so) without a subscription.

8
  • Windows? OS X? Linux?
    – ernie
    May 13, 2013 at 20:43
  • I'm sorry, Windows 7 x64. Updated question.
    – user201262
    May 13, 2013 at 20:43
  • The network share is also on a Windows 7 box.
    – user201262
    May 13, 2013 at 20:44
  • 5
    I'd suggest researching robocopy (included by default in Win7), and sticking into a scheduled task. Lots of flexibility around moving, copying, syncing, etc.
    – ernie
    May 13, 2013 at 20:46
  • 1
    Sync has been already fully discussed on this forum in other posts and there are heaps of free solutions. Differentiating the source can be done by various simple means, such as by using a separate subfolder or user account for each PC.
    – harrymc
    Jun 11, 2013 at 15:09

3 Answers 3

3

Assumptions:

  1. You are copying, not moving
  2. You want to overwrite files of the same name

You can set up a scheduled task on each machine to run a batch file with the following line: xcopy C:\yourfolderhere*.* \server\share\%computername%\ /S /C /Q /Y /I

Substitute "C:\yourfolderhere" with whatever your source location is Substitute "\server\share" with whatever your destination location is

This will copy all files from the local computer to the file server and put them in a directory with the computers name (%computername% will translate to whatever the local PCs name is). The /I switch will ensure that if the target folder doesn't exist, it'll create it. That will allow you to simply deploy the script to each machine once, and it will automatically create the needed directory structure, no manual intervention required.

To take it one step further, you could even automate the creation of the scheduled task, which could include copying the .bat file to a specific place in the local machine. This link here has a great .bat script you can use as a base that will determine what version of Windows you're using, and execute the proper commands. You could easily tweak it to also copy script to the local machine: http://myunster.com/blog/server-administration/30.html

1

Microsoft SyncToy can do this very easily and with very little setup. Similar to drop box, but on your local network. It can work in real-time as well, so both locations will always reflect each other.

Wiki: http://en.wikipedia.org/wiki/SyncToy
Download: http://www.microsoft.com/en-us/download/details.aspx?id=15155

1
  • 1
    This is a nice solution, but it's worth noting that SyncToy itself doesn't include a scheduler -- when you set up the directory pairings it reminds you about this.
    – TooTone
    Jun 11, 2013 at 17:51
0

I've used a piece of free software called SyncBack to do something, roughly similar and it does the trick:

http://www.2brightsparks.com/syncback/

I use it to sync photos from my home PC into a central NAS so they are available to everyone on the network. At work we also had a requirement to do an encrypted backup of some files from a server, so we licensed the SyncBackSE edition that supports encryption and it also worked well.