Sponsored Content
Top Forums UNIX for Dummies Questions & Answers find . -type d -exec cd {} \; Post 90539 by Perderabo on Wednesday 23rd of November 2005 10:42:30 AM
Old 11-23-2005
Most versions of unix have an external program called cd because Posix, in its wisdom, requires this. An external cd program is terribly useless. In the find example posted by the OP, the cd program runs as a separate process, it does indeed attempt a chdir() system call into the specified directory. Then it exits, leaving the parent process' current directory unchanged. The exit indicated whether or not it succeeded.

Sometimes stuff like acl's can affect whether or not you can cd into a directory. To produce a list of those directories into which you cannot cd, you could do:

find . -type d ! -exec /usr/bin/cd {} \; -print 2>/dev/null

That is about the only use I can find for an external cd program.
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

find and exec

Hi, Happy new year. Would you be so kind to explain me what does this instruction : find /rep/app -type l -exec ls -l {} \;> allink.lst Many thanks. (2 Replies)
Discussion started by: big123456
2 Replies

2. Shell Programming and Scripting

| with find -exec

can we use |(pipe operator) with find -exec.....? or can pipe the output of find command to another command...? if not, why...? pls explain (3 Replies)
Discussion started by: vijay_0209
3 Replies

3. Shell Programming and Scripting

Using MV FIND and -EXEC

Hi, i would like to rename files in directories and subdirs. Files contains specific french or strange caracters. I want to replace all non alpha-numerics by _ (underscore) First, i made this, but i think the "for" is limited. How can i do this directly by FIND ? for file in $(find .... (0 Replies)
Discussion started by: degraff63
0 Replies

4. UNIX for Dummies Questions & Answers

Find Exec

Hello All, Is there a way to make exec do a couple of operations on a single input from find? For example, find . -type d -exec ls -l "{}" ";" I would like to give the result of each "ls -l" in the above to a wc. Is that possible? I want to ls -l | wc -l inside... (1 Reply)
Discussion started by: prasanna1157
1 Replies

5. Ubuntu

Find and exec

Hello, I am a linux newbe. I want to install a program. I can download it only with wget command from internet. As far as i know this wget command does not transfer the exacutable flags. Because of that i wanted to find all configure files and change their mod to 744. I found this... (1 Reply)
Discussion started by: disconnectus
1 Replies

6. Ubuntu

Find and EXEC

This is a huge issue. and I need it fixed ASAP. account-system gate-system race_traffic_sensor achievement-system global race_voicepack admin glue-system realdriveby admin-system gps realism-system... (5 Replies)
Discussion started by: austech360
5 Replies

7. Shell Programming and Scripting

find: missing argument to `-exec' while redirecting using find in perl

Hi Friends, Please help me to sort out this problem, I am running this in centos o/s and whenever I run this script I am getting "find: missing argument to `-exec' " but when I run the same code in the command line I didn't find any problem. I am using perl script to run this ... (2 Replies)
Discussion started by: ramkumarselvam
2 Replies

8. Shell Programming and Scripting

what's wrong with my -exec in find

find ./ -name *Kconfig -exec cat {} \; but it won't work with find ./ -name *Kconfig -exec cat {} |grep CONFIG_MTD |grep depend \; how could I handle this (14 Replies)
Discussion started by: yanglei_fage
14 Replies

9. Shell Programming and Scripting

xargs vs exec with find:

Hi All, i'm trying to create a tar of all the .txt files i find in my dir . I've used xargs to acheive this but i wanted to do this with exec and looks like it only archives the last file it finds . can some one advice what's wrong here : find . -type f -name "*.txt" -print0 | xargs -0... (9 Replies)
Discussion started by: Irishboy24
9 Replies

10. Shell Programming and Scripting

2 exec in find

Guys, I want to find the log files greather than 23 days and i want to perform 2 things here. one is to list the files and second is to gzip the files. hope this can be done using sh -c option. but not sure the exact command. find . -name "*.log" -mtime +23 -exec ls -la {} \; ... (5 Replies)
Discussion started by: AraR87
5 Replies
chdir(2)							System Calls Manual							  chdir(2)

NAME
chdir, fchdir - change working directory SYNOPSIS
DESCRIPTION
and cause a directory pointed to by path or fildes to become the current working directory, the starting point for path searches of path names not beginning with path points to the path name of a directory. fildes is an open file descriptor of a directory. For a directory to become the current working directory, a process must have execute (search) access to the directory. RETURN VALUE
Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and is set to indicate the error. ERRORS
fails and the current working directory remains unchanged if one or more of the following are true: A component of the path name is not a directory. The named directory does not exist. Search permission is denied for any component of the path name. path points outside the allocated address space of the process. The reliable detection of this error is implemen- tation dependent. path is null. The length of the specified path name exceeds bytes, or the length of a component of the path name exceeds bytes while is in effect. Too many symbolic links were encountered in translating the path name. fails and the current working directory remains unchanged if one or more of the following are true: Search permission is denied for fildes. fildes is not an open file descriptor. The open file descriptor fildes does not refer to a directory. AUTHOR
and were developed by AT&T Bell Laboratories and HP. SEE ALSO
cd(1), chroot(2), privileges(5). STANDARDS CONFORMANCE
chdir(2)
All times are GMT -4. The time now is 03:02 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy