Sponsored Content
Top Forums Shell Programming and Scripting Extracting sequential pattern Post 302981505 by rovf on Wednesday 14th of September 2016 03:46:09 AM
Old 09-14-2016
It seems that you are already strugging with the *algorithm*, and not with the implementation.

Here is how I would approach the problem:

What you basically have, is an ordered list of items (A B C D E ..... ) and you want to generate all consecutive runs from it. For example, B C D is such a run. Also, you don't consider a single element (D) by itself as a "run".

If you think about the whole list being an array, a run can represented by two array indices, which are different and where the first index is lower than the other. In the example above, the run B C D can be - assuming that we start index count in the array by 1 - by the pair (2,4), because B is the second and D is the fourth element.

Since it is trivial to generate the actual list of elements, when you have the index pair as described above, your problem boils down to generate all such index pairs.

Assuming that your array contains N elements and N>1, you generate all pairs matching the above restrictions by two nested loops. Without focusing on a particular programming language, the algorithm can be sketched as

Code:
    for i from 1 to N-1
      for j from i+1 to N
        generate run (i,j)

Of course you need to generate your array before, but as this doesn't request some clever algorithm, I left out this part for brevity.

Now you have the algorithm, and you can turn it in any language of your choice, so the next step would be to choose the language. You *can* do it in awk, in the same way as you can fetch one bottle of milk from the grocer round the corner by using a truck, but there are plenty of languages around, and maybe the choice of the language is also influenced by what you are going to do with the data afterwards.

I personally would do it in Ruby or in Zsh, but others might consider Python or ksh or C++ or LISP instead. Take that language which you are familiar with, or which you are eager to learn.
This User Gave Thanks to rovf For This Post:
 

10 More Discussions You Might Find Interesting

1. Programming

Reading special characters while converting sequential file to line sequential

We have to convert a sequential file to a 80 char line sequential file (HP UX platform).The sequential file contains special characters. which after conversion of the file to line sequential are getting coverted into "new line" or "tab" and file is getting distorted. Is there any way to read these... (2 Replies)
Discussion started by: Rajeshsu
2 Replies

2. Shell Programming and Scripting

Extracting lines between 2 strings only if the pattern patches

Hi Friends, Please help me with the following problem: I have an xml file with the following lines: <init-param> <param-name>/default/directory</param-name> <param-value>default</param-value> </init-param> <init-param> ... (5 Replies)
Discussion started by: simran
5 Replies

3. UNIX for Dummies Questions & Answers

extracting pattern from every line

My scenario: 1. textfle 2. every line similar to: "...____ your sister?is1are0am0Grammar point1_______ the chairs in..." 3. need to extract only the numbers in each line, eg 001 in the case above. Tried different GREP/Sed combinations but...here I am An output like that would be... (9 Replies)
Discussion started by: eldeingles
9 Replies

4. Shell Programming and Scripting

sequential to line sequential

Hi I have a file sequential way i.e. written in contineous mode and the Record Seperator is AM from which the record is seperated .Now to process I have to make line sequential,and more over record length is not same it varies as per the input address, AM1234563 John Murray 24 Old streeet old... (5 Replies)
Discussion started by: vakharia Mahesh
5 Replies

5. Programming

Tool to simulate non-sequential disk I/O (simulate db file sequential read) in C POSIX

Writing a Tool to simulate non-sequential disk I/O (simulate db file sequential read) in C POSIX I have over the years come across the same issue a couple of times, and it normally is that the read speed on SAN is absolutely atrocious when doing non-sequential I/O to the disks. Problem being of... (7 Replies)
Discussion started by: vrghost
7 Replies

6. UNIX for Dummies Questions & Answers

Extracting sub-string matching the pattern.

Hi, I have a string looks like the following: USERS 32767.9844 UNDOTBS1 32767.9844 SYSAUX 32767.9844 SYSTEM 32767.9844 EMS 8192 EMS 8192 EMS_INDEXES 4096 EMS_INDEXES 4096 8 rows selected. How do I extract a sub-string to get the expected output as following: EMS 8192 EMS_INDEXES 4096 ... (3 Replies)
Discussion started by: NetBear
3 Replies

7. UNIX for Dummies Questions & Answers

Extracting substring between pattern only one time

Hello ifconfig return : eth0 Link encap:Ethernet HWaddr 11:24:1D:C1:99:BA inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:37307 errors:0 dropped:0 overruns:0 frame:0 ... (2 Replies)
Discussion started by: jcdole
2 Replies

8. Shell Programming and Scripting

Extracting a certain pattern..

Hi All, Suppose i have 4 coloumns in a excel sheet. Col A Col B Col C Col D 123 time1 abc 8 231 time2 xyz 6 324 time3 abc 4 456 time4 xyz 3 132 time5 abc 2 I want the data of coloum A... (3 Replies)
Discussion started by: ankitknit
3 Replies

9. Shell Programming and Scripting

Searching for a pattern and extracting records related to that pattern

Hi there, Looking forward to your advice for the below: I have a file which contains 2 paragraphs related to a particular pattern. I have to search for those paragraphs from a log file and then print a particular line from those paragraphs. Sample: I have one file with the fixed... (3 Replies)
Discussion started by: danish0909
3 Replies

10. Shell Programming and Scripting

Search for sequential pattern

input file: 4 5 1 A 1 2 3 4 s 8 (input file can be many millions of lines long) I want to search the example input file above, and when I find 4 sequential rows with values of 1,2,3,4 return those values and the two previous ones. In this case it should return 1,A,1,2,3,4 I know... (8 Replies)
Discussion started by: cedenker
8 Replies
scsi_setup_cdb(9F)					   Kernel Functions for Drivers 					scsi_setup_cdb(9F)

NAME
scsi_setup_cdb - setup SCSI command descriptor block (CDB) SYNOPSIS
int scsi_setup_cdb(union scsi_cdb *cdbp, uchar_t cmd, uint_t addr, uint_t cnt, uint_t othr_cdb_data); INTERFACE LEVEL
Solaris DDI specific (Solaris DDI). PARAMETERS
cdbp Pointer to command descriptor block. cmd The first byte of the SCSI group 0, 1, 2, 4, or 5 CDB. addr Pointer to the location of the data. cnt Data transfer length in units defined by the SCSI device type. For sequential devices cnt is the number of bytes. For block devices, cnt is the number of blocks. othr_cdb_data Additional CDB data. DESCRIPTION
scsi_setup_cdb() function initializes a group 0, 1, 2, 4, or 5 type of command descriptor block pointed to by cdbp using cmd, addr, cnt, othr_cdb_data. addr should be set to 0 for commands having no addressing information (for example, group 0 READ command for sequential access devices). othr_cdb_data should be additional CDB data for Group 4 commands; otherwise, it should be set to 0. scsi_setup_cdb() function does not set the LUN bits in CDB[1] as the makecom(9F) functions do. Also, the fixed bit for sequential access device commands is not set. RETURN VALUES
scsi_setup_cdb() returns: 1 Upon success. 0 Upon failure. CONTEXT
These functions can be called from a user or interrupt context. SEE ALSO
makecom(9F), scsi_pkt(9S) Writing Device Drivers American National Standard Small Computer System Interface-2 (SCSI-2) American National Standard SCSI-3 Primary Commands (SPC) SunOS 5.10 23 Jun 1997 scsi_setup_cdb(9F)
All times are GMT -4. The time now is 02:06 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy