Moving pictures and videos within Sub-folders

Thanks.

Using a script seemed the best way to tackle this.

Here it is in the Rename dialog, just to show what it does:


I've also highlighted the line where it decides if a file is a video or not. You may need to add some file extensions there if it doesn't have all the ones you use.

And here it is in button form:

<?xml version="1.0"?>
<button backcol="none" display="both" label_pos="right" separate="yes" textcol="none">
	<label>Organise Daily</label>
	<icon1>#move</icon1>
	<function type="normal">
		<instruction>Rename FROM * TO * TYPE=files </instruction>
		<instruction>@script vbscript</instruction>
		<instruction>option explicit</instruction>
		<instruction />
		<instruction>Dim fs</instruction>
		<instruction>Set fs = CreateObject(&quot;Scripting.FileSystemObject&quot;)</instruction>
		<instruction />
		<instruction>Function Rename_GetNewName ( strFileName, strFullPath, fIsFolder, strOldName, ByRef strNewName )</instruction>
		<instruction />
		<instruction>	Dim strExtension</instruction>
		<instruction>	Dim fileObj</instruction>
		<instruction />
		<instruction>	If (fIsFolder OR 0 = InStr(strFileName,&quot;.&quot;)) Then</instruction>
		<instruction>		Exit Function &apos; Don&apos;t do anything to folders, or files without extensions.</instruction>
		<instruction>	End If</instruction>
		<instruction />
		<instruction>	strExtension = Right(strFileName, Len(strFileName)-(InStrRev(strFileName,&quot;.&quot;)-1))</instruction>
		<instruction />
		<instruction>	If (strExtension = &quot;.avi&quot; OR strExtension = &quot;.mpg&quot; OR strExtension = &quot;.mkv&quot;) Then</instruction>
		<instruction>		strNewName = &quot;V\&quot; &amp; strFileName</instruction>
		<instruction>	Else</instruction>
		<instruction>		Set fileObj = fs.GetFile(strFullPath &amp; &quot;\&quot; &amp; strFileName)</instruction>
		<instruction>		strNewName = Year(fileObj.DateLastModified) &amp; &quot;\&quot; &amp; strFileName</instruction>
		<instruction>	End If</instruction>
		<instruction>								</instruction>
		<instruction>End Function</instruction>
	</function>
</button>

Paste that to your toolbar and you'll then have a button you can click which moves all files below the current directory into either a V subdirectory (for videos) or a subdirectory for the year in their modified timestamps.

Note that the button runs on all files below the current directory, whether they are selected or not. You can change that if you want, but I figured it would save a step. Of course, be careful not to click the button by mistake in some other directory!

If you edit the button after pasting it on your toolbar, you'll find a field where you can give it a hotkey if you want.