Here is another patch which inserts a bunch of missing @code's, @var's, etc. And there were several occurrences of a spurious (I presume) ":-" before example blocks, instead of just ":".
I reformatted the paragraphs so the diff looks a lot bigger than it really is. More could be done, of course, but it's a start. Hope it helps. karl --- f/ORIG/find.texi 2011-12-31 11:20:34.000000000 -0800 +++ f/find.texi 2011-12-31 11:32:26.000000000 -0800 @@ -698,3 +698,3 @@ The options controlling the behaviour of @code{find} with respect to -links are as follows :- +links are as follows: @@ -771,13 +771,15 @@ Hard links allow more than one name to refer to the same file. To -find all the names which refer to the same file as NAME, use -@samp{-samefile NAME}. If you are not using the @samp{-L} option, you -can confine your search to one filesystem using the @samp{-xdev} -option. This is useful because hard links cannot point outside a -single filesystem, so this can cut down on needless searching. - -If the @samp{-L} option is in effect, and NAME is in fact a symbolic -link, the symbolic link will be dereferenced. Hence you are searching -for other links (hard or symbolic) to the file pointed to by NAME. If -@samp{-L} is in effect but NAME is not itself a symbolic link, other -symbolic links to the file NAME will be matched. +find all the names which refer to the same file as @var{name}, use +@samp{-samefile @var{name}}. If you are not using the @samp{-L} +option, you can confine your search to one filesystem using the +@samp{-xdev} option. This is useful because hard links cannot point +outside a single filesystem, so this can cut down on needless +searching. + +If the @samp{-L} option is in effect, and @var{name} is in fact a +symbolic link, the symbolic link will be dereferenced. Hence you are +searching for other links (hard or symbolic) to the file pointed to by +@var{name}. If @samp{-L} is in effect but @var{name} is not itself a +symbolic link, other symbolic links to the file @var{name} will be +matched. @@ -799,6 +801,6 @@ -@deffn Test -samefile NAME -File is a hard link to the same inode as NAME. If the @samp{-L} -option is in effect, symbolic links to the same file as NAME points to -are also matched. +@deffn Test -samefile name +File is a hard link to the same inode as @var{name}. If the @samp{-L} +option is in effect, symbolic links to the same file as @var{name} +points to are also matched. @end deffn @@ -1017,6 +1019,6 @@ The `b' suffix always considers blocks to be 512 bytes. This is not -affected by the setting (or non-setting) of the POSIXLY_CORRECT -environment variable. This behaviour is different from the behaviour of -the @samp{-ls} action). If you want to use 1024-byte units, use the -`k' suffix instead. +affected by the setting (or non-setting) of the @code{POSIXLY_CORRECT} +environment variable. This behaviour is different from the behaviour +of the @samp{-ls} action). If you want to use 1024-byte units, use +the `k' suffix instead. @@ -1186,5 +1188,5 @@ A @var{pmode} that starts with @samp{+} but which is not valid (for -example @samp{+a+x}) is an error if the POSIXLY_CORRECT environment -variable it set. Otherwise this is treated as if the initial -@samp{+} were a @samp{/}, for backward compatibility. +example @samp{+a+x}) is an error if the @code{POSIXLY_CORRECT} +environment variable it set. Otherwise this is treated as if the +initial @samp{+} were a @samp{/}, for backward compatibility. @@ -1674,11 +1676,16 @@ True; print @var{format} on the standard output, interpreting @samp{\} -escapes and @samp{%} directives. Field widths and precisions can be -specified as with the @code{printf} C function. Format flags (like -@samp{#} for example) may not work as you expect because many of the -fields, even numeric ones, are printed with %s. Numeric flags which -are affected in this way include G, U, b, D, k and n. This difference -in behaviour means though that the format flag @samp{-} will work; it -forces left-alignment of the field. Unlike @samp{-print}, -@samp{-printf} does not add a newline at the end of the string. If -you want a newline at the end of the string, add a @samp{\n}. +escapes and @samp{%} directives (more details in the following +sections). + +Field widths and precisions can be specified as with the @code{printf} +C function. Format flags (like @samp{#} for example) may not work as +you expect because many of the fields, even numeric ones, are printed +with @samp{%s}. Numeric flags which are affected in this way include +@samp{G}, @samp{U}, @samp{b}, @samp{D}, @samp{k} and @samp{n}. This +difference in behaviour means though that the format flag @samp{-} +will work; it forces left-alignment of the field. + +Unlike @samp{-print}, @samp{-printf} does not add a newline at the end +of the string. If you want a newline at the end of the string, add a +@samp{\n}. @@ -2215,3 +2222,3 @@ However, there is a slightly obscure but powerful workaround for this -problem which takes advantage of the behaviour of @code{sh -c}:- +problem which takes advantage of the behaviour of @code{sh -c}: @@ -2435,3 +2442,3 @@ The output of these directives is quoted if the output is going to a -terminal. The setting of the `LC_CTYPE' environment +terminal. The setting of the @code{LC_CTYPE} environment variable is used to determine which characters need to be quoted. @@ -2561,17 +2568,19 @@ -The same idea can be generalized to as many processors as you have handy. -It also generalizes to other resources besides processors. For example, -if xargs is running commands that are waiting for a response from a -distant network connection, running a few in parallel may reduce the -overall latency by overlapping their waiting time. - -@code{xargs} also allows you to "turn up" or "turn down" its parallelism -in the middle of a run. Suppose you are keeping your four-processor -system busy for hours, processing thousands of images using @code{-P 4}. -Now, in the middle of the run, you or someone else wants you to reduce -your load on the system, so that something else will run faster. -If you interrupt @code{xargs}, your job will be half-done, and it -may take significant manual work to resume it only for the remaining -images. If you suspend @code{xargs} using your shell's job controls -(e.g. @code{control-Z}), then it will get no work done while suspended. +The same idea can be generalised to as many processors as you have +handy. It also generalizes to other resources besides processors. +For example, if @code{xargs} is running commands that are waiting for +a response from a distant network connection, running a few in +parallel may reduce the overall latency by overlapping their waiting +time. + +@code{xargs} also allows you to ``turn up'' or ``turn down'' its +parallelism in the middle of a run. Suppose you are keeping your +four-processor system busy for hours, processing thousands of images +using @code{-P 4}. Now, in the middle of the run, you or someone else +wants you to reduce your load on the system, so that something else +will run faster. If you interrupt @code{xargs}, your job will be +half-done, and it may take significant manual work to resume it only +for the remaining images. If you suspend @code{xargs} using your +shell's job controls (e.g. @code{control-Z}), then it will get no work +done while suspended. @@ -2597,5 +2606,5 @@ -Similarly, if you started a long xargs job without parallelism, you -can easily switch it to start running two commands in parallel by sending -it a @code{SIGUSR1}. +Similarly, if you started a long @code{xargs} job without parallelism, +you can easily switch it to start running two commands in parallel by +sending it a @code{SIGUSR1}. @@ -2656,7 +2665,8 @@ buffered internally. This means that there is an upper limit on the -length of input line that xargs will accept when used with the +length of input line that @code{xargs} will accept when used with the @samp{-I} option. To work around this limitation, you can use the -@samp{-s} option to increase the amount of buffer space that xargs -uses, and you can also use an extra invocation of xargs to ensure that -very long lines do not occur. For example: +@samp{-s} option to increase the amount of buffer space that +@code{xargs} uses, and you can also use an extra invocation of +@code{xargs} to ensure that very long lines do not occur. For +example: @@ -2697,11 +2707,13 @@ expressions to determine if it is a yes or no response. These regular -expressions are obtained from the system@footnote{@code{nl_langinfo} items YESEXPR and NOEXPR are used} -if the POSIXLY_CORRECT environment variable is set and the system has +expressions are obtained from the system (@code{nl_langinfo} items +@code{YESEXPR} and @code{NOEXPR} are used) if the +@code{POSIXLY_CORRECT} environment variable is set and the system has such patterns available. -Otherwise, @code{find}'s message translations are used. -In either case, the LC_MESSAGES environment variable -will determine the regular expressions used to determine if the answer -is affirmative or negative. The interpretation of the regular -expressions themselves will be affected by the environment variables -LC_CTYPE (character classes) and LC_COLLATE (character ranges and + +Otherwise, @code{find}'s message translations are used. In either +case, the @code{LC_MESSAGES} environment variable will determine the +regular expressions used to determine if the answer is affirmative or +negative. The interpretation of the regular expressions themselves +will be affected by the environment variables @code{LC_CTYPE} +(character classes) and @code{LC_COLLATE} (character ranges and equivalence classes). @@ -3245,5 +3257,5 @@ interactively (specifically, if the standard input is a terminal) and -the POSIXLY_CORRECT environment variable is not set. Warning messages -can be controlled explicitly by the use of options on the command -line: +the @code{POSIXLY_CORRECT} environment variable is not set. Warning +messages can be controlled explicitly by the use of options on the +command line: @@ -3709,6 +3721,6 @@ this option is deprecated in favour of the POSIX-compliant @samp{-E} -option, which you should use instead. As of GNU xargs version 4.2.9, -the default behaviour of xargs is not to have a logical end-of-file -marker. The POSIX standard (IEEE Std 1003.1, 2004 Edition) allows -this. +option, which you should use instead. As of GNU @code{xargs} version +4.2.9, the default behaviour of xargs is not to have a logical +end-of-file marker. The POSIX standard (IEEE Std 1003.1, 2004 +Edition) allows this. @@ -3836,7 +3848,8 @@ Here, a shell is being invoked. There are two shell instances to -think about. The first is the shell which launches the xargs command -(this might be the shell into which you are typing, for example). The -second is the shell launched by @code{xargs} (in fact it will probably -launch several, one after the other, depending on how many files need -to be archived). We'll refer to this second shell as a subshell. +think about. The first is the shell which launches the @code{xargs} +command (this might be the shell into which you are typing, for +example). The second is the shell launched by @code{xargs} (in fact +it will probably launch several, one after the other, depending on how +many files need to be archived). We'll refer to this second shell as +a subshell. @@ -3914,3 +3927,3 @@ @section Environment Variables -@table @var +@table @code @item LANG @@ -3918,2 +3931,3 @@ are unset or null. + @item LC_ALL @@ -3921,2 +3935,3 @@ other internationalisation variables. + @item LC_COLLATE @@ -3926,7 +3941,7 @@ -This variable also affects the interpretation of -the response to @code{-ok}; while the LC_MESSAGES variable selects the -actual pattern used to interpret the response to @code{-ok}, -the interpretation of any bracket expressions in the pattern will be -affected by the LC_COLLATE variable. +This variable also affects the interpretation of the response to +@code{-ok}; while the @code{LC_MESSAGES} variable selects the actual +pattern used to interpret the response to @code{-ok}, the +interpretation of any bracket expressions in the pattern will be +affected by the @code{LC_COLLATE} variable. @@ -3939,5 +3954,5 @@ in the regular expressions used to interpret the response to the -prompt issued by @code{-ok}. The LC_CTYPE environment variable will -also affect which characters are considered to be unprintable when -filenames are printed (@pxref{Unusual Characters in File Names}). +prompt issued by @code{-ok}. The @code{LC_CTYPE} environment variable +will also affect which characters are considered to be unprintable +when filenames are printed (@pxref{Unusual Characters in File Names}). @@ -3950,2 +3965,3 @@ Determines the location of the internationalisation message catalogues. + @item PATH @@ -3960,5 +3976,5 @@ @item POSIXLY_CORRECT -Determines the block size used by @samp{-ls} and @samp{-fls}. -If @var{POSIXLY_CORRECT} is set, blocks are units of 512 bytes. Otherwise -they are units of 1024 bytes. +Determines the block size used by @samp{-ls} and @samp{-fls}. If +@code{POSIXLY_CORRECT} is set, blocks are units of 512 bytes. +Otherwise they are units of 1024 bytes. @@ -3970,7 +3986,7 @@ Arguments to @samp{-perm} beginning with @samp{+} are treated -differently when POSIXLY_CORRECT is set. See -@ref{Mode Bits,-perm,File Mode Bits}. +differently when @code{POSIXLY_CORRECT} is set. +@xref{Mode Bits,-perm,File Mode Bits}. -When POSIXLY_CORRECT is set, the response to the prompt made by the -@code{-ok} action is interpreted according to the system's message +When @code{POSIXLY_CORRECT} is set, the response to the prompt made by +the @code{-ok} action is interpreted according to the system's message catalogue, as opposed to according to @code{find}'s own message @@ -4023,3 +4039,3 @@ there is a limit to the number of files that can be handled in this -way. We can get around this difficulty by using xargs like this: +way. We can get around this difficulty by using @code{xargs} like this: @@ -4708,3 +4724,3 @@ -The obvious but wrong answer is just to use @samp{-newer}:- +The obvious but wrong answer is just to use @samp{-newer}: @@ -4828,3 +4844,3 @@ the filenames which have timestamps which are older than whatever the -newest file is:- +newest file is: @@ -4984,3 +5000,3 @@ consequences of a security problem could be very important, you should -do two things:- +do two things: @@ -5117,4 +5133,4 @@ @menu -* O_NOFOLLOW:: Safely changing directory using fchdir(). -* Systems without O_NOFOLLOW:: Checking for symbolic links after chdir(). +* O_NOFOLLOW:: Safely changing directory using @code{fchdir}. +* Systems without O_NOFOLLOW:: Checking for symbolic links after @code{chdir}. @end menu @@ -5124,3 +5140,3 @@ -If your system supports the O_NOFOLLOW flag @footnote{GNU/Linux +If your system supports the @code{O_NOFOLLOW} flag@footnote{GNU/Linux (kernel version 2.1.126 and later) and FreeBSD (3.0-CURRENT and later) @@ -5134,6 +5150,6 @@ If for any reason this approach does not work, @code{find} will fall -back on the method which is normally used if O_NOFOLLOW is not +back on the method which is normally used if @code{O_NOFOLLOW} is not supported. -You can tell if your system supports O_NOFOLLOW by running +You can tell if your system supports @code{O_NOFOLLOW} by running @@ -5152,10 +5168,11 @@ built from the development (CVS) code prior to the release of -findutils-4.2.18, and that the D_TYPE and O_NOFOLLOW features are -present. O_NOFOLLOW is qualified with ``enabled''. This simply means -that the current system seems to support O_NOFOLLOW. This check is -needed because it is possible to build @code{find} on a system that -defines O_NOFOLLOW and then run it on a system that ignores the -O_NOFOLLOW flag. We try to detect such cases at startup by checking -the operating system and version number; when this happens you will -see ``O_NOFOLLOW(disabled)'' instead. +findutils-4.2.18, and that the @code{D_TYPE} and @code{O_NOFOLLOW} +features are present. @code{O_NOFOLLOW} is qualified with +``enabled''. This simply means that the current system seems to +support @code{O_NOFOLLOW}. This check is needed because it is +possible to build @code{find} on a system that defines +@code{O_NOFOLLOW} and then run it on a system that ignores the +@code{O_NOFOLLOW} flag. We try to detect such cases at startup by +checking the operating system and version number; when this happens +you will see @samp{O_NOFOLLOW(disabled)} instead. @@ -5165,3 +5182,3 @@ The strategy for preventing this type of problem on systems that lack -support for the O_NOFOLLOW flag is more complex. Each time +support for the @code{O_NOFOLLOW} flag is more complex. Each time @code{find} changes directory, it examines the directory it is about @@ -5177,4 +5194,4 @@ filesystem to be mounted at that point. On systems that do not -support O_NOFOLLOW, this will cause @code{find}'s security check to -fail. +support @code{O_NOFOLLOW}, this will cause @code{find}'s security +check to fail. Diff finished at Sat Dec 31 11:32:43