Sponsored Content
Top Forums Shell Programming and Scripting Testing for the presence or absence of a folder Post 303014017 by Mr_Keystrokes on Saturday 3rd of March 2018 02:51:27 PM
Old 03-03-2018
Testing for the presence or absence of a folder

My directory: /folder1/folder2/file.fna.gz

Now following on from renaming the files of interest (fna.gz) I now need to loop through folder1.
As I loop through folder1 I am trying to first of all capture the first word in the file before the first underscore, for example if the folder name is /Long_John_Silver/ then I am trying to capture only "Long".
Then I want to check whether there is a folder with the same name "Long" in a distant directory /another/directory/ and if there is then a move onto the next folder in folder1, but if there isn't then I create a new folder with the captured name i.e. "Long".

Here's my work so far, I am struggling with the capturing of "Long" part.

Code:
for fldr in /folder1/folder2/.fna.gz ; do

## Trying to regex capture here but I'm unclear on the syntax, there's expansion, grep  etc but don't know which to use. 
    new_fldr = ${fldr} 

## Then the test for existence.
    if [-f /another/directory/$new_fldr ]; then

        echo "Folder exists already, moving on..." ;

    else [ ! -f /another/directory/$new_fldr ];

        echo "Folder not present, creating folder..." ;

        cd /another/directory/ ;

        mkdir $new_fldr ;

 

8 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

testing for presence of files in ftp

I have a shell script which GETS a file, but I only want to run this script if $FILE exists on the remote host, don't know correct syntax.....please help ftp -n $HOST <<END_SCRIPT quote USER $USER quote PASS $PASSWD bin get $FILE rename export.prn export.prn.$TIMESTAMP !cat... (0 Replies)
Discussion started by: walterja
0 Replies

2. Shell Programming and Scripting

Checking for presence of any files

I have tried the following script to check for the presence of any files in a folder: if (-r *) then goto ZipMiscFiles else echo "" echo " No Miscellaneous files found. Exiting program." echo "" exit endif The -r works fine with the wildcard in combo with other... (4 Replies)
Discussion started by: phudgens
4 Replies

3. Shell Programming and Scripting

Checking for presence of any files

Is there code in Cshell scripting to check for the presence of any files in the current directory (and only the current directory)? I tried: if (-r *) then ... but Cshell doesn't like that. Thanks, Paul Hudgens (0 Replies)
Discussion started by: phudgens
0 Replies

4. Shell Programming and Scripting

Polling continously for presence of a file

Hi, My os is sun solaris 5.10 and Korn shell scripting. I have a file name like CCNA_EARLY_SWP.w062309 where 062309 is date in mmddyy .This is the value date of the file.(will I need to check continously from 5.00 - 7.00 am daily for this file . If the file has not come at 5 am or 7am... (4 Replies)
Discussion started by: manoj39
4 Replies

5. Shell Programming and Scripting

check presence of input file

My script is taking a file "input.in" as input for running the script. My worry is that i need to execute the script only if the file is present, if it's not don't perform the next commands. Just to have a check at the beginning of the script : If "input.in" exists, then go on. If it's does not... (4 Replies)
Discussion started by: newpromo
4 Replies

6. Shell Programming and Scripting

Check the presence of file >size?

Hi, Following script work fine: #!/bin/bash FILE=$1 if ; then echo Yay else echo Boo fi But I would like to add another condition that if FILE... (3 Replies)
Discussion started by: nrjrasaxena
3 Replies

7. Shell Programming and Scripting

Identifying presence and name of new file(s)?

I have an HP-UX server that runs a script each night. The script connects to an SFTP server and downloads all xml files (if any are present) from a certain folder, and then deletes the files from the SFTP server. So sometimes it will download a new file, sometimes it will download 2 or 3 new... (4 Replies)
Discussion started by: lupin..the..3rd
4 Replies

8. Shell Programming and Scripting

Check presence of trigger file

Hi, I make a sftp connection successfully.My requirement is the script shall execute only after i find a trigger file(dailyreport.OK.psv) in the remote dir. If the trigger file is not present ,the script should exit else it should continue with the rest of the scripts statements. Below code is... (13 Replies)
Discussion started by: samrat dutta
13 Replies
REFILE(1)							     [nmh-1.5]								 REFILE(1)

NAME
refile - file message in other folders SYNOPSIS
refile [msgs] [-draft] [-link | -nolink] [-preserve | -nopreserve] [-unlink | -nounlink] [-src +folder] [-file file] [-rmmproc program] [-normmproc] +folder1 ... [-version] [-help] DESCRIPTION
Refile moves (see mv(1)) or links (see ln(1)) messages from a source folder into one or more destination folders. If you think of a message as a sheet of paper, this operation is not unlike filing the sheet of paper (or copies) in file cabinet folders. When a message is filed, it is linked into the destination folder(s) if possible, and is copied otherwise. As long as the destination folders are all on the same file system, multiple filing causes little storage overhead. This facility provides a good way to cross-file or multiply-index messages. For example, if a message is received from Jones about the ARPA Map Project, the command refile cur +jones +Map would allow the message to be found in either of the two folders `jones' or `Map'. You may specify the source folder using -src +folder. If this is not given, the current folder is used by default. If no message is spec- ified, then `cur' is used by default. The option -file file directs refile to use the specified file as the source message to be filed, rather than a message from a folder. Note that the file should be a validly formatted message, just like any other nmh message. It should NOT be in mail drop format (to con- vert a file in mail drop format to a folder of nmh messages, see inc(1)). If a destination folder doesn't exist, refile will ask if you want to create it. A negative response will abort the file operation. If the standard input for refile is not a tty, then refile will not ask any questions and will proceed as if the user answered "yes" to all questions. The option -link preserves the source folder copy of the message (i.e., it does a ln(1) rather than a mv(1)), whereas, -nolink (the default) deletes the filed messages from the source folder. Normally when a message is refiled, for each destination folder it is assigned the number which is one above the current highest message number in that folder. Use of the -preserv switch will override this message renaming, and try to preserve the number of the message. If a conflict for a particular folder occurs when using the -preserve switch, then refile will use the next available message number which is above the message number you wish to preserve. If -link is not specified (or -nolink is specified), the filed messages will be removed from the source folder. The default is to remove these messages by renaming them with a site-dependent prefix (usually a comma). Such files will then need to be removed in some manner after a certain amount of time. Many sites arrange for cron to remove these files once a day, so check with your system administrator. Alternately, if you wish for refile to really remove the files representing these messages from the source folder, you can use the -unlink switch (not to be confused with the -link switch). But messages removed by this method cannot be later recovered. If you prefer a more sophisticated method of `removing' the messages from the source folder, you can define the rmmproc profile component. For example, you can add a profile component such as rmmproc: /home/coleman/bin/rmm_msgs then refile will instead call the named program or script to handle the message files. The user may specify -rmmproc program on the command line to override this profile specification. The -normmproc option forces the message files to be deleted by renaming or unlinking them as described above. The -draft switch tells refile to file the <mh-dir>/draft. FILES
$HOME/.mh_profile The user profile PROFILE COMPONENTS
Path: To determine the user's nmh directory Current-Folder: To find the default current folder Folder-Protect: To set mode when creating a new folder rmmproc: Program to delete the message SEE ALSO
folder(1), rmf(1), rmm(1) DEFAULTS
`-src +folder' defaults to the current folder `msgs' defaults to cur `-nolink' `-nounlink' `-nopreserve' CONTEXT
If -src +folder is given, it will become the current folder. If neither -link nor `all' is specified, the current message in the source folder will be set to the last message specified; otherwise, the current message won't be changed. If the "Previous-Sequence" profile entry is set, in addition to defining the named sequences from the source folder, refile will also define those sequences for the destination folders. See mh-sequence (5) for information concerning the previous sequence. BUGS
Since refile uses your rmmproc to delete the message, the rmmproc must NOT call refile without specifying -normmproc, or you will create an infinite loop. MH.6.8 11 June 2012 REFILE(1)
All times are GMT -4. The time now is 07:01 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy