Sponsored Content
Top Forums Shell Programming and Scripting Create new file when three asterisks are encountered. Post 302699769 by alister on Wednesday 12th of September 2012 09:18:12 AM
Old 09-12-2012
Quote:
Originally Posted by RudiC
Code:
awk     'BEGIN{fname=++nr".txt"}
         {print $0 > fname}
         /\*\*\*/{fname=++nr".txt"}
        ' file.txt

That will include the *** file delimiters in the output, which is not indicated by the sample data.


Quote:
Originally Posted by vidyadhar85
hmmm u can try something like..
Code:
 
awk '{if($0!~/\*\*\*/){var=var"\n"$0}else{n++;print var>n".dat";var=""}}' filename

Nitpicks, but I'll point them out anyway. The regular expression will match any line that contains three consecutive asterisks and not just that sequence. Not knowing anything about the text in the file, it would be safer to anchor that regular expression on both ends.

If the file has many *** delimiters, the open file descriptor count could hit the user limit.


An alternative:
Code:
awk '$0=="***" || NR==1 {close(f); f=++n".dat"}  $0!="***" {print > f}' file

Regards,
Alister
This User Gave Thanks to alister For This Post:
 

9 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

554 Unallowed chars encountered

My Exchange v5.5 IMS server received an inbound internet-based message that it could not processed. The message header appeared to be corrupt and had a line that read, "Diagnostic-Code: smtp;554 Unallowed chars encountered." The message header also mentions UTF-7. All internet-based messages are... (1 Reply)
Discussion started by: abibbens
1 Replies

2. UNIX Benchmarks

Encountered error!

I used this on an AIX machine and encountered the following error. $ ls -l total 600 -rwxrwxrwx 1 e26936 dba 1491 Feb 07 1992 MANIFEST -rwxrwxrwx 1 e26936 dba 8148 Apr 05 1992 Makefile -rwxrwxrwx 1 e26936 dba 4852 Sep 06 2003 README -rwxrwxrwx... (0 Replies)
Discussion started by: puspendu
0 Replies

3. Shell Programming and Scripting

Double asterisks

When I go$ echo *I get a directory listing. When I go$ echo * *I get a directory listing, followed by a second identical directory listing. When I go$ echo **I only get one directory listing. What happens to the second asterisk in this case? Why doesn't it expand? I haven't been able to sleep... (2 Replies)
Discussion started by: na5m
2 Replies

4. Shell Programming and Scripting

Assistence With Using Asterisks in GREP Expressions

I am attempting to find all complete words which contain an asterisk at the beginning and the end - for instance, "*Hello?*" or "*you*". From what I've read, I would have thought that the following expression would do that just fine: \<\*.*\*\> \< denoting the beginning of a word. \*... (12 Replies)
Discussion started by: MagusScythe
12 Replies

5. Shell Programming and Scripting

need to replace asterisks

I need to replace occurrences of twelve asterisks "************" with the string " 0000000.00" . Note that there are two spaces in front of the first zero. How can I do this using awk or sed? (3 Replies)
Discussion started by: mustang_9333
3 Replies

6. Shell Programming and Scripting

build a string of asterisks elegantly

hi in a script i hate string definitions like str="***********************************" who can help to build a 50 character long string of asterisks more elegantly? any hint is welcome thanks and regards lazy (18 Replies)
Discussion started by: lazybaer
18 Replies

7. Shell Programming and Scripting

Eliminate or ignore asterisks in data when parsing

I have data file that has this in it: data.txt ......... ......... PPJ97**2017PPJ97**2017-03-21-13.35.15.887208********************START ERROR LOGGING****************** PPJ97**2017-03-21-13.35.15.887208** PROMPT APPLICATION ERROR ** PPJ97**2017-03-21-13.35.15.887208** IN TIMESTAMP |... (1 Reply)
Discussion started by: SkySmart
1 Replies

8. UNIX for Advanced & Expert Users

Show Asterisks when changing Password

Note: **Showing Asterisks when using SUDO is not what I am looking for. That method is well documented** Short Description: We have a requirement where users want to see that they are typing a password when logging into a RedHat box or when they are changing their password -- instead of... (1 Reply)
Discussion started by: caperjm
1 Replies

9. Shell Programming and Scripting

Replacing multiple asterisks in vi

i need to replace all occurrences of "period asterisk" as it is shown in this: blah blah .*:.*:.* blah blah with: :: so that the end result looks like this: blah blah :: blah blah I tried different variations of the following but it didint work: %s_ .*:.*:.* _ :: _g (2 Replies)
Discussion started by: SkySmart
2 Replies
savemixer(8)						OSS System Administration Commands					      savemixer(8)

NAME
savemixer - Open Sound System program for saving and restoring mixer settings. SYNOPSIS
savemixer [-LVv] [-f <fname>] DESCRIPTION
The savemixer program saves mixer settings. It can also load saved mixer settings back into the mixer. Running this program without any parameters will save the current mixer settings into /var/lib/oss4/mixer.save or $OSSVARDIR/mixer.save file. OSSVARDIR is decided by reading /etc/oss.conf, and defaults to /var/lib/oss4. AUTOMATIC SAVE
By default the soundoff command will automatically run savemixer to save the active mixer settings. See the manual page for soundoff(1) if you like to turn this feature off. OPTIONS
-f<fname> Use <fname> as setting file. -L Loads saved mixer and device map information from mixer.save. -V Version information. -v Verbose output. SEE ALSO
soundoff(1), soundon(1), ossdetect(1), ossdevlinks(1), ossmix(1), ossxmix(1) FILES
/etc/oss.conf /usr/sbin/savemixer /var/lib/oss4/mixer.save /var/lib/oss4/dspdevs.map /var/lib/oss4/applist.conf AUTHOR
4Front Technologies 16 December 2012 savemixer(8)
All times are GMT -4. The time now is 01:59 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy