Hi guys,
I'm looking for a method to do raw command substitution.

The issue:
- Need a ksh93t+ / ksh93u facillity to be able to take the literal output of a 
command with no substitutions or omissions, where the substitute data is less 
than 1kB.  Target platforms are RHEL 6.4, Solaris 11 & AIX 7.1.

Examples.   printf is used below for illustration only.
- $(), command substitution, i.e. FOO=$(printf "\n\n\n\n\n");  seems unsuitable 
as it modifies the output by performing some whitespace handling, such as 
stripping newlines.  In this example, FOO returns zero-length.
- "$()", quoted, prevents the field splitting and pathname expansions, but 
doesn't protect the trailing whitespace.
- Binary read, i.e.   printf "\n\n\n\n\n" | read -N$length FOO;   works 
provided the $length of the read doesn't encounter the EOF, in this case values 
1-5.  If $length>5, in this example, FOO becomes zero-length.  For an input of 
unknown length, this feels impractical.
- One possible workaround is adding a suffix and then chopping it, i.e.  
FOO="$(printf "\n\n\n\n\nmysuffix")"; FOO="${FOO%mysuffix}"

Any advice on the best way to acquire the literal command output?

Thanks!    -G
_______________________________________________
ast-users mailing list
[email protected]
http://lists.research.att.com/mailman/listinfo/ast-users

Reply via email to