Sponsored Content
Top Forums Shell Programming and Scripting Bash to select oldest folder in directory automatically and log process Post 302982362 by cmccabe on Wednesday 28th of September 2016 10:42:27 AM
Old 09-28-2016
Bash to select oldest folder in directory automatically and log process

The `bash` below uses the oldest folder in the specified directory and logs it. The goes though an analysis process and creates a log. My problem is that if there are 3 folders in the directory folder1,folder2,folder3, the bash is using folder2 for the analysis eventhough folder1 is the oldest folder in the directory. Is the find command missing something? Also, is there a better way to log the folder used? That portion is in bold. Thank you Smilie.

Bash
Code:
#!/bin/bash

dir=/home/cmccabe/Desktop/NGS/test
{
  read -r -d $'\t' time && read -r -d '' foldername
} < <(find "$dir" -maxdepth 1 -mindepth 1 -printf '%T+\t%P\0' | sort -z -r )
printf "The oldest folder is $foldername, created on $time" "and will be used for analysis on $(date "+%D %r")" >> /home/cmccabe/Desktop/NGS/test/log.txt

logfile=/home/cmccabe/Desktop/NGS/test/$foldername/process.log
for f in /home/cmccabe/Desktop/NGS/test/$foldername/bedtools/*.txt ; do
     echo "Start BedTools target base depth creation: $(date) - File: $f"
     bname=`basename $f`
     pref=${bname%%.txt}
     awk '{ sum += $7; n++ } END { if (n > 0) print sum / n; }' $f > /home/cmccabe/Desktop/NGS/test/$foldername/bedtools/${pref}_depth.bed
     echo "End BedTools target base depth creation: $(date) - File: $f"
done >> "$logfile"

edit: I must have had a typo as it seems fine now... thank you Smilie.

Last edited by cmccabe; 09-29-2016 at 05:37 PM.. Reason: added edit
This User Gave Thanks to cmccabe For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Oldest File In A Directory

I'm writing a script to find the oldest file in a directory. I know this can be done by using ls -rt | tail -1 but these are rather large directories and that can be somewhat slow since the script will be running constantly. Are there any other ways to do this that would be faster? I looked to... (2 Replies)
Discussion started by: bergerj3
2 Replies

2. Shell Programming and Scripting

Removing the oldest file in a directory

Hi all, I need your assistance in removing the oldest file in a directory. I posted the same thread 3 days back and I got the following answer ls -1 -t | tail -1 | xargs rm which is not covering the case when there are directories older than the oldest file. So, could you please... (2 Replies)
Discussion started by: pavan_movva
2 Replies

3. Shell Programming and Scripting

Finding the oldest file in a particular directory

Hi all, I am a newbie to scripting and I need your help regarding finding the oldest file in a particular directory. My intention is to remove that oldest file. Are there any options available with the "find" command to do this.. Thanks in advance for your help Pavan (4 Replies)
Discussion started by: pavan_movva
4 Replies

4. UNIX and Linux Applications

Finding the oldest file in a directory without ls

I am trying to determine the oldest and most recent files in a huge directory. I am using an ls -tr statement outside my find statement. The directory is too big and I am getting an "arg list too long" error. Is there something I can put in my find statement that doesn't create a list to... (2 Replies)
Discussion started by: hiyofjord
2 Replies

5. Shell Programming and Scripting

Bash to select panel then specific file in directory

I am using bash to prompt a user for a choice using: where a "y" response opens a menu with available panels that can be used. while true; do read -p "Do you want to get coverage of a specific panel?" yn case $yn in * ) menu; break;; * ) exit;; * ) echo... (6 Replies)
Discussion started by: cmccabe
6 Replies

6. Shell Programming and Scripting

Bash to select and save file in new directory

I am trying to select a file in bash and save it to a directory. The below does run but no selected file is saved. Thank you :). bash # select file printf "please select a file to analyze with entered gene or genes \n" select file in $(cd... (4 Replies)
Discussion started by: cmccabe
4 Replies

7. Shell Programming and Scripting

Bash to add folder to exsisting folders in directory

I am trying to create subdirectories in each folder in /home/cmccabe/Desktop/NGS/test/*. When I use echo I can see each folder in the directory, but I can not seem to add the commented out portion in bold. These are the sub-directories and sub-folders I am trying to add to each folder in... (1 Reply)
Discussion started by: cmccabe
1 Replies

8. Shell Programming and Scripting

Bash to select oldest folder in directory and write to log

In the bash below the oldest folder in a directory is selected. If there are 3folders in the directory /home/cmccabe/Desktop/NGS/test and nothing is done to them (ie. no files deleted, renamed) then the bash correctly identifies f1 as the oldest. However, if something is done to the folder then... (4 Replies)
Discussion started by: cmccabe
4 Replies

9. Shell Programming and Scripting

Delete oldest folder based on folder named as date

Hi, I have a script doing backup to synology server, the script create new folder each day with the date as being folder name i.e. 2018-07-30. Just before creating the new folder I want the script to find the oldest folder from the list and delete it including its content. for example... (3 Replies)
Discussion started by: humble_learner
3 Replies

10. Shell Programming and Scripting

Bash to check directory and create missing folder from file

In the below bash I am trying to ensure that all folders (represented by $folders) in a given directory are created. In the file f1 the trimmed folder will be there somewhere (will be multiple trimmed folders). When that trimmed folder is found (represented by $S5) the the contents of $2 printed... (19 Replies)
Discussion started by: cmccabe
19 Replies
mhpath(1)						      General Commands Manual							 mhpath(1)

NAME
mhpath - print full pathnames of MH messages and folders (only available within the message handling system, mh) SYNOPSIS
mhpath [+foldername] [msgs] [-help] OPTIONS
Prints a list of the valid options to this command. DESCRIPTION
Use the mhpath command to display the full pathname of the specified folder. If you do not specify a folder, mhpath displays the pathname of the current folder. If you specify a message with its message number, mhpath displays the pathname of the specified message. You can also specify a number of messages, or a range of messages. If the top of the range that you specify is greater than the last message in the folder, mhpath displays as much of the specified range as possible. Additionally mhpath can take a keyword or a sequence name. The following keywords are acceptable: The first message in the folder. The last message in the folder. The message after the last message in the folder. You cannot use new as part of a message range. The current message in the folder. The message before the current message. The message after the current message. All of the messages in the folder. PROFILE COMPONENTS
Path: To determine your Mail directory EXAMPLES
In the following example, mhpath displays message 3 in the folder +inbox: % mhpath +inbox 3 /r/phyl/Mail/inbox The following example dis- plays the pathname of messages 2 to 5 in the current folder: % mhpath 2-5 /r/phyl/Mail/inbox/2 /r/phyl/Mail/inbox/3 /r/phyl/Mail/inbox/4 /r/phyl/Mail/inbox/5 FILES
The user profile. SEE ALSO
folder(1) mhpath(1)
All times are GMT -4. The time now is 03:42 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy