help-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Shifting a block of text


From: fatiparty
Subject: Shifting a block of text
Date: Wed, 8 Dec 2021 08:52:05 +0100 (CET)

Dec 8, 2021, 07:47 by fxmbsw7@gmail.com:

> i cannot support this nonsense
> imagine u have to print 1m lines, this function will take ages
> bye
>

Thank you for trying to figure out the great value of it.


> On Wed, Dec 8, 2021, 08:44  <> fatiparty@tutanota.com> > wrote:
>
>> Dec 8, 2021, 07:40 by >> fxmbsw7@gmail.com>> :
>>
>>> i dunno but its very nonsense
>>> if more args just 2 u use
>>>
>>
>> Yes, currently only two args are used, one for the amount of leading spaces, 
>> the second
>> argument  for a text string.  I want to make it use all arguments that 
>> follow as you say.
>>
>>
>>> maybe describe the project u do more in detail and we shall see better
>>>
>>> On Wed, Dec 8, 2021, 08:38 fatiparty--- via <>>> help-bash@gnu.org>>> > 
>>> wrote:
>>>
>>>>
>>>> Trying to adapt the following function to use all arguments rather than
>>>> just the first one.
>>>> The code should introduce nc spaces ahead of the start of each argument
>>>> passed.
>>>> Each shifted argument must be on  new line.  The first argument ins
>>>> numeric, defining
>>>> the amount of shift.
>>>>
>>>> shifted-block ()
>>>> {
>>>> if (( $# == 1 )); then
>>>> nc=0 ; arg="$1"
>>>> elif (( $# >= 2 )); then
>>>> nc="$1" ; arg="$2"
>>>> else
>>>> nc=0 ; arg="$1"
>>>> fi
>>>>
>>>> nw=$(( nc + ${#arg} ))
>>>> printf "%${nw}s\n" "$arg"
>>>> }
>>>>
>>
>>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]