Sponsored Content
Top Forums Shell Programming and Scripting Move parent folder if contents match a parameter Post 302751965 by bakunin on Saturday 5th of January 2013 05:43:11 AM
Old 01-05-2013
You can move a folder like you move a file: with the "mv" command:

Code:
mv /path/to/old/folder /path/to/new/folder

You just have to search for the files/folders or whatever triggers the moving action (look at the man page of "find" for this) and then cut off the last part(s) of the resulting path as parameter for "mv". You can do that with shell parameter expansion.

For instance: suppose you found a file "/path/we/indend/to/move/file.exe" and you want to move everything from "/path/we/intend/to" to "/somewhere/else":

Code:
foundfile="/path/we/intend/to/move/file.exe"     # this would have been found
target=""
destination="/somewhere/else"

target="${foundfile%/*}"                   # chops off the filename -> "/path/we/intend/to/move"
target="${foundfile%/*/*}"                 # chops off filename plus one dir -> "/path/we/intend/to"
target="${foundfile%/*/*/*}"               # chops off filename plus two dirs -> "/path/we/intend"

mv "$target" "$destination"                 # carry out the moving action

I hope this helps.

bakunin
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

File Management: How do I move all JPGS in a folder structure to a single folder?

This is the file structure: DESKTOP/Root of Photo Folders/Folder1qweqwasdfsd/*jpg DESKTOP/Root of Photo Folders/Folder2asdasdasd/*jpg DESKTOP/Root of Photo Folders/Folder3asdadfhgasdf/*jpg DESKTOP/Root of Photo Folders/Folder4qwetwdfsdfg/*jpg DESKTOP/Root of Photo... (4 Replies)
Discussion started by: guptaxpn
4 Replies

2. Programming

Pass parameter from a child make to a parent

Hello, I have the following problem: I have makefileproj and makefilemod in a build process for a complex project - from makefileproj I call the makefilemod. In makefilemod I generate a list containing objects eg,: "../../../25_Build/Results/Objects/FBL/Fls.o... (4 Replies)
Discussion started by: marina_lmv
4 Replies

3. Shell Programming and Scripting

want to move set of file from one folder to another folder

Hi all, let me explain my requirments i am having 5 folder with different name for eg) abc , cdf , efd, rtg, ead each 5 folders contain 15 files i want to move 10 files to some other folder, remain 5 files should be there in the same folder. give me some suggestion on this. (6 Replies)
Discussion started by: natraj005
6 Replies

4. Shell Programming and Scripting

copy folder and its contents to another folder

Hi experts, I am coming to you with this basic question on copying a folder and its content from one location to another folder using PERL script. This is my requirement. I have a folder AB under /users/myhome I want to copy AB and its contents to /user/workspace. Finally it should... (1 Reply)
Discussion started by: amvarma77
1 Replies

5. Shell Programming and Scripting

Folder contents getting appended as strings while redirecting file contents to a variable

Hi one of the output of the command is as below # sed -n "/CCM-ResourceHealthCheck:/,/---------/{/CCM-ResourceHealthCheck:/d;/---------/d;p;}" Automation.OutputZ$zoneCounter | sed 's/$/<br>/' Resource List : <br> *************************** 1. row ***************************<br> ... (2 Replies)
Discussion started by: vivek d r
2 Replies

6. Shell Programming and Scripting

Script to move one folder to multiple folder...

Hi All, I have to requirement to write a shell script to move file from one folder (A) to another five folder (B,C,D,E,F) and destination folder should be blank. In not blank just skip. This script will run as a scheduler every 2 minutes. It will check number of files in folder A and move 1 to... (9 Replies)
Discussion started by: peekuabc
9 Replies

7. Shell Programming and Scripting

Move files from Space Folder to other folder

I want to move a folder with spaces from one folder to another. I have two folders like this, 1).RT_032-222 -4444-01/ 2). RT_032-555 -7777-01/ I want to move files from 2 to 1 through shell script.Here I want to assign this like a user defined variable like as Source branch... (2 Replies)
Discussion started by: kannansoft1985
2 Replies

8. Shell Programming and Scripting

If contents of A are in B then move the common contents to C

Hallo Team, I have 2 .csv files file A has 47600 lines and file B has 67000 lines FILEA SD0o9rb01-1d320ddbcc8d220f572739ebed5f58d1-v300g00 SD8bt0101-a0810bfe0e3396060126ec51b30dac0a-v300g00 SD05sce01-cb056af347ed4651f29eb3c3e9addbd6-v300g00... (3 Replies)
Discussion started by: kekanap
3 Replies

9. UNIX for Beginners Questions & Answers

Best way to move the contents of a folder to another one

what is the best way to move the contents of a folder to another one without deleting the structure of the first one. the contents could include subfolder too. both folder, the source-folder and the target-folder are on the same host. any idea is appreciated . (7 Replies)
Discussion started by: andy2000
7 Replies

10. Shell Programming and Scripting

Request for Shell script to move files from Subfolder to Parent folder and delete sub folder

Hi Team, I am new to shell script and there is a requirement where files should be moved from Subfolder to parent folder. Eg: parent folder --> /Interface/data/test/IN Sub folder -->/Interface/data/test/IN/Invoice20180607233338 Subfolder will be always with timestamp... (6 Replies)
Discussion started by: srivarun15
6 Replies
mv(1)								   User Commands							     mv(1)

NAME
mv - move files SYNOPSIS
/usr/bin/mv [-fi] source target_file /usr/bin/mv [-fi] source... target_dir /usr/xpg4/bin/mv [-fi] source target_file /usr/xpg4/bin/mv [-fi] source... target_dir DESCRIPTION
In the first synopsis form, the mv utility moves the file named by the source operand to the destination specified by the target_file. source and target_file may not have the same name. If target_file does not exist, mv creates a file named target_file. If target_file exists, its contents are overwritten. This first synopsis form is assumed when the final operand does not name an existing directory. In the second synopsis form, mv moves each file named by a source operand to a destination file in the existing directory named by the tar- get_dir operand. The destination path for each source is the concatenation of the target directory, a single slash character (/), and the last path name component of the source. This second form is assumed when the final operand names an existing directory. If mv determines that the mode of target_file forbids writing, it will print the mode (see chmod(2)), ask for a response, and read the standard input for one line. If the response is affirmative, the mv occurs, if permissible; otherwise, the command exits. Notice that the mode displayed may not fully represent the access permission if target is associated with an ACL. When the parent directory of source is writable and has the sticky bit set, one or more of the following conditions must be true: o the user must own the file o the user must own the directory o the file must be writable by the user o the user must be a privileged user If source is a file and target_file is a link to another file with links, the other links remain and target_file becomes a new file. If source and target_file/target_dir are on different file systems, mv copies the source and deletes the original. Any hard links to other files are lost. mv will attempt to duplicate the source file characteristics to the target, that is, the owner and group id, permission modes, modification and access times, ACLs, and extended attributes, if applicable. For symbolic links, mv will preserve only the owner and group of the link itself. If unable to preserve owner and group id, mv will clear S_ISUID and S_ISGID bits in the target. mv will print a diagnostic message to stderr if unable to clear these bits, though the exit code will not be affected. mv may be unable to preserve extended attributes if the target file system does not have extended attribute support. /usr/xpg4/bin/mv will print a diagnostic message to stderr for all other failed attempts to duplicate file characteristics. The exit code will not be affected. In order to preserve the source file characteristics, users must have the appropriate file access permissions. This includes being super- user or having the same owner id as the destination file. OPTIONS
The following options are supported: -f mv will move the file(s) without prompting even if it is writing over an existing target. Note that this is the default if the standard input is not a terminal. -i mv will prompt for confirmation whenever the move would overwrite an existing target. An affirmative answer means that the move should proceed. Any other answer prevents mv from overwriting the target. /usr/bin/mv Specifying both the -f and the -i options is not considered an error. The -f option will override the -i option. /usr/xpg4/bin/mv Specifying both the -f and the -i options is not considered an error. The last option specified will determine the behavior of mv. OPERANDS
The following operands are supported: source A path name of a file or directory to be moved. target_file A new path name for the file or directory being moved. target_dir A path name of an existing directory into which to move the input files. USAGE
See largefile(5) for the description of the behavior of mv when encountering files greater than or equal to 2 Gbyte ( 2**31 bytes). ENVIRONMENT VARIABLES
See environ(5) for descriptions of the following environment variables that affect the execution of mv: LANG, LC_ALL, LC_CTYPE, LC_MES- SAGES, and NLSPATH. EXIT STATUS
The following exit values are returned: 0 All input files were moved successfully. >0 An error occurred. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: /usr/bin/mv +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ |CSI |Enabled | +-----------------------------+-----------------------------+ |Interface Stability |Stable | +-----------------------------+-----------------------------+ /usr/xpg4/bin/mv +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWxcu4 | +-----------------------------+-----------------------------+ |CSI |Enabled | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ SEE ALSO
cp(1), cpio(1), ln(1), rm(1), setfacl(1), chmod(2), attributes(5), environ(5), fsattr(5), largefile(5), standards(5) NOTES
A -- permits the user to mark explicitly the end of any command line options, allowing mv to recognize filename arguments that begin with a -. As an aid to BSD migration, mv will accept - as a synonym for --. This migration aid may disappear in a future release. SunOS 5.10 7 Jun 2001 mv(1)
All times are GMT -4. The time now is 09:51 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy