Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
where regexp is the regular expression to match and replacement is the string that substitutes the matching pattern. The target is optional: if not specified the whole record $0 is used. In practice your statement:
Code:
sub("\014","\n\\page\n")
should substitute every occurrence of the character whose octal code is 014 (form feed in the ASCII table) with a newline, followed by \page and again a newline. Take in mind that in awk regexps, the \NNN is an escape sequence to match ascii characters by means of their octal value. Hope this helps.
Google "gawk". There is book in postscript format about gawk ("gnu awk"). Awk is almost a programming language - so do not expect reasonably introduction in the two or three posts.
What does the "\par" represent after the record $0?
Literally "par". The backslash is treated as an escape character (quite not useful here) so that \p is treated as p. If you want to print out a literal "\par" you have to escape the escape character:
Code:
print $0 "\\par"
Regarding the synatx of the print command, you can print out multiple strings (in this case $0 followed by "par"). Just take in mind that if you separate them with a comma, they will be printed out separated by the OFS (Output Field Separator, a blank space by default). If you omit the commas, they will be concatenated together. Example:
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.