Sponsored Content
Top Forums Shell Programming and Scripting Bash Command To Delete Number from Array Post 302852709 by drl on Thursday 12th of September 2013 07:36:38 AM
Old 09-12-2013
Hi.

Addressing the splitting of the file with standard utility csplit:
Code:
#!/usr/bin/env bash

# @(#) s1	Demonstrate splitting of file at /pattern/+-count, csplit.

# Utility functions: print-as-echo, print-line-with-visual-space, debug.
# export PATH="/usr/local/bin:/usr/bin:/bin"
pe() { for _i;do printf "%s" "$_i";done; printf "\n"; }
pl() { pe;pe "-----" ;pe "$*"; }
db() { ( printf " db, ";for _i;do printf "%s" "$_i";done;printf "\n" ) >&2 ; }
db() { : ; }
C=$HOME/bin/context && [ -f $C ] && $C csplit

FILE=${1-data1}

# Remove debris from previous runs.
rm -f xx??

pl " Input data file $FILE:"
cat $FILE

pl " Current situation of resultant xx?? files (expecting none):"
ls xx??

pl " Results, counts of split file in characters:"
csplit -k -z $FILE '/Version/-1' '{*}'

pl " Current situation, and content of files:"
ls -lgG xx??
pe
head xx??

exit 0

producing:
Code:
$ ./s1

Environment: LC_ALL = C, LANG = C
(Versions displayed with local utility "version")
OS, ker|rel, machine: Linux, 2.6.26-2-amd64, x86_64
Distribution        : Debian GNU/Linux 5.0.8 (lenny) 
bash GNU bash 3.2.39
csplit (GNU coreutils) 6.10

-----
 Input data file data1:
Unrelated stuff
Version something
No discernible pattern
Version otherwise

-----
 Current situation of resultant xx?? files (expecting none):
ls: cannot access xx??: No such file or directory

-----
 Results, counts of split file in characters:
34
41

-----
 Current situation, and content of files:
-rw-r--r-- 1 34 Sep 12 06:33 xx00
-rw-r--r-- 1 41 Sep 12 06:33 xx01

==> xx00 <==
Unrelated stuff
Version something

==> xx01 <==
No discernible pattern
Version otherwise

See man pages for details.

Best wshes ... cheers, drl
This User Gave Thanks to drl For This Post:
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

display the actual number of bash command interpreter

Hello everybody! I have a problem "Write script, which will display the actual number of bash command interpreter, working in the operating system." I used ps command to list all process running in the system but I don't know how to select only bash command interpreter. Pls give me some... (3 Replies)
Discussion started by: nguyendu0102
3 Replies

2. UNIX for Dummies Questions & Answers

Bash script to delete file input on command line

1) I wrote a script and gave the desired permissions using "chmod 755 scriptname". Now if i edit the script file, why do i need to set the permission again? Didn't i set the permission attribute.. or if i edit the file, does the inode number of file changes? 2) I am running my unix on a server... (1 Reply)
Discussion started by: animesharma
1 Replies

3. Shell Programming and Scripting

Bash - Loading a command's output line by line into an array

I have been trying this a lot of different ways and haven't found too much online. Here's what I've got so far: j=0 declare -a first zero=(`cat $tmpfile`) for i in "${zero}" do command $i >> "${first}" ... (4 Replies)
Discussion started by: Azrael
4 Replies

4. UNIX for Dummies Questions & Answers

How to delete lines above a certin line number in bash shell

Hi, I have written a script that returns the line number of the pattern i want and i stored the line number in a variable(getlinenumber).Now i want to delete all the lines in a file above this line number which is stored in a variable. i am using sed '1,$getlinenumberd' > file1.txt which is... (2 Replies)
Discussion started by: learninguser235
2 Replies

5. UNIX for Dummies Questions & Answers

How to delete lines above a certin line number in bash shell

Hi, I have written a script that returns the line number of the pattern i want and i stored the line number in a variable.Now i want to delete all the lines in a file above this line number which is stored in a variable. i am using sed '1,$getlinenumberd' > file1.txt which is not working(wrog... (5 Replies)
Discussion started by: learninguser235
5 Replies

6. Shell Programming and Scripting

Bash 3.2 - Array / Regex - IF 3rd member in array ends in 5 digits then do somthing...

Trying to do some control flow parsing based on the index postion of an array member. Here is the pseudo code I am trying to write in (preferably in pure bash) where possible. I am thinking regex with do the trick, but need a little help. pesudo code if == ENDSINFIVEINTS ]]; then do... (4 Replies)
Discussion started by: briandanielz
4 Replies

7. Shell Programming and Scripting

Bash arrays: rebin/interpolate smaller array to large array

hello, i need a bit of help on how to do this effectively in bash without a lot of extra looping or massive switch/case i have a long array of M elements and a short array of N elements, so M > N always. M is not a multiple of N. for case 1, I want to stretch N to fit M arrayHuge H = (... (2 Replies)
Discussion started by: f77hack
2 Replies

8. Programming

Bash script - find command with delete and exec

hi all, i have devised a script that starts in /restored/ and in there, there are a lot of sub folders called peoples names and in the sub folders are files/folders and it deletes the data in the sub folders BUT not the sub folder itself and it should then touch a file in all the sub folders... (3 Replies)
Discussion started by: robertkwild
3 Replies

9. UNIX for Beginners Questions & Answers

Need a Bash script for iterating thru an array and running a command

Hi , I am a total beginner so bear with me. I have the below code which works . I need to extend it by iterating thru the array arr and executing a command in each loop. some thing on the lines of below. I need to run this in a Jenkins script , so I would need below bash script to run... (6 Replies)
Discussion started by: SVRao19056
6 Replies
Test::Log::Dispatch(3pm)				User Contributed Perl Documentation				  Test::Log::Dispatch(3pm)

NAME
Test::Log::Dispatch -- Test what you are logging SYNOPSIS
use Test::More; use Test::Log::Dispatch; my $log = Test::Log::Dispatch->new(); # ... # call something that logs to $log # ... # now test to make sure you logged the right things $log->contains_ok(qr/good log message/, "good message was logged"); $log->does_not_contain_ok(qr/unexpected log message/, "unexpected message was not logged"); $log->empty_ok("no more logs"); # or my $msgs = $log->msgs; cmp_deeply($msgs, ['msg1', 'msg2', 'msg3']); DESCRIPTION
"Test::Log::Dispatch" is a "Log::Dispatch" object that keeps track of everything logged to it in memory, and provides convenient tests against what has been logged. CONSTRUCTOR
The constructor returns a "Test::Log::Dispatch" object, which inherits from "Log::Dispatch" and contains a single "Log::Dispatch::Array" output at 'debug' level. The constructor requires no parameters. Any parameters will be forwarded to the "Log::Dispatch::Array" constructor. For example, you can pass a min_level to override the default 'debug'. METHODS
The test_name is optional in the *_ok methods; a reasonable default will be provided. contains_ok ($regex[, $test_name]) Tests that a message in the log buffer matches $regex. On success, the message is removed from the log buffer (but any other matches are left untouched). does_not_contain_ok ($regex[, $test_name]) Tests that no message in the log buffer matches $regex. empty_ok ([$test_name]) Tests that there is no log buffer left. On failure, the log buffer is cleared to limit further cascading failures. contains_only_ok ($regex[, $test_name]) Tests that there is a single message in the log buffer and it matches $regex. On success, the message is removed. clear () Clears the log buffer. msgs () Returns the current contents of the log buffer as an array reference, where each element is a hash containing a message and level key. TO DO
o Allow testing of log levels. SEE ALSO
Log::Dispatch, Test::Log4perl AUTHOR
Jonathan Swartz COPYRIGHT &; LICENSE Copyright (C) 2009 Jonathan Swartz, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.10.1 2009-11-04 Test::Log::Dispatch(3pm)
All times are GMT -4. The time now is 04:16 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy