User Tools

Site Tools


Sidebar

projects

wcp1 (due 20230125)
ntr0 (due 20230126)
pct0 (bonus; due 20230129)
pct1 (bonus; due 20230129)
wcp2 (due 20230201)
dap0 (due 20230202)
pct2 (due 20230202)
ngf0 (due 20230208)
pct3 (bonus; due 20230208)
wcp3 (due 20230208)
adm0 (due 20230215)
wcp4 (due 20230215)
pct4 (due 20230216)
bwp1 (bonus; due 20230301)
ngf1 (due 20230301)
pct5 (bonus; due 20230301)
wcp5 (due 20230301)
gfo0 (due 20230308)
pbx0 (due 20230308)
wcp6 (due 20230308)
pct6 (due 20230309)
ngf2 (due 20230315)
pct7 (bonus; due 20230315)
wcp7 (due 20230315)
pct8 (due 20230322)
wcp8 (due 20230322)
cnv0 (due 20230323)
ngf3 (due 20230329)
pct9 (bonus; due 20230329)
wcp9 (due 20230329)
bwp2 (bonus; due 20230412)
gfo1 (due 20230412)
pctA (due 20230412)
usr0 (due 20230412)
wcpA (due 20230412)
pbx1 (due 20230419)
pctB (bonus; due 20230419)
wcpB (due 20230419)
ngf4 (due 20230426)
pctC (due 20230426)
wcpC (due 20230426)
pbx2 (due 20230503)
pctD (bonus; due 20230503)
wcpD (bonus; due 20230503)
gfo2 (due 20230510)
pctE (bonus; due 20230510)
wcpE (bonus; due 20230510)
EoCE (due 20230518)
haas:spring2023:unix:projects:timeonline

Corning Community College

CSCS1730 UNIX/Linux Fundamentals

~~TOC~~

Project: TIMEONLINE

Objective

To employ your growing shell script abilities in calculating a user's time spent online (on lab46) for the semester.

Project

I would like you to write a script that:

  • accepts a user:
    • via command-line
    • via input (if there is nothing on the command-line, prompt the user to enter one)
  • verifies provided user is a valid user
    • in the case of an invalid user, display an error message and exit
  • calculates the time on-line for said user for the months of August, September, October, November, and December.
    • be sure these values are displayed somewhere in the script's output (both broken out by month, and total for semester)
    • determine total resulting time in days, hours, and minutes.
  • display data in the form of a histogram, with one line per month, visualizing the number of logins
    • you may scale it accordingly to better fit on a standard size terminal
    • be sure to show the total number of logins for that month

Example output may look something like:

lab46:~/src/unix/timeonline$ ./timeonline jbob
error: no such user 'jbob' exiting ...
lab46:~/src/unix/timeonline$ ./timeonline jsmith12
Aug|**** (37)
Sep|****** (61)
Oct|******* (73)
Nov|******* (74)
Dec|** (17)

Aug: 0 days, 14 hours, 31 minutes
Sep: 2 days, 3 hours, 17 minutes
Oct: 2 days, 5 hours, 58 minutes
Nov: 3 days, 1 hour, 47 minutes
Dec: 0 days, 5 hours, 32 minutes

Total: 8 days, 7 hours, 5 minutes

Submission

Submission criteria are as follows:

  • Script is organized and easy to read
  • Indentation to enhance readability
  • Comments to explain what is going on
  • Submit on time!
  • submit using submit tool, project name timeonline
haas/spring2023/unix/projects/timeonline.txt · Last modified: 2014/12/06 14:39 by 127.0.0.1