Sponsored Content
Operating Systems OS X (Apple) Batch file to move video files and retain sub-directories Post 302522817 by DGPickett on Monday 16th of May 2011 04:55:40 PM
Old 05-16-2011
A shell script can do this for you. It needs to find all the avi files in Pictures, find all the target date dirs supporting those files, make any missing Movies dirs, and move the files.
Code:
#!/bin/ksh
 
cd Pictures
 
for f in */*.avi
do
 if [ "$f" = "*/*.avi"
 then
  break
 fi
 
 if [ ! -d ../Movies/"${f%/*}" ]
 then
  mkdir ../Movies/"${f%/*}"
 fi
 
 mv "$f" ../Movies/"$f"
done

You must tune this up for the actual absolute path of ?\Pictures\. I am assuming the slashes reverse in the shell world, not being a MAC guy.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

A Batch job to delete files from various directories

Hi, I have a shell script to find files older than 'X' days ($2) in directory path ($1) and delete them. Like this: my_file_remover.sh /usr/home/c 90 Now, I need to modify this script and add it in CRON, so that it checks other directories also. Like: my_file_remover.sh /usr/home/c... (3 Replies)
Discussion started by: guruparan18
3 Replies

2. UNIX for Dummies Questions & Answers

Batch Renaming: Change files' extensions in many sub-directories

Hi all - I'm trying to rename a large number of files all at once and need some help figuring out the command line syntax to do it. I've already done quite a bit of research with the rename and mv commands, but so far haven't found a solution that seems to work for me. So: The files exist... (10 Replies)
Discussion started by: dave920
10 Replies

3. Shell Programming and Scripting

move files and retain subdir structure

hi: I have some files like this folder1/recording1.mp3 folder1/docs/budget.doc folder2/others/misc.mp3 folder3/others/notes.doc all this folders and files are under the mp3 folder. I would like to move just the mp3s to another folder but retain the subdir structure i have. So if... (4 Replies)
Discussion started by: jason7
4 Replies

4. Shell Programming and Scripting

want to move files in a dir into different directories based on the filename

I want to move the files in a dir to different dirs based on their file names. Ex: i have 4 different files with name - CTS_NONE_10476031_MRL_PFT20081215a.txt CTS_NONE_10633009_MRL_PFT20091020a.txt CTS_NONE_10345673_MRL_PFT20081215a.txt CTS_NONE_10872456_MRL_PFT20091020a.txt and the 1st... (4 Replies)
Discussion started by: Sriranga
4 Replies

5. Shell Programming and Scripting

Loop to move files in different directories

Hi, I have various log files in different paths. e.g. a/b/c/d/e/server.log a/b/c/d/f/server.log a/b/c/d/g/server.log a/b/c/h/e/server.log a/b/c/h/f/server.log a/b/c/h/g/server.log a/b/c/i/e/server.log a/b/c/i/e/server.log a/b/c/i/e/server.log and above these have an archive folder... (6 Replies)
Discussion started by: acc01
6 Replies

6. Shell Programming and Scripting

Recursively move directories along with files/specific files

I would like to transfer all files ending with .log from /tmp and to /tmp/archive (using find ) The directory structure looks like :- /tmp a.log b.log c.log /abcd d.log e.log When I tried the following command , it movies all the log files... (8 Replies)
Discussion started by: frintocf
8 Replies

7. Shell Programming and Scripting

Batch cycle and move files, please help

Hi guys, I'm not a great programmer but I do this project with a cool data and it has tons and tons of files which I need to sort before I can work with it. The problem I need to solve is to move all files that look like /X/Y/A_BC.xml to /X/B/A/Y/BC.xml So it involves cycling through... (7 Replies)
Discussion started by: drunkoctopus
7 Replies

8. UNIX for Dummies Questions & Answers

Move multipe files to corresponding directories

Hi, In a parent directory there are several files in the form IDENTIFIER1x IDENTIFIER1.yyy IDENTIFIER1_Z, etc IDENTIFIER2x IDENTIFIER2.yyy IDENTIFIER2_Z, etc IDENTIFIER3x IDENTIFIER3.yyy, IDENTIFIER3_Z, etcIn the same parent directory there are corresponding directories named... (7 Replies)
Discussion started by: spirospap
7 Replies

9. Shell Programming and Scripting

Need BASH Script Help to Move Files While Creating Directories

I've got this script to loop through all folders and move files that are more than 2 years old. I'm using the install command because it creates the necessary directories on the destination path and then I remove the source. I'd like to change the script to use the mv command since it is much... (4 Replies)
Discussion started by: consultant
4 Replies

10. UNIX for Beginners Questions & Answers

Move several files into specific directories with a loop

Hello, I'm a first time poster looking for help in scripting a task in my daily routine. I am new in unix but i am attracted to its use as a mac user. Bear with me... I have several files (20) that I manually drag via the mouse into several named directories over a network. I've used rsync... (14 Replies)
Discussion started by: SonnyClark
14 Replies
sysdir(3)						   BSD Library Functions Manual 						 sysdir(3)

NAME
sysdir_start_search_path_enumeration, sysdir_get_next_search_path_enumeration -- Enumeration of the filesystem paths for the various standard system directories where apps, resources, etc. get installed. SYNOPSIS
#include <sysdir.h> sysdir_search_path_enumeration_state sysdir_start_search_path_enumeration(sysdir_search_path_directory_t dir, sysdir_search_path_domain_mask_t domainMask); sysdir_search_path_enumeration_state sysdir_get_next_search_path_enumeration(sysdir_search_path_enumeration_state state, char *path); DESCRIPTION
The sysdir API returns the various standard system directories where apps, resources, etc. get installed. Because queries can return multiple directories, the API is in the form of an enumeration. The directories are returned in search path order: that is, the first place to look is returned first. sysdir_start_search_path_enumeration() begins enumeration of the filesystem paths for the specified directory and domain(s). The return value should be passed to one or more calls to sysdir_get_next_search_path_enumeration() to obtain the filesystem path and continue the enu- meration. sysdir_get_next_search_path_enumeration() returns a filesystem path for the directory and domain(s) specified by the state value returned by sysdir_start_search_path_enumeration(). Subsequent calls to sysdir_get_next_search_path_enumeration() should pass the state value returned by the previous call to continue the enumeration in each domain. A state value of zero will be returned when all domains have been enumer- ated. The path buffer that is passed to sysdir_get_next_search_path_enumeration() will be filled with a null-terminated string, possibly containing as many as PATH_MAX-1 characters. Some directory paths returned may not exist on the filesystem. Some combinations of dir and domainMask may return no directory paths. Directory paths returned in the user domain will contain "~" to refer to the user's directory. The environment variable NEXT_ROOT is prepended as necessary to the returned directory paths. NEXT_ROOT is ignored if the process is setuid or is code signed with entitlements. DIRECTORY CONSTANTS
The following sysdir_search_path_directory constants are defined: SYSDIR_DIRECTORY_APPLICATION Supported applications (Applications) SYSDIR_DIRECTORY_DEMO_APPLICATION Unsupported applications and demonstration versions (Applications/Demos) SYSDIR_DIRECTORY_DEVELOPER_APPLICATION Developer applications (Developer/Applications) Deprecated: As of Xcode 4.3, there is no longer a Developer Application directory directory; instead, Xcode.app is a self-contained application that gets installed in the user's Applications directory, by default, although it can be put anywhere. SYSDIR_DIRECTORY_ADMIN_APPLICATION System and network administration applications (Applications/Utilities) SYSDIR_DIRECTORY_LIBRARY Various user-visible documentation, support, and configuration files, resources (Library) SYSDIR_DIRECTORY_DEVELOPER Developer resources (Developer) Deprecated: As of Xcode 4.3, there is no longer a Developer directory; instead, Xcode.app is a self-contained application that gets installed in the user's Applications directory, by default, although it can be put anywhere. SYSDIR_DIRECTORY_USER User home directories (Users) SYSDIR_DIRECTORY_DOCUMENTATION Location of documentation (Library/Documentation) SYSDIR_DIRECTORY_DOCUMENT Location of documents (Documents) SYSDIR_DIRECTORY_CORESERVICE Location of core services (Library/CoreServices) SYSDIR_DIRECTORY_AUTOSAVED_INFORMATION Location of user's autosaved documents (Library/Autosave Information) SYSDIR_DIRECTORY_DESKTOP Location of user's desktop directory (Desktop) SYSDIR_DIRECTORY_CACHES Location of discardable cache files (Library/Caches) SYSDIR_DIRECTORY_APPLICATION_SUPPORT Location of application support files (Library/Application Support) SYSDIR_DIRECTORY_DOWNLOADS Location of user's downloads directory (Downloads) SYSDIR_DIRECTORY_INPUT_METHODS Location of input methods (Library/Input Methods) SYSDIR_DIRECTORY_MOVIES Location of user's Movies directory (Movies) SYSDIR_DIRECTORY_MUSIC Location of user's Music directory (Music) SYSDIR_DIRECTORY_PICTURES Location of user's Pictures directory (Pictures) SYSDIR_DIRECTORY_PRINTER_DESCRIPTION Location of system's PPDs directory (Library/Printers/PPDs) SYSDIR_DIRECTORY_SHARED_PUBLIC Location of user's Public sharing directory (Public) SYSDIR_DIRECTORY_PREFERENCE_PANES Location of the PreferencePanes directory for use with System Preferences (Library/PreferencePanes) SYSDIR_DIRECTORY_ALL_APPLICATIONS All directories where applications can occur (/Applications, ~/Applications, /Applications/Utilities, etc) SYSDIR_DIRECTORY_ALL_LIBRARIES All directories where resources can occur (/Library, ~/Library, /Network/Library, etc) DOMAIN CONSTANTS
The following sysdir_search_path_domain_mask constants are defined: SYSDIR_DOMAIN_MASK_USER The user's home directory -- the place to install user's personal items (~) SYSDIR_DOMAIN_MASK_LOCAL Local to the current machine -- the place to install items available to everyone on this machine SYSDIR_DOMAIN_MASK_NETWORK Publically available location in the local area network -- the place to install items available on the net- work SYSDIR_DOMAIN_MASK_SYSTEM Provided by Apple -- can't be modified SYSDIR_DOMAIN_MASK_ALL All domains -- all of the above and future domains ENVIRONMENT
The following environment variable affects the execution of sysdir_get_next_search_path_enumeration: NEXT_ROOT If the NEXT_ROOT environment variable is set and the current process is not tainted by uid or gid changes, NEXT_ROOT is prepended as necessary to the returned directory paths. NEXT_ROOT is ignored if the process is setuid or is code signed with entitlements. EXAMPLES
#include <limits.h> #include <sysdir.h> char path[PATH_MAX]; sysdir_search_path_enumeration_state state = sysdir_start_search_path_enumeration(dir, domainMask); while ( (state = sysdir_get_next_search_path_enumeration(state, path)) != 0 ) { // Handle directory path } HISTORY
The sysdir API first appeared in OS X 10.12, iOS 10, watchOS 3 and tvOS 10 replacing the deprecated NSSystemDirectories(3) API. Darwin December 22, 2015 Darwin
All times are GMT -4. The time now is 10:01 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy