Connect to storm.cis.fordham.edu from room 317 Keating

You will need your Fordham credentials, i.e., your Fordham email name and password. If you’ve never gotten them, point your browser at my.fordham.edu and click on the red “New user: Claim account”. Let’s assume your name is “John Smith”, so your Fordham user name is “jsmith”.

  1. Roll the wheel on the mouse, if necessary to wake up the screen at your desk. It will say
    Fordham University Access Warning.
    Press the OK button because you belong to Fordham.
  2. Then log in with your Fordham credentials, i.e., your Fordham email name and password.
    User name:
    Password:
    It will say Preparing Windows.
  3. At lower left, where it says “Type here to search”, type
    cmd
    (That’s the name of the black Microsoft command window.)
    It will say Command Prompt System
    At right, click on Open.
    It will say Microsoft Corporation. All rights reserved.
  4. Launch the “secure shell” by typing
    ssh jsmith@storm.cis.fordham.edu
    When it says “Are you sure you want to continue connecting?”, type
    yes
    When it says “jsmith@storm.cis.fordham.edu’s password”, type your temporary four-word password.
    You should now be connected to the Fedora Linux server storm.cis.fordham.edu. It will ask you to change your password. When you’re finished changing your password, try a few simple Linux command such as date or cal.

Explore the directories in storm.cis.fordham.edu:
cd, pwd, ls -l

The green
jsmith@storm:~$
or the green
jsmith@storm:~/public_html$
that keeps reappearing is the prompt. Case counts.

jsmith@storm:~$ date
jsmith@storm:~$ cal

jsmith@storm:~$ cd                (Go to your personal "home" directory on storm.cis.fordham.edu)
jsmith@storm:~$ pwd               (Make sure you arrived there.)
jsmith@storm:~$ ls -l             (See what's there.  Ignore the "total".)

jsmith@storm:~$ cd public_html    (Go down to your public_htm directory; space before public_html, with underscore _)
jsmith@storm:~/public_html$ pwd
jsmith@storm:~/public_html$ ls -l

jsmith@storm:~/public_html$ cd ..             (Go one level upstairs; space before, but not in between, the two periods.)
jsmith@storm:~$ pwd
jsmith@storm:~$ ls -l

Go on an expedition to the top of the tree of directories.

Download, compile, and execute a C++ program

“Compiler” means “translator”. Out compiler c++ will translate your C++ program into terms that storm.cis.fordham.edu can understand and execute. The compiler will place the translation into a new file named a.out.

jsmith@storm:~$ cd
jsmith@storm:~$ pwd
jsmith@storm:~$ ls -l

jsmith@storm:~$ wget https://markmeretzky.com/fordham/1600/src/dime/dime1.C
jsmith@storm:~$ ls -l
jsmith@storm:~$ cat dime1.C      (See what's in the new file dime1.C.)

jsmith@storm:~$ c++ dime1.C
jsmith@storm:~$ ls -l            (There should be a new file named "a.out".  Do not cat this file.)
jsmith@storm:~$ ./a.out          (Execute the a.out file in the current directory.)

jsmith@storm:~$ ./a.out > dime1.txt     (Execute the a.out file and deposit its output into dime1.txt)
jsmith@storm:~$ ls -l            (See if there's a new file named "dime1.txt" in the current directory.)
jsmith@storm:~$ cat dime1.txt    (See what's in the new file dime1.txt.)

How to see more than one screenful of error messages from c++

jsmith@storm:~$ c++ badprog.C
(too many error messages from c++ to see all of them on the screen)
jsmith@storm:~$ c++ badprog.C 2> errorfile
jsmith@storm:~$ ls -l            (See if there's a new file named "errorfile" in the current directory.)
jsmith@storm:~$ more errorfile   (Press Enter Enter Enter …)

See the C++ program and its output on the web

jsmith@storm:~$ cd
jsmith@storm:~$ pwd
jsmith@storm:~$ ls -l

jsmith@storm:~$ cp dime1.C public_html      (Copy the file dime1.C into your public_html directory.)
jsmith@storm:~$ cp dime1.txt public_html    (Copy the file dime1.txt into your public_html directory.)

jsmith@storm:~$ cd public_html
jsmith@storm:~$ pwd
jsmith@storm:~$ ls -l                       (Are there two new files in the public_html directory?)

To see the two files dime1.C and dime1.txt that you just copied into your public_html directory, point your web browser at
https://storm.cis.fordham.edu/~jsmith/dime1.C
https://storm.cis.fordham.edu/~jsmith/dime1.txt
Or you can simply click on your loginname at
https://markmeretzky.com/fordham/1600/students.html

Clean up (if desired): how to remove a file

jsmith@storm:~$ cd            (Go to the directory that holds the file you want to remove, in this case your own home directory.)
jsmith@storm:~$ pwd
jsmith@storm:~$ ls -l

jsmith@storm:~$ rm dime1.txt  (Remove the dime1.txt that's in your home directory)
jsmith@storm:~$ ls -l         (Make sure the file dime1.txt is gone.)

Practice using the Linux vi (“visual”) editor

There’s even an O’Reilly book and pocket reference about vi.

jsmith@storm:~$ cd
jsmith@storm:~$ pwd
jsmith@storm:~$ ls -l

jsmith@storm:~$ wget https://markmeretzky.com/fordham/1600/src/xanadu.txt
jsmith@storm:~$ ls -l

jsmith@storm:~$ vi xanadu.txt
jsmith@storm:~$ ls -l        (Is the number of bytes in xanadu.txt different now?)

A minimal set of vi commands

When in doubt in vi, press the ESCape key in the upper left corner of the keyboard, to make sure you’re not in “insert mode”.

  1. Move the cursor around with the four arrow keys;     10G
  2. Delete individual character(s) with (lowercase) x, 4x
  3. Delete entire line(s) with (lowercase) dd, 4dd
  4. Insert character(s) with (lowercase) i (before) or a (after the cursor).
    Stop inserting with the ESCape key.
  5. Insert entire line(s) with lowercase o (below) or uppercase O (above the cursor).
    Stop inserting with the ESCape key.
  6. Write the file to disk with (lowercase) :w
  7. Quit vi with (lowercase) :q

Logging out in room 317 Keating

  1. Type
    jsmith@storm:~$ exit
    
    to log off from storm.cis.fordham.edu.
  2. Type another exit to log off from the black Microsoft cmd window.
  3. Click on the white windowpanes in the lower left corner and select “Sign out” to log off from Microsoft Windows.