Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Decimal numbers and letters in the same collums: round numbers Post 302988524 by RavinderSingh13 on Tuesday 27th of December 2016 01:31:43 PM
Old 12-27-2016
Hello echo manolis,

Could you please try following and let me know if this helps you.
Code:
awk -F, 'function check(var){var=var~/[[:digit:]]/?"%0.2f":(var~/[[:alpha:]]/?"%s":"");return var} {gsub(/[[:space:]]+,[[:space:]]+/,",",$0);a=check($2);b=check($4);printf(a "," b"\n",$2,$4)}' OFS=","   Input_file

Output will be as follows.
Code:
0.25,0.11
0.59,10.25
nd,8.46
10.46,n3d5
-12.46,-8.55

EDIT: Adding a non-one liner form of solution too successfully now.
Code:
awk -F, 'function check(var){
                                var=var~/[[:digit:]]/?"%0.2f":(var~/[[:alpha:]]/?"%s":"");
                                return var
                            }
                            {
                                gsub(/[[:space:]]+,[[:space:]]+/,",",$0);
                                a=check($2);
                                b=check($4);
                                printf(a "," b"\n",$2,$4)
                            }
        '    Input_file

Thanks,
R. Singh

Last edited by RavinderSingh13; 12-28-2016 at 02:16 PM.. Reason: Adding a non-one liner form of solution too successfully now.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Letters, Numbers or Alphanumerical

How do I check if a variable consisted of letters, numbers or both letters and numbers? For example, I have a variable $X and I want to print "1" if it contains only letters, "2" if it contains only numbers and "3" if it contains both (2 Replies)
Discussion started by: sleepster
2 Replies

2. UNIX for Dummies Questions & Answers

Help! scrolling numbers and letters

Hello all I am a unix newbie.... I have a sun netra t1 and it is freaking out I am connected to it through a console port, and it is just spitting out a ton on numbers and letters like below its just keeps going and going. I have tried rebooting it and I cannot get it back to any kind of a... (1 Reply)
Discussion started by: intraining11
1 Replies

3. Shell Programming and Scripting

decimal numbers

Hi friends How can I use "for loop" for decimal numbers? ex: 0.1 < x < 0.6 I used this commands but does'nt work. LIMIT=0.6 for ((x=0.1; x<=LIMIT; x++)) do - - - done Many thanks (1 Reply)
Discussion started by: snow
1 Replies

4. Shell Programming and Scripting

Regarding decimal numbers

Hello... I am new to unix and I am wondering if in a C-shell script , Are we supposed to use only whole numbers........ for example..if a program needs to calculate the average of some numbers........ @ avg = (($1 +$2 + $3)/3)) is returning a whole number.........How can a decimal be... (7 Replies)
Discussion started by: ravindra22
7 Replies

5. Shell Programming and Scripting

sed command, look for numbers following letters

If I have a set of strings, C21 F231 H42 1C10 1F113 and I want to isolate the ints following the char, what would the sed string be to find numbers after letters? If I do, *, I will get numbers after letters, but I am looking to do something like, sed 's/*/\t*/g' this will give me... (14 Replies)
Discussion started by: LMHmedchem
14 Replies

6. Shell Programming and Scripting

reducing values in columns with both numbers and letters

Hi, I columns with both number and letters however i need the number 4 trimmed off the lines that have 3 numbers in them so it just because the 2 preceding numbers only For example V25QG2-K18QG-V25CG2 L26HG-L17HA-L26CG I434QD1-L19HB2-I434CD1 I434QD1-A31QB-I434CD1 ... (7 Replies)
Discussion started by: olifu02
7 Replies

7. Shell Programming and Scripting

awk : match only the pattern string , not letters or numbers after that.

Hi Experts, I am finding difficulty to get exact match: file OPERATING_SYSTEM=HP-UX LOOPBACK_ADDRESS=127.0.0.1 INTERFACE_NAME="lan3" IP_ADDRESS="10.53.52.241" SUBNET_MASK="255.255.255.192" BROADCAST_ADDRESS="" INTERFACE_STATE="" DHCP_ENABLE=0 INTERFACE_NAME="lan3:1"... (6 Replies)
Discussion started by: rveri
6 Replies

8. Shell Programming and Scripting

Sorting mixed numbers and letters

Hello, I have a file such as this: chr1 chr2 chr1 chr2 chr3 chr10 chr4 chr5 chrz chr1AI want to sort it, I use this command: sort -k1 -th -n testfilebut I get this output, how can I fix this? chr1 chr1 chr10 chr1A chr2 chr2 (3 Replies)
Discussion started by: Homa
3 Replies

9. UNIX for Dummies Questions & Answers

sed - extract a group of Letters/numbers

I have a file with hundreds of lines in it. I wanted to extract anything that matches the following: KR followed by 4 digits: example KR1201 cat list | sed "s///g" Is the closest I've come, and obviously it is not what I want. This would remove all of the items that I want and leave me... (2 Replies)
Discussion started by: newbie2010
2 Replies

10. Shell Programming and Scripting

[FUN] Numbers to Roman letters/num

Heyas Just a little fun script (code block) i'd like to share for fun. #/bin/bash # roman.sh # # Function # num2roman() { # NUM # Returns NUM in roman letters # input=$1 # input num output="" # Clear output string len=${#input} # Initial length to count down ... (9 Replies)
Discussion started by: sea
9 Replies
strsetup.conf(4)					     Kernel Interfaces Manual						  strsetup.conf(4)

NAME
strsetup.conf - Configuration file for STREAMS drivers DESCRIPTION
The /etc/strsetup.conf file is the configuration file for STREAMS drivers. The strsetup.conf file specifies one or more character special files (or nodes) to be created when a STREAMS driver is configured into the kernel. If the driver is not configured, no character special files are created for it. If an old version of the file exists, the strsetup command removes it before the new one is created. The /etc/strsetup.conf file is defined as a Context-Dependent Symbolic Link (CDSL), and must be maintained as such. See the System Admin- istration manual for more information. Each entry in the /etc/strsetup.conf file specifies a driver name, device special file name, file mode and minor number. See the EXAMPLES section for a sample strsetup.conf file. Each line in the file is of the form: driver_name filename file_mode minor_number The fields have the following meanings: Specifies the name of the driver as reported by the strsetup -c command. This field is used to match the names read by the strsetup command from the kernel and must match exactly (the match is case sensitive). Specifies the full path name of the character special file or files to be created when driver_name is configured into the kernel. The filename can contain one conversion specifier in the style of printf(3). This conversion is used to include a minor device number in the filename. The permitted conversions are the following: Prints the minor number as a signed decimal Prints the minor number as a hexadecimal with lower case letters Prints the minor number hexadecimal with uppercase letters Prints octal Prints the minor number as an unsigned decimal Prints the minor number as a signed decimal Note that you must use a double percent sign (%%) to include a percent sign in the filename. Optionally, each of these conversions can include a specification for some number of leading 0's. This is done by following the % with a 0 and one or more digits specifying the total number of digits to be printed. The 0 must appear after the %. See the printf(3) reference page for more information. Any directories in the path of the filename that do not exist are created. Specifies the file mode assigned to the file when it is cre- ated. The file_mode field must always be in octal. The file is always created as a character special file. Specifies the minor device number field. The strsetup command reads the major device numbers from the kernel. This field indicates to the strsetup command how to assign minor device numbers. This minor_number field can contain the one of the following values: Indicates that the device should be cre- ated as a clone device. In this case the major number becomes that of the special clone pseudo-device driver and the minor device number becomes the device's major number. Note that the word clone must be lowercase. Creates a single device with the minor device number N. Note that N is a decimal number. Create M-N nodes with the devices' major numbers and minor numbers between M and N. Note that M and N are decimal numbers. When a range of minor numbers is specified, a filename conversion specifier can be used to make certain that each node created is unique. EXAMPLES
The following is a sample /etc/strsetup.conf file: special driver name filename file mode minor number ptm /dev/ptmx 0666 clone log /dev/streams/log 0666 clone nuls /dev/streams/nuls 0666 clone echo /dev/streams/echo 0666 clone sad /dev/sad/admin 0666 clone pts /dev/pts/%d 0666 0-127 FILES
STREAMS setup configuration file RELATED INFORMATION
Commands: strsetup(8) Network Programmer's Guide delim off strsetup.conf(4)
All times are GMT -4. The time now is 08:16 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy