Creating a pseudo-array in dash, (POSIX).

Tags
array, creating, dash, posix, shell scripts

 
Thread Tools Search this Thread
# 8  
Old 1 Week Ago
@ Don...

Each element in the pseudo-array will be a ASCII number from 0 to 255 decimal the value of an 8 bit byte, (so therefore 1 to 3 characters long); a simple audio sample.
(However it could be a 2 byte word from 0 to 65535 decimal, depends how I feel; a more accurate sample if I decide.)
I used newlines as an element separator in one of my examples but any IFS value would probably be OK by me...

You mention ed and I have never, ever used it and I like the idea you put forwards so man page and www it is to see the possibiities.
Is there a limit to POSIX's number of variables, or is that limited to available real memory and element sizes?

@ Jim M...

I code for pure fun and I really love trying the _impossible_ and making languages do stuff they were not designed to do.

@ Scrutinzer...

Not in my local environment at the moment but will try your method out.
# 9  
Old 1 Week Ago
Quote:
Originally Posted by wisecracker
@ Don...

Each element in the pseudo-array will be a ASCII number from 0 to 255 decimal the value of an 8 bit byte, (so therefore 1 to 3 characters long); a simple audio sample.
(However it could be a 2 byte word from 0 to 65535 decimal, depends how I feel; a more accurate sample if I decide.)
I used newlines as an element separator in one of my examples but any IFS value would probably be OK by me...

You mention ed and I have never, ever used it and I like the idea you put forwards so man page and www it is to see the possibiities.
Is there a limit to POSIX's number of variables, or is that limited to available real memory and element sizes?

... ... ...
If you're used to using vi you've been using ed for as long as you've been using vi; you just didn't know it. And, by the way, everything I say about ed in the rest of this note also applies to the ex utility. I usually use ed instead of ex because ed is usually smaller than ex, and, therefore, loads faster. There are a few small differences between ed and ex, but none of them apply to the examples used in the following discussion.

In vi when you hit escape (to exit text append mode) and issue a command that starts with a <colon>, everything you enter after the colon is an ed command.

For example the vi the :w filename command writes the current contents of the editing buffer to the file named filename. In ed the command w filename writes the current contents of the editing buffer to the file named filename.

In vi the command :100s/.*/123/ will change the contents of line 100 in the editing buffer to the string "123". In ed the command 100s/.*/123/ will change the contents of line 100 in the editing buffer to the string "123".

In vi the command :100,200g/^.$/s/^/0/ followed by the command :100,200g/^..$/s/^/0/ will add leading zero characters on any of lines 100 through 200 of your editing buffer that had only one or two characters to have three characters on those lines with leading zero fill. In ed the command 100,200g/^.$/s/^/0/ followed by the command 100,200g/^..$/s/^/0/ will add leading zero characters on any of lines 100 through 200 of your editing buffer that had only one or two characters to have three characters on those lines with leading zero fill.

According to POSIX, the number of variables you can have in the shell and the length of values assigned to those variables is limited by the amount of physical memory available to the shell and the address space available to the shell in its addressable data space. The length of lines in ed is further restricted because the behavior of ed is only defined if the file you are editing is a text file and the standard says that a file is not a text file if it contains a line containing more than LINE_MAX bytes (including the terminating <newline> character) and implementations are required to set the implementation's LINE_MAX configuration limit to a value no smaller than 2048.

Cheers,
Don
This User Gave Thanks to Don Cragun For This Post:
wisecracker (1 Week Ago)

|
Thread Tools Search this Thread
Search this Thread:
Advanced Search

More UNIX and Linux Forum Topics You Might Find Helpful
Creating an array with options as an argument! dixits Shell Programming and Scripting 2 04-05-2013 02:38 PM
Creating array from file Lord Spectre Shell Programming and Scripting 13 09-11-2012 06:39 AM
Creating an array jrymer UNIX for Dummies Questions & Answers 3 07-21-2012 01:37 PM
Creating bash array name from variable melias Shell Programming and Scripting 3 02-27-2012 11:50 PM
Problem with array and creating directories Renjesh Shell Programming and Scripting 2 03-18-2011 09:43 AM
Creating an array out of users: shell script figaro BSD 7 03-14-2011 05:00 PM
Creating array containing file names kristinu Shell Programming and Scripting 1 11-03-2010 01:03 AM
Help in Array looping and creating multiple lines sexyTrojan UNIX for Dummies Questions & Answers 0 11-02-2009 08:30 PM
creating variable array name priyanka3006 Shell Programming and Scripting 1 04-09-2009 10:50 AM
Creating an array to hold posix thread ids: Only dynamic array works kmehta Programming 4 09-21-2008 09:24 PM
Creating a string array from a directory listing otes4 UNIX for Dummies Questions & Answers 1 08-08-2008 09:40 PM
creating a dynamic array trichyselva Shell Programming and Scripting 1 07-10-2008 10:13 AM
pseudo: [ID 129642 kern.info] pseudo-device: vol0 mndavies Solaris 0 02-13-2008 10:21 PM
creating array variable scriptingmani Shell Programming and Scripting 2 06-28-2007 11:25 AM
creating a dynamic array in ksh gundu Shell Programming and Scripting 3 03-09-2005 03:26 PM