Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Multiple if within while loop ksh Post 303038825 by MadeInGermany on Saturday 14th of September 2019 01:38:14 PM
Old 09-14-2019
Here is one for all ksh versions:
Code:
#### here filename contain XXXX_YYYY_ZZZZ_DDD.txt as example
while read filename
do

### split filename on "."
extension="${filename##*.}"
[ "$extension" = "$filename" ] && extension=""
noextension=${filename%.*}
[ "$noextension" = "$filename" ] && noextension=""

### split noextension on "_" to AR[0] AR[1] ... AR[lenAR-1]
## ksh93 takes:
# IFS="_" read -A AR <<< "$noextension"
##
## ksh88 needs:
oIFS=$IFS
IFS="_"
set -f
set -A AR $noextension
IFS=$oIFS
set +f
##
lenAR=${#AR[@]}

### Conditions...
if
  [ "$extension" != "txt" -a "${AR[0]}" = "HELP" ] ||
  [ "$extension" != "csv" -a "${AR[0]}" != HELP ] ||
  [ "$ARR[2]" != "WE" ]
then
# UPDATE TABLE ########################
   echo rm "$filename"
fi

done

Remove the echo to run the rm command.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

ksh while loop

hi all, got this silly problem and i just can't seem to make sense of the error message its is saying 1400: cannot open. its my first time at writing a while loop but tried all sorts to get it working without success. #!usr/bin/ksh integer max=1400 set file="afilename" integer i=1 ... (3 Replies)
Discussion started by: scriptingmani
3 Replies

2. Shell Programming and Scripting

For loop in ksh..Please help..

Hi ALL, I need to take some command line arguments for my script and then want to run a function for each argument.I thought of using for loop as below, but its not working , can some one please help... #!/bin/ksh lpar1=$1 lpar2=$2 lpar3=$3 lpar4=$4 lpar5=$5 echo "$lpar1" >>lpar.txt echo... (4 Replies)
Discussion started by: prashant43
4 Replies

3. Shell Programming and Scripting

Help with While loop in KSH

Hi, I want to write a while loop like this can any one say me whats wrong with my loop USAGE="Usage: Mail.ksh" integer i=3 while ((1<i<=3)) do . . . . (( CMD_JUL = LSD_JUL - i )) CUR_MAINT_DATE=$(julian2date ${CMD_JUL}) . . . i=i-1 done (1 Reply)
Discussion started by: bhagya2340
1 Replies

4. Shell Programming and Scripting

Why does my for loop does not work right in ksh?

hi all, i have a for loop statement in my ksh code. it only returns the first value retrieved not the value for the other rows. ex: acct_id value = returned value in the for loop 1 = 1 2 = 1 (instead of 2) 3 = ... (1 Reply)
Discussion started by: ryukishin_17
1 Replies

5. Shell Programming and Scripting

ksh - for loop with variables

Hi, I 'm trying to send an e-mail for every different line in the .txt for i in {1..$variable} do sed -n "/$i$/p" text.txt done I have two problems about this. First one is that for loop doesn't work and the second one is that i cant get the output of sed (4 Replies)
Discussion started by: ozum
4 Replies

6. Shell Programming and Scripting

ksh loop

I need an echo "hit enter" running every 3 seconds till user hit enter key. 10x (1 Reply)
Discussion started by: LiorAmitai
1 Replies

7. Shell Programming and Scripting

ksh for loop

Any reason why this thing doesn't works in Korn Shell for (( expr1; expr2; expr3 )) do ..... ... repeat all statements between do and done until expr2 is TRUE Done Rgds, TS (4 Replies)
Discussion started by: targetshell
4 Replies

8. Shell Programming and Scripting

Reset while loop to loop same file multiple times

Hi, I want to read file multiple times. Right now i am using while loop but that is not working. ex. While read line do while read line2 do echo stmt1 #processing some data based on data., done < file2.txt done < file1.txt # This will have 10... (4 Replies)
Discussion started by: tmalik79
4 Replies

9. UNIX for Beginners Questions & Answers

Urgent.!!! Multiple if within while loop ksh

Hi All, I'm trying to write while loop with multiple if conditions. Each and every if condition with different variables. whenever one if condition fails i have remove the file from filename and have to pick another file and loop should exit until the last file found in filename. Please help... (2 Replies)
Discussion started by: Kayal
2 Replies

10. UNIX for Beginners Questions & Answers

Error with while loop ksh

while ];do first=${hat} echo "${first}" b=$((b+1)) a=$((a+5)) done I'm trying to append values from the indicated index of one array to other, but it gives me an error with while loop....suggesting that ....... In the hat array, it contains many values... (2 Replies)
Discussion started by: TestKing
2 Replies
MP3::Tag::File(3pm)					User Contributed Perl Documentation				       MP3::Tag::File(3pm)

NAME
MP3::Tag::File - Module for reading / writing files SYNOPSIS
my $mp3 = MP3::Tag->new($filename); ($title, $artist, $no, $album, $year) = $mp3->parse_filename(); see MP3::Tag DESCRIPTION
MP3::Tag::File is designed to be called from the MP3::Tag module. It offers possibilities to read/write data from files via read(), write(), truncate(), seek(), tell(), open(), close(); one can find the filename via the filename() method. parse_filename() ($title, $artist, $no, $album, $year) = $mp3->parse_filename($what, $filename); parse_filename() tries to extract information about artist, title, track number, album and year from the filename. (For backward compatibility it may be also called by deprecated name read_filename().) This is likely to fail for a lot of filenames, especially the album will be often wrongly guessed, as the name of the parent directory is taken as album name. $what and $filename are optional. $what maybe title, track, artist, album or year. If $what is defined parse_filename() will return only this element. If $filename is defined this filename will be used and not the real filename which was set by MP3::Tag with "MP3::Tag->new($filename)". Otherwise the actual filename is used (subject to configuration variable "decode_encoding_filename"). Following formats will be hopefully recognized: - album name/artist name - song name.mp3 - album_name/artist_name-song_name.mp3 - album.name/artist.name_song.name.mp3 - album name/(artist name) song name.mp3 - album name/01. artist name - song name.mp3 - album name/artist name - 01 - song.name.mp3 If artist or title end in "(NUMBER)" with 4-digit NUMBER, it is considered the year. title() $title = $mp3->title($filename); Returns the title, guessed from the filename. See also parse_filename(). (For backward compatibility, can be called by deprecated name song().) $filename is optional and will be used instead of the real filename if defined. artist() $artist = $mp3->artist($filename); Returns the artist name, guessed from the filename. See also parse_filename() $filename is optional and will be used instead of the real filename if defined. track() $track = $mp3->track($filename); Returns the track number, guessed from the filename. See also parse_filename() $filename is optional and will be used instead of the real filename if defined. year() $year = $mp3->year($filename); Returns the year, guessed from the filename. See also parse_filename() $filename is optional and will be used instead of the real filename if defined. album() $album = $mp3->album($filename); Returns the album name, guessed from the filename. See also parse_filename() The album name is guessed from the parent directory, so it is very likely to fail. $filename is optional and will be used instead of the real filename if defined. comment() $comment = $mp3->comment($filename); # Always undef genre() $genre = $mp3->genre($filename); # Always undef perl v5.14.2 2009-11-28 MP3::Tag::File(3pm)
All times are GMT -4. The time now is 11:31 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy