Sponsored Content
Top Forums Shell Programming and Scripting How to compare a file name with a regular expression !! Post 302558969 by Lucifer_123 on Monday 26th of September 2011 03:14:47 AM
Old 09-26-2011
Question How to compare a file name with a regular expression !!

Hi,

I need to compare file names in a folder with several strings(which are in regular expression format):

For example:
there is a file "objectMyHistoryBook" and there are several strings to compare this file name with:

objectMyMaths*, objectMyEnglish*, objectMyHistory*, objectMyChemistry* etc

so I tried this:
file=objectMyHistoryBook
#there are several files in the concerned folder so assigning each name in 'file'
if [ [ $file="objectMyMaths*"] -o [ $file="objectMyEnglish*" ] -o [ $file="objectMyHistory*"] -o [ $file="objectMyChemistry] ];
then
{file name matches one of the string so do this }
fi

But this is not working. Need help..!!
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

compare variable against regular expression?

is it possible? if so, how? i want to check a variable whether is it a number or letter in an if-else statement (6 Replies)
Discussion started by: finalight
6 Replies

2. Shell Programming and Scripting

AWK - compare $0 to regular expression + variable

Hi, I have this script: awk -v va=45 '$0~va{print}' flo2 That returns: "4526745 1234 " (this is the only line of the file "flo2". However, I would like to get "va" to match the begining of the line, so that is "va" is different than 45 (eg. 67, 12 ...) I would not have any output. That... (3 Replies)
Discussion started by: jolecanard
3 Replies

3. Shell Programming and Scripting

Using grep and regular expression to find class references in a c++ file

I'm trying to math all class references in a C++ file using grep with regular expression. I'm trying to know if a specific include is usuless or not, so I have to know if there is a refence in cpp. I wrote this RE that searches for a reference from class ABCZ, but unfortunately it isn't working... (0 Replies)
Discussion started by: passerby
0 Replies

4. Programming

Perl: How to read from a file, do regular expression and then replace the found regular expression

Hi all, How am I read a file, find the match regular expression and overwrite to the same files. open DESTINATION_FILE, "<tmptravl.dat" or die "tmptravl.dat"; open NEW_DESTINATION_FILE, ">new_tmptravl.dat" or die "new_tmptravl.dat"; while (<DESTINATION_FILE>) { # print... (1 Reply)
Discussion started by: jessy83
1 Replies

5. UNIX for Dummies Questions & Answers

Compare files with regular expression

Readers, Reading a previous post about comparing files using awk ('awk-compare-2-columns-2-files-output-whole-line', https://www.unix.com/shell-programming-scripting/168432-awk-compare-2-columns-2-files-output-whole-line.html), it is possible to adjust this, so that regular expression can be used... (8 Replies)
Discussion started by: linuxr
8 Replies

6. UNIX for Advanced & Expert Users

sed: -e expression #1, char 0: no previous regular expression

Hello All, I'm trying to extract the lines between two consecutive elements of an array from a file. My array looks like: problem_arr=(PRS111 PRS213 PRS234) j=0 while } ] do k=`expr $j + 1` sed -n "/${problem_arr}/,/${problem_arr}/p" problemid.txt ---some operation goes... (11 Replies)
Discussion started by: InduInduIndu
11 Replies

7. Shell Programming and Scripting

How to find out whether a file exists with the help of regular expression?

Hi all I have a list of file names in array. But this file names are not exact. so i want to search whether a file exists or not using regular expression. code snippet: if ; then echo "File exists" else echo "File does not exits" fi over here "*EQST*" should be treated as a regular... (4 Replies)
Discussion started by: Ganesh_more
4 Replies

8. UNIX for Dummies Questions & Answers

How to using Regular expression to find file.?

Hi Gurus, I need to identify the file with below format: ABC20110101.DAT ABCD2011010103.DAT If I use ABC*\.DAT, it get two file. I want to get file after "ABC' then number, the ".DAT". I tried ABC* but it doesn't work. Thanks in advance. (9 Replies)
Discussion started by: ken6503
9 Replies

9. Shell Programming and Scripting

Grep with Regular expression now working on file directories

Hello Everyone, I have a file sam1 with the below content SYSYSID;MANDT;/SIE/AD_Z0M_INDX;/SIE/AD_Z0M_KEY1 echo $Regex \bSYSYSID\b|\bMANDT\b|\b/SIE/AD_Z0M_INDX\b|\b/SIE/AD_Z0M_KEY1\b cat sam1 | grep -Eo $Regex I expect the result as SYSYSID MANDT /SIE/AD_Z0M_INDX /SIE/AD_Z0M_KEY1... (4 Replies)
Discussion started by: sam99
4 Replies

10. Shell Programming and Scripting

I need help to compare file name with regular expression and do something with file

#!/bin/sh Today=date '+%Y%m%d' for file in `ls *.csv *txt` do echo "Start woprking with ${file}" if ; then do something elif ; then do something else echo "Unkniowned file name" ... (6 Replies)
Discussion started by: digioleg54
6 Replies
RE_COMP(3)						   BSD Library Functions Manual 						RE_COMP(3)

NAME
re_comp, re_exec -- regular expression handler LIBRARY
Compatibility Library (libcompat, -lcompat) SYNOPSIS
#include <unistd.h> char * re_comp(const char *s); int re_exec(const char *s); DESCRIPTION
This interface is made obsolete by regex(3). The re_comp() function compiles a string into an internal form suitable for pattern matching. The re_exec() function checks the argument string against the last string passed to re_comp(). The re_comp() function returns 0 if the string s was compiled successfully; otherwise a string containing an error message is returned. If re_comp() is passed 0 or a null string, it returns without changing the currently compiled regular expression. The re_exec() function returns 1 if the string s matches the last compiled regular expression, 0 if the string s failed to match the last compiled regular expression, and -1 if the compiled regular expression was invalid (indicating an internal error). The strings passed to both re_comp() and re_exec() may have trailing or embedded newline characters; they are terminated by NULs. The regu- lar expressions recognized are described in the manual entry for ed(1), given the above difference. DIAGNOSTICS
The re_exec() function returns -1 for an internal error. The re_comp() function returns ``no previous regular expression'' or one of the strings generated by regerror(3). SEE ALSO
ed(1), egrep(1), ex(1), fgrep(1), grep(1), regex(3) HISTORY
The re_comp() and re_exec() functions appeared in 4.0BSD. BSD
June 4, 1993 BSD
All times are GMT -4. The time now is 01:41 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy