Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

command time : missing --help and other options

Featured Replies

I wanted to format the output of the command "time" by adding -f,  this returns an error,  -h and --help are missing too. What are the accepted options ?  thanks

Solved by arox

  • Solution

"time" is "built in" into the shell.

 

In order to use the full version described by "man", you should first install the full version in /usr/bin/time :

 

# apt-get install time.

 

And call it with the full path.

 

Also, when man fail to give doc because a package is missing, just google "man cmd".

  • Author

Thanks to arox and my bad : I was trying to use some full version's option in the built in version of time. 
No need to install time, it's done in armbian, just give the full path\command :

 

root@Bpi2+:~# time -f

-f: command not found

 

real 0m0,484s

user 0m0,396s

sys 0m0,089s

root@Bpi2+:~# which time

/usr/bin/time

root@Bpi2+:~# /usr/bin/time -f

/usr/bin/time: option requires an argument -- 'f'

Usage: /usr/bin/time [-apvV] [-f format] [-o file] [--append] [--verbose]

       [--portability] [--format=format] [--output=file] [--version]

       [--quiet] [--help] command [arg...]

root@Bpi2+:~# /usr/bin/time -f "%E" curl www.orange.fr

0:00.27

 

In such case type "type time" and the shell will inform you (is a shell keyword").

Thank You again I wanted to script some test and collect the results and this format is useful for this.

 

My next step is to remove the ':' in the output (is not trivial to combine 'time' and pipe without writing the output in a file, may be I have to try something else).

Be patient I can only write one post/day....

 

It's nice to have so small SBC and so large facilities and community.  Thank You Armbian !

 

@Werner & @Igor Thank You for replying (maybe too fast ?) but You are wrong when You think that I did'nt red the man pages ... it was more complex.

 

In shell, pipes and awk are your bests friends : perhaps something like this :

 

$ mkfifo /tmp/timefifo

$ awk -W interactive -F: '{printf("cmd=%s s=%f\n", $1, $2*60+$3)}' <>/tmp/timefifo > /tmp/stats &  

 

$ /usr/bin/time -o /tmp/timefifo -f "%C:%E" ls -l
$ /usr/bin/time -o /tmp/timefifo -f "%C:%E" ls
$ /usr/bin/time -o /tmp/timefifo -f "%C:%E" who


$ cat /tmp/stats

cmd=ls -l s=0.700000
cmd=ls s=0.070000

cmd=who s=0.000000

 

$ killall awk

N.B.  : <> open the pipe in read/wite mode to prevent it to be closed when "time" send EOF.

  • Author

I have tested the mamed pipe thru three small scripts :

 

=> the first one is called by snmpcd (snmp formating)

echo .1.3.6.1.2.1.25.1.8.0

echo Gauge32

bash /usr/bin/local/secondscript

 

=> the secondscript with awk and named pipe :

FIFO="/tmp/timefifo"

[[ -e $FIFO ]] &&  rm $FIFO    # if present then suppress it

mkfifo $FIFO 

awk -W interactive '{printf("%-6d \n", $1*1000)}' <> $FIFO > /tmp/stats &

/usr/bin/time -o $FIFO -f "%e" /usr/bin/thirdscript

cat /tmp/stats

killall awk

[[ -e $FIFO ]] && rm $FIFO

 

=> the third script :define the operation You want to know the during :

 

URL="example.html"

for i in `seq 1 20`;

do

         curl $URL > /dev/null 2>&1

done

 

********   It works, but there is a more simple solution : 

echo .1.3.6.1.2.1.25.1.8.0

echo Gauge32

before=$(date +%s%N)

curl http://example.html > /dev/null 2>/dev/null

after=$(date +%s%N)

echo $((((after-before))/1000))

********** result in microsecond

On 6/22/2021 at 5:33 AM, Werner said:

Often the best solutions are the simplest ;)

 

 

"called by snmpcd (snmp formating)"

 

As you and Werner say : the best solutions are often the simplest. The problem is to find what is really the simplest and to make the difference between simple and basic in a use case.

 

(This is just a bit of general thinking (and nostalgy), as I have no idea about what you are working on).

 

The **simple** network management protocol is surely basic but I never found it was simple and it has been a long time since I saw someone care about it.

 

One more time, this is just general thinking, but I feel we use today a lot of complicated but no so powerful technologies in IT. Linux is a unix derivative, UNix  has been designed by people who wanted a simple but powerful system after having worked on MULTix.

 

I try to keep that in mind. But it is not always easy and cannot be achieve if we want our computers to also toast bread and do the laundry. 

Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.