"How to loop command over folders in a directory?"

Post #302974467 by azurite on Tuesday 31st of May 2016 01:25:46 AM

How to loop command over folders in a directory?

Hello all,

I'm fairly new to scripting so please bear with me. I will try to explain as best as I can but if there's anything that is not clear, please let me know.

I have a directory (see below) with numerous folders and within each of those folders are various files. I would like to run a script that will go into each folder and then select the specified files and then repeat this process for all the folders that are in a given directory. Here is an example of how the path is set up:



The folders contain multiple files with various extensions. I would like the script to go into random#1 folder, look for the specified files, execute the command, and then move onto random#2 folder and do the same.

Inside each folder are the following files:

I have the following script that only works on one specific type of file inside each folder but I need to write a new one that works on specified files (above) located inside each folder in the directory.

How can I make it so that I can replace the above to make a list of all the folders and then run a script that goes inside each folder and looks for the specified files?

Basically, I need the script to go into the directory, into the subdirectory, into the folders, and look for specified files in those folders. And repeat for every folder there is.

I have exhausted all options of self-teaching/experimenting to figure this out on my own and therefore, I'm hoping I can find some solution here.

Thank you in advance.

Last edited by azurite; 06-15-2016 at 12:46 AM..
 
Test Your Knowledge in Science: Mathematics
Difficulty: Medium
A 'Millinillion' is a real number.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

script to loop around folders

I have a folder called {homedata} Within this folder there are 12 subfolders 200601.200612 Within each subfolder there are 8 sets of files Each filename commences with A B C D E F G or H, so {filename}* can be used. I am trying to write a script which will from the top level go... (2 Replies)
Discussion started by: grinder182533
2 Replies

2. Shell Programming and Scripting

Prepend name of directory to children folders

Hi, I am a shell scripting newbie. I am in need of a shell script that will prepend the name of the parent directory to the child directory. For example if the shell script called rename.sh is invoked with ">rename.sh /home/foobar/Simple" and the structure of the folder Simple is : Simple... (7 Replies)
Discussion started by: kalichar
7 Replies

3. Shell Programming and Scripting

Help modifying script to loop through all folders

I have this script someone very kindly help me write last year which loops through all files in a folder and does a command. I need to modify it to loop through all sub-folders of a main folder and only perform the command on files modified after Jan 1st 2008. And I need the command to place the... (3 Replies)
Discussion started by: Fred Goldman
3 Replies

4. Shell Programming and Scripting

Loop through folders and open them

Well the title says it all. I need a loop script that directs to a folder and opens a bash file. I just found out about loop files the other day and yeah, dont know if that can be done. (6 Replies)
Discussion started by: snoopy817
6 Replies

5. Shell Programming and Scripting

Loop folders, delete files, copy new ones

Folks, I am hopeful that you may be able to help me out with writing a script that can be run nightly (as cron?) to loop through all subfolders within the "/media" directory, delete all of the files in each of them, and then copy in all of the files from the "/home//sansa" directory to each of... (6 Replies)
Discussion started by: acraig
6 Replies

6. UNIX for Dummies Questions & Answers

Counting number of folders in a Directory

Help Needed ! Can we count number of folders of specific date in a directory, even if directory has folders of different dates. Please reply as soon as possible. (1 Reply)
Discussion started by: vishal_215
1 Replies

7. Shell Programming and Scripting

Copy the files in directory and sub folders as it is to another directory.

How to copy files from one directory to another directory with the subfolders copied. If i have folder1/sub1/sub2/* it needs to copy files to folder2/sub1/sub2/*. I do not want to create sub folders in folder2. Can copy command create them automatically? I tried cp -a and cp -R but did... (4 Replies)
Discussion started by: santosh2626
4 Replies

8. Shell Programming and Scripting

Bash directory loop, but only choose those folders with specific word in it

Hello, how in bash i can get directory loop, but only choose those folders with specific word in it, so it will only echo those with specific word #!/bin/bash for filename in /home/test/* do if ; then echo $filename; fithx! (4 Replies)
Discussion started by: ZerO13
4 Replies

9. UNIX for Beginners Questions & Answers

Loop through the folders and search for particular string in files

Hello, Opearting System Environment : HP Unix B.11.31 U I look for script to On specific folders list On specific filelist Search for given string For Example : r48_buildlib.txt contains wpr480.0_20161027 wpr480.0_20161114 wpr481.0_20161208 wpr482.0_20161222... (4 Replies)
Discussion started by: Siva SQL
4 Replies

10. Shell Programming and Scripting

Trying to loop through folders and execute an existing python script.

I am trying to loop through lots and lots of folders and use the names of the folders to run a Python script which has parameters. E.g. -- setup_refs -n John -f England/London/Hackney/John -c con/con.cnf Normally to run `setup_refs` once from command line it's: `python setup_refs.py -n John... (3 Replies)
Discussion started by: Mr_Keystrokes
3 Replies
FLIST(1)							     [nmh-1.5]								  FLIST(1)

NAME
flist, flists - list the number of messages in given sequence(s) SYNOPSIS
flist [+folder1 [+folder2 ...]] [-sequence name1 [-sequence name2 ...]] [-all | -noall] [-showzero | -noshowzero] [-recurse | -norecurse] [-fast | -nofast] [-alpha | -noalpha] [-version] [-help] flists is equivalent to flist -all DESCRIPTION
Flist is used to search a list of folders and display the number of messages in these folders that are in a given sequence or set of sequences (for example the "unseen" sequence). This is especially useful if you use some mechanism such as slocal or procmail (typically in conjunction with rcvstore) to pre-sort your mail into different folders before you view it. By default, the command flist will search the current folder for the given sequence or sequences (usually "unseen"). If (possibly multi- ple) folders are specified on the command line with +folder, then all these folders are searched for the given sequence(s). Flist will display for each folder searched, the number of messages in each of the specified sequences, and the total number of messages. The option -sequence is used to specify the name of a sequence in which to search for. This option may be used multiple times to specify multiple sequences. If this is not given, then the default is to search for all the sequences specified by the "Unseen-Sequence" profile component. For more details about sequences, read the mh-sequence(5) man page. Typically, flist will produce a line for each sequence, for every folder that is searched, even those which do not contain any messages in the given sequence. Specifying -noshowzero will cause flist to print only those folder/sequence combinations such the folder has a non- zero number of messages in the given specified sequence. If -recurse is given, then for each folder that is search, flist will also recursively descend into those folders to search subfolders for the given sequence. If -fast is given, only the names of the folders searched will be displayed, and flist will suppress all other output. If this option is used in conjunction with -noshowzero, then flist will only print the names of those folders searched that contain messages in in at least one of the specified sequences. Multiple Folders If the option -all is given (and no folders are specified with +folder), then flist will search all the folders in the top level of the users nmh directory. These folders are all preceded by the read-only folders, which occur as "atr-cur-" entries in the user's nmh context. An example of the output of flist -all is: /work/Mail has 5 in sequence unseen (private); out of 46 inbox+ has 10 in sequence unseen ; out of 153 junklist has 0 in sequence unseen ; out of 63 postmaster has 1 in sequence unseen ; out of 3 The "+" after inbox indicates that it is the current folder. The "private" flag indicates that the given sequence for that folder is private. See the mh-sequence(5) man page for details about private sequences. If the option -all and +folder are both specified, then flist will search this folder, and all its first level subfolders for the given sequence. You may specify multiple folders in this way. If flist is invoked by a name ending with "s" (e.g. flists), then the switch -all is assumed by default. The sorting order for the listing is alphabetical (with -alpha), or in a priority order defined by the "Flist-Order" profile entry (with -noalpha). Each item in the "Flist-Order" is a folder name or a folder name pattern that uses * to match zero or more characters. Longer matching patterns have precedence over shorter matching patterns. For example: Flist-Order: personal petproject mh* * admin *junk This order puts a few interesting folders first, such as those with mail addressed to you personally, those about a pet project, and those about mh-related things. It places uninteresting folders at the end, and it puts everything else in the middle in alphabetical order. FILES
$HOME/.mh_profile The user profile PROFILE COMPONENTS
Path: To determine the user's nmh directory mh-sequences: File that contains public sequences Unseen-Sequence: The name of the unseen message sequence Flist-Order: To sort folders by priority SEE ALSO
folder(1), rcvstore(1), slocal(1), mh-sequence(5) DEFAULTS
`-sequence' defaults to Unseen-Sequence profile entry `-showzero' `-noall' `-norecurse' `-noalpha' `-nofast' CONTEXT
If +folder is given, it will become the current folder. If multiple folders are given, the last one specified will become the current folder. MH.6.8 11 June 2012 FLIST(1)

Featured Tech Videos

All times are GMT -4. The time now is 09:27 PM.
Unix & Linux Forums Content Copyright 1993-2019. All Rights Reserved.
Privacy Policy