Sponsored Content
Top Forums Shell Programming and Scripting Search for an undetermined number of spaces Post 303013616 by Scrutinizer on Saturday 24th of February 2018 11:05:37 AM
Old 02-24-2018
Quote:
Originally Posted by bedtime
I was just about to post that I was not looking for the above code. I have used this, and it collapses return keys and other useful characters.

I only want to reduce spaces beyond a single space to a single space using awk.

Sorry for the runaround. Smilie
No worries Smilie . Another option may be to just adjust the field separator:
Code:
awk -F' *' '{$1=$1}1'

or perhaps a tiny tiny bit more efficient:
Code:
awk -F'  +' '{$1=$1}1' file

But what if you have a space and a TAB together? Do you leave the space or delete it?

Last edited by Scrutinizer; 02-24-2018 at 12:11 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Search string with invariable spaces

I need to grep for pattern "enable_cal = true".The problem is that different file has different no of spaces in that string. for eg one file will have "enable_cal <space><space><space>=true" next file will have "enable_cal= <space><space>true" other one will have... (5 Replies)
Discussion started by: villain41
5 Replies

2. Shell Programming and Scripting

Split File of Number with spaces

How do i split a variable of numbers with spaces... for example echo "100 100 100 100" > temp.txt as the values can always change in temp.txt, i think it will be feasible to split the numbers in accordance to column. How is it possible to make it into $a $b $c $d? (3 Replies)
Discussion started by: dplate07
3 Replies

3. Shell Programming and Scripting

construct a string with X number of spaces

I'd like to create a variable with the value of X number of space( no Perl please), printf seems to work, but , in following example,10 spaces becomes 1 space when assinged to a variable, Why? other solutions are welcome. $printf "=%10s=\n" = = $var=$(printf "=%10s=\n") echo... (4 Replies)
Discussion started by: honglus
4 Replies

4. UNIX for Dummies Questions & Answers

grep any number of spaces

which one of the following is the correct expression to ignore line with multiple spaces after any string cat file | grep -v "xyz *$" or cat file | grep -v "xyz*$" do i need "*" to specify the sapce or " *" will do? (2 Replies)
Discussion started by: manishma71
2 Replies

5. Shell Programming and Scripting

determine the number of spaces

Here is a weird question :) i am trying to create a script written in bash that will create configuration files for nagios. As some of you aware is has to be written in the below format: define service{ option1 value1 option2 value2... (6 Replies)
Discussion started by: ppolianidis
6 Replies

6. Shell Programming and Scripting

search pattern that has spaces with nawk

Hi guys, I need a help ! I need do grab some string from file and then count n lines after that pattern. This is working fine, but my problem is that the string to be searched has spaces within, like an example : LINK COUNTERS what I am using is: nawk... (2 Replies)
Discussion started by: robdcb
2 Replies

7. Shell Programming and Scripting

Conduct a search or test -f over a path with spaces

I am organizing my music library on a NAS server. I want to print a list of all the directories that are missing the cover art (at least one or more jpeg file). I have successfully created a file with each line containing the path to each occurance of one or more .mp3 files. That path is also... (2 Replies)
Discussion started by: godfreydanials
2 Replies

8. AIX

Search a string having spaces

Hi I am looking to search a string having spaces in a directory for example : my string is "summer hot" my code :for i in `cat position__list.txt` do echo $i" : " `find . -mtime -6 | xargs grep -l ":83D:$i" | xargs ls -ltr|tail -1|awk '{ print $6 , $7 , $8, $9;... (6 Replies)
Discussion started by: wedng.bell
6 Replies

9. Shell Programming and Scripting

Print a specific number of spaces

i'm looking for a command that allows me to print a specific number of spaces which i will provide. something as simple as: spaces=4 printf " " * $spaces i'm looking for somethign that'll allow me to print a specific amount of spaces on a line. can awk be used for this? (4 Replies)
Discussion started by: SkySmart
4 Replies

10. Shell Programming and Scripting

Printing a specific number of spaces

when given a file name, im looking for the most efficient way to turn each letter of the file name into spaces. for instance, the way im thinking of going about this is this: MYFILE=check_disks.sh CHANUM=$(echo ${MYFILE} | awk '{ print length }') printf '%s\n' $CHANUM as you can see... (4 Replies)
Discussion started by: SkySmart
4 Replies
LKSH(1) 						    BSD General Commands Manual 						   LKSH(1)

NAME
lksh -- Legacy Korn shell built on mksh SYNOPSIS
lksh [-+abCefhiklmnprUuvXx] [-+o opt] [-c string | -s | file [args ...]] DESCRIPTION
lksh is a command interpreter intended exclusive for running legacy shell scripts. It is built on mksh; refer to its manual page for details on the scripting language. LEGACY MODE
lksh has the following differences from mksh: o lksh is not suitable for use as /bin/sh. o There is no explicit support for interactive use, nor any command line editing code. Hence, lksh is not suitable as a user's login shell, either; use mksh instead. o The KSH_VERSION string identifies lksh as ``LEGACY KSH'' instead of ``MIRBSD KSH''. o Some mksh specific extensions are missing; specifically, the -T command-line option. o lksh always uses traditional mode for constructs like: $ set -- $(getopt ab:c "$@") $ echo $? POSIX mandates this to show 0, but traditional mode passes through the errorlevel from the getopt(1) command. o lksh, unlike AT&T UNIX ksh, does not keep file descriptors > 2 private. o lksh parses leading-zero numbers as octal (base 8). o Integers use the host C environment's long type, not int32_t. Unsigned arithmetic is done using unsigned long, not uint32_t. Neither value limits nor wraparound is guaranteed. Dividing the largest negative number by -1 is Undefined Behaviour (but might work on 32-bit and 64-bit long types). o lksh only offers the traditional ten file descriptors to scripts. SEE ALSO
mksh(1) https://www.mirbsd.org/mksh.htm https://www.mirbsd.org/ksh-chan.htm CAVEATS
lksh tries to make a cross between a legacy bourne/posix compatibl-ish shell and a legacy pdksh-alike but ``legacy'' is not exactly speci- fied. Parsing numbers with leading zero digits or ``0x'' is relatively recent in all pdksh derivates, but supported here for completeness. It might make sense to make this a run-time option, but that might also be overkill. The set built-in command does not have all options one would expect from a full-blown mksh or pdksh. Talk to the MirOS development team using the mailing list at <miros-mksh@mirbsd.org> or the #!/bin/mksh (or #ksh) IRC channel at irc.freenode.net (Port 6697 SSL, 6667 unencrypted) if you need any further quirks or assistance, and consider migrating your legacy scripts to work with mksh instead of requiring lksh. MirBSD February 11, 2013 MirBSD
All times are GMT -4. The time now is 01:39 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy