Sponsored Content
Full Discussion: Backslash in find command
Top Forums UNIX for Dummies Questions & Answers Backslash in find command Post 302228438 by findprakash on Sunday 24th of August 2008 01:36:10 PM
Old 08-24-2008
Backslash in find command

When I run my script in debug mode I see that \ is not getting executed as part of command. It is being treated as escape character.

find ${DATABASE_PARAM_PATH} -mtime +${RETENTION_PERIOD} -exec rm -rf {} \;

Command execution output in debug mode :

find /pgmfgfpws/app/oracle/mfgfpwsdb/10.2.0/admin/mfgfpws_webisstg70/bdump -mtime +1 -exec ls -ltr {} ;

Backslash is missing. Without blackslash if bdump directory is empty after deleting all files which meet deletion criterion, find command deletes bdump directory as well. I don't want bdump directory to be deleted even though it is empty.

I have tried escaping backslash as below but it doesn't work :

find ${DATABASE_PARAM_PATH} -mtime +${RETENTION_PERIOD} -exec rm -rf {} \\;

Same command works fine when run from command line.
Any help is greatly appreciated.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

command find returned bash: /usr/bin/find: Argument list too long

Hello, I create a file touch 1201093003 fichcomp and inside a repertory (which hava a lot of files) I want to list all files created before this file : find *.* \! -maxdepth 1 - newer fichcomp but this command returned bash: /usr/bin/find: Argument list too long but i make a filter all... (1 Reply)
Discussion started by: yacsil
1 Replies

2. Shell Programming and Scripting

ignoring backslash while executing command

Hi, I'm running into following issue, my_file is a collection of windows directories (i.e \\path\directory\file) . I need to be able to execute "my command" as my command \\path\directory\file I know that while read -r / print -r ignores backslashes. My code: cat $my_file | while read -r... (6 Replies)
Discussion started by: agalkin
6 Replies

3. Shell Programming and Scripting

Little bit weired : Find files in UNIX w/o using find or where command

Yes , I have to find a file in unix without using any find or where commands.Any pointers for the same would be very helpful as i am beginner in shell scritping and need a solution for the same. Thanks in advance. Regards Jatin Jain (10 Replies)
Discussion started by: jatin.jain
10 Replies

4. UNIX for Dummies Questions & Answers

how to find a file named vijay in a directory using find command

I need to find whether there is a file named vijay is there or not in folder named "opt" .I tried "ls *|grep vijay" but it showed permission problem. so i need to use find command (6 Replies)
Discussion started by: amirthraj_12
6 Replies

5. UNIX for Dummies Questions & Answers

What prefix backslash does to command

In unix when I run rm command, it asks for file removal confirmation e.g. rm netmail_log.csv rm: remove netmail_log.csv (yes/no)? n But if i prefix backslash to rm it does not ask for confirmation. Does anyone know what backslash does to command or shell ? e.g. \rm netmail_log.csv (1 Reply)
Discussion started by: Devdatta
1 Replies

6. Linux

Simplified find command to find multiple file types

Hi, I'm using the following command to find the multiple requierd file types and its working fine find . -name "*.pl" -o -name "*.pm" -o -name "*.sql" -o -name "*.so" -o -name "*.sh" -o -name "*.java" -o -name "*.class" -o -name "*.jar" -o -name "*.gz" -o -name "*.Z" -type f Though... (2 Replies)
Discussion started by: vickramshetty
2 Replies

7. Shell Programming and Scripting

How to disable backslash in command line

Dear I have one problem in SCO Unix command line. I want to disable execution of commands with backslash. For example - if the user executes the following command \exec_script Here - i want the system should NOT execute this command. Can any one give me a suitable... (8 Replies)
Discussion started by: subbu62
8 Replies

8. Shell Programming and Scripting

How to use grep & find command to find references to a particular file

Hi all , I'm new to unix I have a checked project , there exists a file called xxx.config . now my task is to find all the files in the checked out project which references to this xxx.config file. how do i use grep or find command . (2 Replies)
Discussion started by: Gangam
2 Replies

9. UNIX for Dummies Questions & Answers

Replace backslash at the end of the string using sed command

I have text file which is a tab delimited one. Sample data from the file is shown below: unix is\ great\ os linux\ is superb I want to replace that backslash with empty string preserving the tab delimiter. Output should be unix is great os linux is ... (3 Replies)
Discussion started by: p.akhilreddy4u
3 Replies

10. Shell Programming and Scripting

sed command escaping backslash "/"

Hello friends/'unix experts', i have a file as below cat sample.txt satish /rakesh/ sandhya /sandeep/ i have to replace /rakesh/ with rakesh, how can i do it with sed, i tried below code but its throwing errors sed -e 's/'"\(/rakesh/)\"'/\1rakesh/g' sample.txt ... (1 Reply)
Discussion started by: only4satish
1 Replies
FIND(1) 						      General Commands Manual							   FIND(1)

NAME
find - find files SYNOPSIS
find pathname-list expression DESCRIPTION
Find recursively descends the directory hierarchy for each pathname in the pathname-list (i.e., one or more pathnames) seeking files that match a boolean expression written in the primaries given below. In the descriptions, the argument n is used as a decimal integer where +n means more than n, -n means less than n and n means exactly n. -name filename True if the filename argument matches the current file name. Normal Shell argument syntax may be used if escaped (watch out for `[', `?' and `*'). -perm onum True if the file permission flags exactly match the octal number onum (see chmod(1)). If onum is prefixed by a minus sign, more flag bits (017777, see stat(2)) become significant and the flags are compared: (flags&onum)==onum. -type c True if the type of the file is c, where c is b, c, d or f for block special file, character special file, directory or plain file. -links n True if the file has n links. -user uname True if the file belongs to the user uname (login name or numeric user ID). -group gname True if the file belongs to group gname (group name or numeric group ID). -size n True if the file is n blocks long (512 bytes per block). -inum n True if the file has inode number n. -atime n True if the file has been accessed in n days. -mtime n True if the file has been modified in n days. -exec command True if the executed command returns a zero value as exit status. The end of the command must be punctuated by an escaped semi- colon. A command argument `{}' is replaced by the current pathname. -ok command Like -exec except that the generated command is written on the standard output, then the standard input is read and the command executed only upon response y. -print Always true; causes the current pathname to be printed. -newer file True if the current file has been modified more recently than the argument file. The primaries may be combined using the following operators (in order of decreasing precedence): 1) A parenthesized group of primaries and operators (parentheses are special to the Shell and must be escaped). 2) The negation of a primary (`!' is the unary not operator). 3) Concatenation of primaries (the and operation is implied by the juxtaposition of two primaries). 4) Alternation of primaries (`-o' is the or operator). EXAMPLE
To remove all files named `a.out' or `*.o' that have not been accessed for a week: find / ( -name a.out -o -name '*.o' ) -atime +7 -exec rm {} ; FILES
/etc/passwd /etc/group SEE ALSO
sh(1), test(1), filsys(5) BUGS
The syntax is painful. FIND(1)
All times are GMT -4. The time now is 02:51 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy