Sponsored Content
Top Forums UNIX for Dummies Questions & Answers BASH: getting a script to "do" what's after "done" Post 302447996 by SilversleevesX on Wednesday 25th of August 2010 03:18:06 AM
Old 08-25-2010
Quote:
Originally Posted by agama
Did you notice that there is a missing double quote on the last echo in the script? I would have expected you to have seen an error, but the behaviour might be exactly as you described all caused by the missing quote.
Spot on, agama. I ran it with the fixed (?!) variables and such on a much smaller folder of files than I was "playing it on" before, and first thing to come up was "syntax error -- unexpected end of file." I cat'ed and immediately saw the missing double-quote. Never let it be said that coloured syntax formatting in a GUI text editor is an unqualified benefit -- sometimes the eye is so enwrapt in the colours that the mind is rendered blind to the errors staring one straight in the face!

Quote:
Originally Posted by agama
I don't know why it wouldn't toss an error to stderr, but if it isn't, or stderr is being redirected (I don't think you are), then it would appear not to be executing the commands after the done.
My bad there. I had stderr going out to /dev/null, anticipating that the only errors I'd have seen in stdout would have been related to the files "punch branded" by PhotoFiltre or some other maker-related error. I didn't see the eof error for that reason. It's not like BASH exactly allows one to pick and choose which kind, app error or shell syntax error, one gets to redirect (or is it? I certainly haven't seen any how-to's on this score). And even the author, Andreas Huggel, says error trapping in his app needs some looking at -- presently all you get is what the error/s is/are, not what file tossed them up. It's a matter of "feeding protein" to the -V option or a more file-conscientious rewrite of the whole error-reporting section of the code. No news yet as to whether Hr Huggel has made headway.

I made the fix, and tried again. It ran beautifully. Now, paradoxically, I'm thinking a better "cure" for PhotoFiltre EXIF software "branding" tags might not be to purge them, but to erase and rewrite them in the way that won't habitually create an error call in Exiv2. Ideally such a script would sync with a query at the top (return value of same stored in a variable) to the registry asking for the exact version number of PF right down to the build string. But that's a whole other lunch date,. Smilie

Thanks again for the help.


BZT

Last edited by SilversleevesX; 08-25-2010 at 06:54 AM.. Reason: Wrong helper's name - corrected.
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Explain the line "mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`"

Hi Friends, Can any of you explain me about the below line of code? mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'` Im not able to understand, what exactly it is doing :confused: Any help would be useful for me. Lokesha (4 Replies)
Discussion started by: Lokesha
4 Replies

2. Shell Programming and Scripting

Simplify Bash Script Using "sed" Or "awk"

Input file: 2 aux003.net3.com error12 6 awn0117.net1.com error13 84 aux008 error14 29 aux001.ha.ux.isd.com error12 209 aux002.vm.ux.isd.com error34 21 alx0027.vm.net2.com error12 227 dux001.net5.com error123 22 us008.dot.net2.com error121 13 us009.net2.com error129Expected Output: 2... (4 Replies)
Discussion started by: sQew
4 Replies

3. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

4. Shell Programming and Scripting

how to use "cut" or "awk" or "sed" to remove a string

logs: "/home/abc/public_html/index.php" "/home/abc/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" how to use "cut" or "awk" or "sed" to get the following result: abc abc xyz xyz xyz (8 Replies)
Discussion started by: timmywong
8 Replies

5. Solaris

The slices "usr", "opt", "tmp" disappeared!!! Help please.

The system don't boot. on the screen appears following: press enter to maintenance (or type CTRL-D to continue)...I checked with format command. ... the slices "0-root","1-swap","2-backup" exist. ...the slises "3-var","6-usr" -unassigned. :( (16 Replies)
Discussion started by: wolfgang
16 Replies

6. UNIX for Dummies Questions & Answers

"Help with bash script" - "License Server and Patch Updates"

Hi All, I'm completely new to bash scripting and still learning my way through albeit vey slowly. I need to know where to insert my server names', my ip address numbers through out the script alas to no avail. I'm also searching on how to save .sh (bash shell) script properly.... (25 Replies)
Discussion started by: profileuser
25 Replies

7. UNIX for Dummies Questions & Answers

Using "mailx" command to read "to" and "cc" email addreses from input file

How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing “To” e-mail address and column 3 contains “cc” e-mail address to include with same email. Sample input file, email.txt Below is an sample code where... (2 Replies)
Discussion started by: asjaiswal
2 Replies

8. Shell Programming and Scripting

Bash script - Print an ascii file using specific font "Latin Modern Mono 12" "regular" "9"

Hello. System : opensuse leap 42.3 I have a bash script that build a text file. I would like the last command doing : print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt where : print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies

9. AIX

Apache 2.4 directory cannot display "Last modified" "Size" "Description"

Hi 2 all, i have had AIX 7.2 :/# /usr/IBMAHS/bin/apachectl -v Server version: Apache/2.4.12 (Unix) Server built: May 25 2015 04:58:27 :/#:/# /usr/IBMAHS/bin/apachectl -M Loaded Modules: core_module (static) so_module (static) http_module (static) mpm_worker_module (static) ... (3 Replies)
Discussion started by: penchev
3 Replies
POD2TEXT(1)						User Contributed Perl Documentation					       POD2TEXT(1)

NAME
pod2text - Convert POD data to formatted ASCII text SYNOPSIS
pod2text [-aclostu] [--code] [--errors=style] [-i indent] [-q quotes] [--nourls] [--stderr] [-w width] [input [output ...]] pod2text -h DESCRIPTION
pod2text is a front-end for Pod::Text and its subclasses. It uses them to generate formatted ASCII text from POD source. It can optionally use either termcap sequences or ANSI color escape sequences to format the text. input is the file to read for POD source (the POD can be embedded in code). If input isn't given, it defaults to "STDIN". output, if given, is the file to which to write the formatted output. If output isn't given, the formatted output is written to "STDOUT". Several POD files can be processed in the same pod2text invocation (saving module load and compile times) by providing multiple pairs of input and output files on the command line. OPTIONS
-a, --alt Use an alternate output format that, among other things, uses a different heading style and marks "=item" entries with a colon in the left margin. --code Include any non-POD text from the input file in the output as well. Useful for viewing code documented with POD blocks with the POD rendered and the code left intact. -c, --color Format the output with ANSI color escape sequences. Using this option requires that Term::ANSIColor be installed on your system. -i indent, --indent=indent Set the number of spaces to indent regular text, and the default indentation for "=over" blocks. Defaults to 4 spaces if this option isn't given. -errors=style Set the error handling style. "die" says to throw an exception on any POD formatting error. "stderr" says to report errors on standard error, but not to throw an exception. "pod" says to include a POD ERRORS section in the resulting documentation summarizing the errors. "none" ignores POD errors entirely, as much as possible. The default is "die". -h, --help Print out usage information and exit. -l, --loose Print a blank line after a "=head1" heading. Normally, no blank line is printed after "=head1", although one is still printed after "=head2", because this is the expected formatting for manual pages; if you're formatting arbitrary text documents, using this option is recommended. -m width, --left-margin=width, --margin=width The width of the left margin in spaces. Defaults to 0. This is the margin for all text, including headings, not the amount by which regular text is indented; for the latter, see -i option. --nourls Normally, L<> formatting codes with a URL but anchor text are formatted to show both the anchor text and the URL. In other words: L<foo|http://example.com/> is formatted as: foo <http://example.com/> This flag, if given, suppresses the URL when anchor text is given, so this example would be formatted as just "foo". This can produce less cluttered output in cases where the URLs are not particularly important. -o, --overstrike Format the output with overstrike printing. Bold text is rendered as character, backspace, character. Italics and file names are rendered as underscore, backspace, character. Many pagers, such as less, know how to convert this to bold or underlined text. -q quotes, --quotes=quotes Sets the quote marks used to surround C<> text to quotes. If quotes is a single character, it is used as both the left and right quote; if quotes is two characters, the first character is used as the left quote and the second as the right quoted; and if quotes is four characters, the first two are used as the left quote and the second two as the right quote. quotes may also be set to the special value "none", in which case no quote marks are added around C<> text. -s, --sentence Assume each sentence ends with two spaces and try to preserve that spacing. Without this option, all consecutive whitespace in non- verbatim paragraphs is compressed into a single space. --stderr By default, pod2text dies if any errors are detected in the POD input. If --stderr is given and no --errors flag is present, errors are sent to standard error, but pod2text does not abort. This is equivalent to "--errors=stderr" and is supported for backward compatibility. -t, --termcap Try to determine the width of the screen and the bold and underline sequences for the terminal from termcap, and use that information in formatting the output. Output will be wrapped at two columns less than the width of your terminal device. Using this option requires that your system have a termcap file somewhere where Term::Cap can find it and requires that your system support termios. With this option, the output of pod2text will contain terminal control sequences for your current terminal type. -u, --utf8 By default, pod2text tries to use the same output encoding as its input encoding (to be backward-compatible with older versions). This option says to instead force the output encoding to UTF-8. Be aware that, when using this option, the input encoding of your POD source must be properly declared unless it is US-ASCII or Latin-1. POD input without an "=encoding" command will be assumed to be in Latin-1, and if it's actually in UTF-8, the output will be double-encoded. See perlpod(1) for more information on the "=encoding" command. -w, --width=width, -width The column at which to wrap text on the right-hand side. Defaults to 76, unless -t is given, in which case it's two columns less than the width of your terminal device. EXIT STATUS
As long as all documents processed result in some output, even if that output includes errata (a "POD ERRORS" section generated with "--errors=pod"), pod2text will exit with status 0. If any of the documents being processed do not result in an output document, pod2text will exit with status 1. If there are syntax errors in a POD document being processed and the error handling style is set to the default of "die", pod2text will abort immediately with exit status 255. DIAGNOSTICS
If pod2text fails with errors, see Pod::Text and Pod::Simple for information about what those errors might mean. Internally, it can also produce the following diagnostics: -c (--color) requires Term::ANSIColor be installed (F) -c or --color were given, but Term::ANSIColor could not be loaded. Unknown option: %s (F) An unknown command line option was given. In addition, other Getopt::Long error messages may result from invalid command-line options. ENVIRONMENT
COLUMNS If -t is given, pod2text will take the current width of your screen from this environment variable, if available. It overrides terminal width information in TERMCAP. TERMCAP If -t is given, pod2text will use the contents of this environment variable if available to determine the correct formatting sequences for your current terminal device. SEE ALSO
Pod::Text, Pod::Text::Color, Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Simple, perlpod(1) The current version of this script is always available from its web site at <http://www.eyrie.org/~eagle/software/podlators/>. It is also part of the Perl core distribution as of 5.6.0. AUTHOR
Russ Allbery <rra@stanford.edu>. COPYRIGHT AND LICENSE
Copyright 1999, 2000, 2001, 2004, 2006, 2008, 2010, 2012, 2013 Russ Allbery <rra@stanford.edu>. This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. perl v5.16.3 2013-01-02 POD2TEXT(1)
All times are GMT -4. The time now is 10:30 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy