Sponsored Content
Top Forums Shell Programming and Scripting A better way to compare text length percentage? Post 303046128 by bedtime on Friday 24th of April 2020 07:27:11 PM
Old 04-24-2020
Quote:
Originally Posted by sea
Thats why I prefer functions:
Code:
bigger_value()  { # str1 str2
    [[ ! 2 -eq $# ]] && echo "Usage: $FUNCNAME str1 str2" >&2 && return 1
    echo ${#1} ${#2} | awk '{a=b=$1;($1>$2)?a=$2:b=$2;if(a*b){print int(100/a*b)}}' >&1
    return $?
 }

hth
I prefer to only use functions when I'm going to use them more than once in my code. In this case, it's only used once.


Quote:
EDIT:
But you still need to figure out a way to 'remove the option' to pass an empty string.
And without knowing how/where you get those strings, we can not help.
The strings are regular text. So long as the examples as we've used them work, the program will work. As to the empty string, the code to not run if one or more strings are 0 in length works well enough for me.

Last edited by bedtime; 04-24-2020 at 08:55 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

how can i compare te length of the string

how can i campare te length of the string $var = unix if ( $var -eq 4 ) then.. is it right (6 Replies)
Discussion started by: mail2sant
6 Replies

2. Shell Programming and Scripting

How to Compare two files depend on line length Chars

I need to compare two files with exactly same length as example: - File1 contain 500 records with length of 640 chars of each line. File2 contain 1500 records with length of 640 chars of each line. I need get an output to be written in File3 which will contain 1000 records difference. but... (4 Replies)
Discussion started by: elj3dah
4 Replies

3. Shell Programming and Scripting

Need awk script to compare 2 fields in fixed length file.

Need a script that manipulates a fixed length file that will compare 2 fields in that file and if they are equal write that line to a new file. i.e. If fields 87-93 = fields 119-125, then write the entire line to a new file. Do this for every line in the file. After we get only the fields... (1 Reply)
Discussion started by: Muga801
1 Replies

4. UNIX for Dummies Questions & Answers

compare 2 very large lists of different length

I have two very large datasets (>100MB) in a simple vertical list format. They are of different size and with different order and formatting (e.g. whitespace and some other minor cruft that would thwart easy regex). Let's call them set1 and set2. I want to check set2 to see if it contains... (2 Replies)
Discussion started by: uiop44
2 Replies

5. Shell Programming and Scripting

changing a variable length text to a fixed length

Hi, Can anyone help with a effective solution ? I need to change a variable length text field (between 1 - 18 characters) to a fixed length text of 18 characters with the unused portion, at the end, filled with spaces. The text field is actually field 10 of a .csv file however I could cut... (7 Replies)
Discussion started by: dc18
7 Replies

6. Shell Programming and Scripting

Aligning text files by max field length

Hello, Is there anyway that I can align a pipe delimited text file by the maxium field length where the field is separated out by pipes for large text files with more than 100,000 rows? So, far I have searched other forums and google about aligning text files in unix and I have noticed that... (7 Replies)
Discussion started by: physalis2099
7 Replies

7. UNIX for Dummies Questions & Answers

print variable length text from the middle of a line?

I am trying to get text from a webpage, in terminal form. So far I am: 1. getting the html for the page printed using curl (curl -s webpage.com), which is then 2. piped to awk, printing line number 29 (awk NR==29), then 3. this is where I am sort of lost. I know where in the printed line I... (7 Replies)
Discussion started by: darkfalz
7 Replies

8. Shell Programming and Scripting

awk to output the percentage of a field compared to length

The awk below using the sample input would output the following: Basically, it averages the text in $5 that matches if $7 < 30 . awk '{if(len==0){last=$5;total=$7;len=1;getline}if($5!=last){printf("%s\t%f\n", last,... (6 Replies)
Discussion started by: cmccabe
6 Replies

9. Shell Programming and Scripting

Compare string length to a number

Hi, I want to compare strings length to a number but i am getting error. I want first name should be length of 8. Please help. #bin !/bin/bash clear echo -n "Enter name " read name IFS=_ ary=($name) for key in "${!ary}"; do echo "$key${ary}"; done ##First name should be equal to 8... (8 Replies)
Discussion started by: rajneesh4U
8 Replies

10. Shell Programming and Scripting

Extracting fixed length number from a text file

Hi, I have a text file with sample records as CASE ID: 20170218881083 Original presentment record for ARN not found for Re-presentment I want to extract the 23 digit number from this file. I thought of using grep but initially couldn't extract the required number. However, after... (16 Replies)
Discussion started by: dsid
16 Replies
class_create(3) 					     Library Functions Manual						   class_create(3)

NAME
class_create - Create a new class LIBRARY
Standard C Library (libclass.a) SYNOPSIS
#include <apar_types.h> #include <sys/class.h> class_change(class_apar_handle_t handle, char *class_name, struct resource_limits *limits); PARAMETERS
The partition descriptor returned by class_open(). The name of the class to change. The input is the new resource limits, the output is the resources available. DESCRIPTION
Create a new class. The created class will be empty. Use class_add() to populate the class. If the value of percent causes the total percentage of all classes to exceed 100%, the call will fail and avail will contain the remaining percentage available. Specify CLASS_RESOURCE_SCHED_DISABLED for the target limit of any resource that is not needed. Note that the calling process must have root access privileges. RETURN VALUES
The operation was successfully completed. An invalid partition handle was specified. The class_name is not an ASCII string. The class_name already exists. No space available in class_name. The requested percentage not is not in the range 0 - 100 or is not CLASS_RESOURCE_SCHED_DISABLED or CLASS_RESOURCE_SCHED_DISABLED. Requested percentage not available. The struct resource_percent <xxx- available> (where xxx is an integer in the range 0-100 representing percentage) will contain the maximum available percentage. SEE ALSO
Functions:class_init(3), class_change(3), class_close(3), class_configure(3), class_get_config_stats(3), class_close(3), class_delete(3), class_destroy(3), class_disable(3), class_enable(3), class_save_database(3), class_restore_database(3), class_load_database(3), class_change_name(3), class_database_file_exists(3), class_database_name(3), class_database_modified(3), class_get_classes(3), class_get_class_members(3), Commands:class_admin(8), runclass(1), class_scheduling(4) Other: The System Administration guide. delim off class_create(3)
All times are GMT -4. The time now is 12:14 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy