AIX - find also in symbolic link


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers AIX - find also in symbolic link
# 1  
Old 11-18-2013
AIX - find also in symbolic link

Hi,
i tried to search a string, recursively, in subdirectories with:

find . -type f -print | xargs grep -s hello
i found all files that contain the string "hello"

but i would perform a search also in symbolic link, so i tried with
find -L . -print | xargs grep -s hello
but no result was returned ?

Could you help me, please ?
# 2  
Old 11-18-2013
Maybe there are no files pointed to by symbolic links with hello in them. You can easily test this by creating a link to a file containing hello.
# 3  
Old 11-18-2013
-L should take what a symlink points to. Still you must check for type f
Code:
find -L . -type f -print | xargs grep -s hello

To check if -L works, compare
Code:
find . -type l -print

with
Code:
find -L . -type l -print

The latter should not report anything.
# 4  
Old 11-18-2013
Quote:
Originally Posted by nash83
Hi,
i tried to search a string, recursively, in subdirectories with:

find . -type f -print | xargs grep -s hello
i found all files that contain the string "hello"

but i would perform a search also in symbolic link, so i tried with
find -L . -print | xargs grep -s hello
but no result was returned ?

Could you help me, please ?
The grep utility searches for text in the file a symbolic link points to; it does not search for text in the symbolic link itself. Some systems provide a readlink utility that will display the contents of a symbolic link that could be used as:
Code:
find . -type l -exec grepsym hello {} +

where grepsym is the following shell script:
Code:
#!/bin/ksh
pattern="$1"
shift
for i in "$@"
do	if readlink "$i" | grep -q "$pattern"
	then	printf "%s: " "$i"; readlink "$i"
	fi
done

If your system doesn't come with a readlink utility, it is easy to write a C program that prints the results returned by readlink(argv[1]).

Depending on your application, you might also be able to use the output of ls -l symlink (which will display the contents of symlink at the end of the output.

PS: It is not necessarily true that:
Code:
find -L . -type l -print

will not print anything. That command will print the names of every symbolic link in and under the current directory that points to a file that does not exist.

Last edited by Don Cragun; 11-18-2013 at 03:01 PM.. Reason: Fix auto-correct induced typos.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Red Hat

How to remove symbolic link?

this is my current code, # ln -s /lib64/ # ls -lrth total 80K -rw-r--r--. 1 root root 12K Jul 6 2012 post-install -rw-r--r--. 1 root root 552 Jul 6 2012 post-install.log -rw-------. 1 root root 1.5K Aug 21 2012 anaconda-ks.cfg drwxr-xr-x. 2 root root 4.0K Aug 21 2012 Videos... (3 Replies)
Discussion started by: jediwannabe
3 Replies

2. UNIX for Dummies Questions & Answers

Symbolic link

Hi, trying to understand more about symblic link, when I compiled a program called "match" in one folder ~/downloadsoftware/I want this program to be accessible like a system command by putting a symbolic link in /usr/bin/ Not by setting the $PATH method in .bashrc at this time. What I did is:... (4 Replies)
Discussion started by: yifangt
4 Replies

3. UNIX for Dummies Questions & Answers

[Solved] Symbolic link not allowed or link target not accessible

Hi everybody, I read about treads realted to this issue but they did not resovle issue given below. Please help me resolve issue given below I have html file under /srv/www/htdocs/actual_folder ls actual_folder/ test.html and following link works... (0 Replies)
Discussion started by: newbielgn
0 Replies

4. Shell Programming and Scripting

ls on a symbolic link

Hi all, Can anyone please confirm if the command below is the only way that I can get what the symbolic link is set to? mnlxd110(oracle)/db/posd2/dba$: ls -l | grep "^l" lrwxrwxrwx 1 oracle dba 28 Aug 9 2011 bdump -> diag/rdbms/posp1/posp1/trace mnlxd110(oracle)/db/posd2/dba$:... (7 Replies)
Discussion started by: newbie_01
7 Replies

5. Shell Programming and Scripting

Find and symbolic link modification time

Hi, I have a directory made up of many symbolic links to folders multiple file systems. I want to return folders modified within the last 50 days, but find is using the link time rather than the target time. find . -type d -mtime -50 Is there a way to either: a) Make a symbolic link... (1 Reply)
Discussion started by: earls
1 Replies

6. Shell Programming and Scripting

Symbolic Link Help

Hello All, This may be a silly question to some but I am really stuck. Is there a way to reverse the following; sudo rm /bin/sh sudo ln -s /bin/bash /bin/sh It was part of a driver compile/installation procedure by Digi for Ubuntu stating that dash isn't supported and a symbolic link... (2 Replies)
Discussion started by: LAVco
2 Replies

7. Shell Programming and Scripting

symbolic link

Hi, i am trying to create sym links on sles 11 , but it seems i am doing something wrong. oracle@tests:/u01/app/oracle/oradata/ACIS> pwd /u01/app/oracle/oradata/ACIS oracle@tests:/u01/app/oracle/oradata/ACIS> ln -s /db/ACIS/dbase/dbf/ /u01/app/oracle/oradata/ACIS/... (2 Replies)
Discussion started by: tonijel
2 Replies

8. UNIX for Dummies Questions & Answers

How to find .dat file in symbolic link

Hi, I am trying to find all files in a directory that have .dat and .int extensions and removing them. rm -f `find ${MY_DIR} -type f -name '*.dat' -o -name '*.int'` This works fine if $MY_DIR is a regular directory. However when $MY_DIR is a symbolic link then this command fails. How... (1 Reply)
Discussion started by: neeto
1 Replies

9. UNIX for Dummies Questions & Answers

need some info about symbolic link and hard link

hello folks how y'all doin well i have some questions about symbolic link and hard link hope some one answer me i open terminal and join as root and i wrote ln -s blah blah then i wrote ls i see red file called blah blah but didn't understand what is this can some one explain and... (2 Replies)
Discussion started by: detective linux
2 Replies

10. UNIX for Dummies Questions & Answers

symbolic Link

question abt symbolic link ... i'm doing the following ... ln -s x.sh ./scripts/y.sh and cat ./scripts/y.sh it is giving following error cat: cannot open y.sh Any reason u an think of ? But it is working fine when i goto scripts directory and cretae the symbolic link. ... (1 Reply)
Discussion started by: bhargav
1 Replies
Login or Register to Ask a Question