From owner-freebsd-questions@FreeBSD.ORG Thu Aug 14 09:53:15 2003 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E7C7B37B401 for ; Thu, 14 Aug 2003 09:53:15 -0700 (PDT) Received: from hermes.pressenter.com (hermes.pressenter.com [69.58.128.19]) by mx1.FreeBSD.org (Postfix) with ESMTP id A9BAC43F3F for ; Thu, 14 Aug 2003 09:53:14 -0700 (PDT) (envelope-from nospam@hiltonbsd.com) Received: from [69.58.134.109] (helo=daggar.sbgnet.local) by hermes.pressenter.com with smtp (Exim 3.16 #1) id 19nLLd-0004rc-00; Thu, 14 Aug 2003 11:53:13 -0500 Date: Thu, 14 Aug 2003 11:53:13 -0500 From: Stephen Hilton To: "Charles Howse" Message-Id: <20030814115313.2707cb21.nospam@hiltonbsd.com> In-Reply-To: <001a01c3627e$487d7a10$04fea8c0@moe> References: <20030814154920.GA74582@users.munk.nu> <001a01c3627e$487d7a10$04fea8c0@moe> X-Mailer: Sylpheed version 0.9.4 (GTK+ 1.2.10; i386-portbld-freebsd4.8) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit cc: freebsd-questions@freebsd.org Subject: Re: Using bc in bash script X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Aug 2003 16:53:16 -0000 On Thu, 14 Aug 2003 11:08:21 -0500 "Charles Howse" wrote: > > On Thu, Aug 14, 2003 at 10:46:45AM -0500, Charles Howse wrote: > > > Hello List, > > > > > > I've migrated from Redhat Linux 9 to FreeBSD 4.8-RELEASE, > > character mode > > > - no gui. > > > > > > I'm trying to calculate the number of seconds between > > $start_time and > > > $end_time in a bash script. > > > > > > Start_time=`date +%s` # Seconds past midnight at start of script > > > [ do lots of stuff ] > > > End_time=`date +%s` # Seconds past midnight at end of script > > > > > > Then I want to: et=`bc $end_time - $start_time` to get the number of > > > seconds or fractions of seconds elapsed. > > How about: > > > > et=`echo "$end_time - $start_time" | bc` > > Hi Jez, thanks for the reply! > > As my daughter would say, "Well, DUHHHHHHH!" > That worked fine, it reported 0 seconds. > Can I refine it to give me something like: .784 seconds? Charles, This will set bc precision to 5 decimal places: et=`echo "scale=5 ; $end_time - $start_time" | bc` Regards, Stephen Hilton nospam@hiltonbsd.com