User Tools

Site Tools


opus:fall2013:aforce2:start

Alexander Force's Fall 2013 Opus

CSCS1730 UNIX

The guy with the beard! I'm very Interested in anything to do with computers and music. Im curretly working towards my degree in HPC. Someday would like to run my own business along the lines of computer repair and such. I also love playing music! I listen to pretty much all forms of punk. I also listen to some metal but not interested in playing it. I love Movies and games also! I used to wanna be a game designer! Still think it would be pretty cool!

UNIX/Linux Fundamentals Journal

Aug. 30th, 2013

Learned I/O Streams

* 0 STDIN * 1 STDOUT * 2 STDERR

=Redirections=

* > OUT write * » OUT append * 2> ERR write * 2» ERR append

Sept. 4th, 2013

Learned some more basic commands

cp-copy
mv-move
rm-remove
ln-link
rm -i = are you sure
rm -f = force close
rmdir=remove directory
rm -rf=Remove all in and directory
*=Everything

Sept. 6th, 2013

Learned about permissions

R-Read
W-Write
X-Executable

Chmod=change permission

User-Group-Other

-rwx-rwx-rwx

R = 4
W = 2
X = 1

Learned About Wildcards

* 0 or more of anything
? 1 of any character
[] 1 of any enclosed
[^] do not match any of the enclosed

Sept. 11th, 2013

Learned about VI/Vim - Visual Editor

*Can Make Scripts

*Navigation

*Modification

*Etc.

Sept. 20, 2013

Learned About Regular Expressions.
  • Makes finding files and such much easier and simplified.

. match any single symbol
* 0 or more of the previous
\< match start of word
\> match end of word
(^) match the start of the line
$ match the end of the line
[] match one of the enclosed
[^] do not match any of enclosed
() grouping

Sept. 25, 2013

===Learned about loops===

for1);do

learned XTE

xte “mousemove 0 0”
xte “mouseclick 1”
xte “mousedown 1”
xte “mouseup 1”
etc.

Oct. 2nd, 2013

Learned about Arrays
Make it easier to go pixel by pixel

Oct. 4th, 2013

Learned about different scripts and programs.

Html
Bash
VbScript
php
python
java

Compiled
C
C++
Pascal
Fortran
Bcpl

Learned how to create C script

Compile > -Wall -0 “name” “name.c”
Run > ./“name”

OCT. 23rd, 2013

lab46:~$

telnet mail 25

Trying 10.80.2.17… Connected to mail.offbyone.lan. Escape character is '^]'. 220 mail.offbyone.lan ESMTP Postfix (Debian/GNU)

HELO Heaven.net

250 mail.offbyone.lan

MAIL FROM: god@heaven.net

250 2.1.0 Ok

RCPT TO: aforce2@lab46

250 2.1.5 Ok

DATA

354 End data with <CR><LF>.<CR><LF>

Subject: Hello MY Son
Hello

. 250 2.0.0 Ok: queued as 01FD218B5A

Oct. 30, 2013

using expressions to clean up

sed 's/"Fill in here"//g' |
lab46:~$ cat winter2014-20131025.html | egrep '(^<th class="ddtitle)|(^<td class="dddefault)' | sed 's/<abbr title="Primary">P<\/abbr>//g' |  sed 's/<\/td>//g' | sed 's/<\/th>//g' | sed 's/<\/a>//g' | sed 's/<td class="dddefault">//g' |  sed 's/<th class="ddtitle" scope="colgroup">//g' | sed 's/<a href="https:\/\/bssprod.corning-cc.edu\/PROD\/bwckschd.p_disp_detail_sched?term_in=201420&amp;crn_in=94002">//g' | sed 's/<img src="winter2014_files\/web_email.gif" alt="E-mail" class="headerImg" title="E-mail" name="web_email" align="middle" border="0" height="28" hspace="0" vspace="0" width="28">//g' | sed 's/<a href="https:\/\/bssprod.corning-cc.edu\/PROD\/bwckschd.p_disp_detail_sched?term_in=201420&amp;crn_in=.....">//g' | sed 's/ ()<a href="//g' | sed 's/" target="//g' | sed 's/">//g' | sed 's/<abbr title="//g' | sed 's/<\/abbr>//g' | sed '/^$/d'

MONTH Day, YEAR

This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.

As an aid, feel free to use the following questions to help you generate content for your entries:

  • What action or concept of significance, as related to the course, did you experience on this date?
  • Why was this significant?
  • What concepts are you dealing with that may not make perfect sense?
  • What challenges are you facing with respect to the course?

UNIX

Case Studies

Case Study 0x1: Archive Handling

Learned about Archives: * learned how to compress files with gzip

Used

 cp -r /var/public/unix/archives ~  

to copy to home directory.

Looking through the manual pages man gzip

 gunzip archive1.tar.gz 

unzipped this
and

 unzip archive2.zip 

worked for that file

 tar -xf arc.tar archives 

created the archive

I dont believe tar, gzip and zip are all that different just different forms of archiving.

Case Study 0x2: Unconventional Naming

Using

*

Typed:

 lab46:~/badname/exercise$ cat one* 

and it returned

 spaces, commas, two types of quotes... oh my! 

Typed:

 lab46:~/badname/exercise$ cat '???'* 

and it returned

 This file has spaces and ?'s in its name. 

Typed:

 lab46:~/badname/exercise$ cat '`ls'* 

and it returned

 will the weird filenames ever end? 

Using

 \ 

Typed:

 lab46:~/badname/exercise$ cat just\ a\ simple\ file.txt 

it returned

 Simple, but simpler without the spaces!

Typed:

 lab46:~/badname/exercise$ cat change\ my\\\ name.file 

it returned

This file has spaces and a backslash in its name.

Typed:

lab46:~/badname/exercise$ cat \*\*\*\ watch\ out\!\ \*\*\*

it returned

Care must be taken when using the '!' symbol, as it deals with history.


Its Interesting on how the “\” removes spaces and symbols such as other slashes and stars.

Using

""

Typed:

lab46:~/badname/exercise$ cat "compress \"this\" file.data"

it returned

this file has spaces and double quotes in its name.


I had to use the slashes to remove the quotes from “this”

Typed:

lab46:~/badname/exercise$ cat "#pico28903#"

it returned

laLAA... pretend this is a pico temp file.


Typed:

lab46:~/badname/exercise$ cat "( parenthesis & other odd things )"

it returned

Are we having fun yet?


Typed:

lab46:~/badname/exercise$ cat "\$USER VALUE\$" 

it returned

Watch out for those $ signs


Had to use the slashes to remove the “$”

I was able to remove “- challenge round -” with – by looking in the man pages:

lab46:~/badname/challenge$ rm -- -\ challenge\ round\ -

Case Study 0x3: The Puzzle Box


File.txt appears to be ASCII text
When using cat it says it appears to be a simple text file and contains ASCII text.
When compressed with gzip and ran with file(1) it returns

file.txt.gz: gzip compressed data, was "file.txt", from Unix, last modified: Fri Dec  6 16:06:32 2013

When compressed with the fastest speed

 gzip -1 file.txt

it returns

file.txt.gz: gzip compressed data, was "file.txt", from Unix, last modified: Fri Dec  6 16:06:32 2013, max speed

Using cat on abcd.txt returns random symbols, when running file(1) on it it returned it was a .tar file
used

 tar -xf abcd.txt 

Case Study 0x4: Unix Messaging Tools


1. lwall1 and jkosty6
2. a. jkosty6 has messages disabled.
b. Write permissions turned off.
3.a. can accept invites but cant join
b. lwall1 and jkosty6
4. c. lwall1 and jkosty6
e. Esc, S

Case Study 0x5: Web Pages

Case Study 0x6: Device Files

1.Some files in the /dev folder are:

*MAKEDEV *core *hvc4 *ppp *tty *vga_arbiter

Block:
202:1
202:2
202:3
Character:
10:1
13:32
1:5

2.Filesystems in use:
/dev/xvda1 4.0G 2.8G 996M 74% /
tmpfs 766M 0 766M 0% /lib/init/rw
udev 738M 36K 738M 1% /dev
tmpfs 766M 4.0K 766M 1% /dev/shm
/dev/xvda2 248M 11M 225M 5% /tmp
nfs:/home 2.8T 1.4T 1.5T 49% /home
nfs:/lib/mail 2.8T 1.4T 1.5T 49% /var/mail

4. crw–w—- 1 5841 5 136, 8 Dec 10 15:41 8
didn't change…

6. It does the same thing outputs it to the string except outputting it to \\tty compacts it more and outputs it to the terminal a different way. It seems to run it like a script.

7. It just displays it to the terminal. Might be useful for multiple \\terminals, for a superuser that wants to send something to multiple users.

Case Study 0x7: Scheduled Tasks


d. my bot name is mybot
e. I used .w 14830 and it told me corning's weather. It was very INTERESTING! and cool
2.

if [ `pgrep -u aforce2 python | wc -l` -eq 0 ]; then
          cd Downloads/phenny/ | ./phenny
else
 echo "I'm Running!!!"
fi

Case Study 0x8: Data Types in C

Case Study 0x9: Fun with grep

1. grep -o “coast” pelopwar.txt and the're 9 matches

Labs

Lab 0x0

* Learned was Unix was and that it was created Bell Labs in the early 1970's and just progressed from there.

* Unix is CASE sensitive!!

* Learned how to log into lab46 from home, thrugh windows and linux.

* Learned some of the command prompt, what lab46:~$ is…

- lab46 is the hostname of the system.

- The ”~” (tilde) is a representation of your home directory.

- The “$” symbol represents the end of your prompt.

- The superuser (also known as root) would have a ”#”.

* Pwd shows where you are.

* Navagation with “cd” also cd by itself will take you all the way home.

* ls lists the files in the directory

* mkdir creates directories, rmdir removes directory.

Lab 0x1

* Learned the command ls which means list, displays all the files in the directory you're in.

*Learned the command cp which means copy.

*Learned the command mv which means move.

*Learned the command rm which means remove.

*Learned the command ln which means link. ln -s creates a soft link.

*Learned the command man which followed with what your looking will open up the manual for that topic.

Lab 0x2

/bin - Essential basic tools for normal system usage
/etc - Configuration files
/home - Location of the system's user directories
/lib, - /lib64, /lib32 Contains important system libraries
/mnt - Common place to mount additional filesystems
/root - The superuser's home directory
/sbin - Essential system administration utilities
/tmp - Temporary directory
/usr - Additional (secondary) system functionality & userspace tools
/var - Misc. items (mail files & databases)

pwd prints working directory.

Lab 0x3

*Learned about cat, head and tail commands
*cat - concatenate files and print on the standard output
*head -16 then filename would show the first 16 lines in the file.

To enter insert mode, one of the following commands can be used:
i insert before cursor
o insert line below
O insert line above
a insert after cursor
To exit insert mode and return to command mode, hit the escape (ESC) key once.

When in command mode, you may use the following to alter the current file:
:wq save and exit
:w save the file
:q! quit without saving
ZZ quit and save only if changed

Lab 0x4

*Kernel - the core of the OS. It handles everything- manages I/O, etc.
*Drivers - components that instruct the kernel how to function or deal with a piece of hardware.
*Userspace - non-kernel level. System applications, utilities, files. Users exist here, hence the name “user space”

Control Code - System Code - Description:
CTRL-C - INTR - interrupt
CTRL-D - EOF - issue end of file character
CTRL-G - sound bell
CTRL-H - BS - send backspace
CTRL-J - LF - send linefeed
CTRL-L - refresh screen
CTRL-M - CR - send carriage return
CTRL-Q - XON - start code*
CTRL-S - XOFF - stop code*
CTRL-V - escape the following character
CTRL-Z - SUSPEND - suspend current job
CTRL-[ - ESC - send escape character

*ls -a shows hidden files called dotfiles

dotfile - description
.bash_profile - The first personal initialization file bash searches
.bashrc - Session personalization file called by .bash_profile
.cshrc - A personal initialization file for the csh/tcsh shells
.exrc - A configuration file for vi/ex
.signature - Text file containing a signature banner for e-mail
.plan - A personal banner file that is displayed on finger(1) lookups
.forward - A file used in automatic e-mail forwarding
.pinerc - A configuration file for pine
.vimrc - A configuration file for vim

*The .bash_history file shows all of you bash history. All the commands you have entered in the past.

Common Environmental Variables Which are identified with $ and ALL CAPS

 
  $PATH
  $HOSTNAME
  $USER
  $TERM
  $SHELL

Personal Variables are distinguished with lower-case letters.

SHELL=/bin/bash
MAIL=/home/aforce2/Maildir
TERM=xterm
PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:/usr/local/java/bin

echo $PATH

alias ls='ls –color=auto'

Removing the alias removed the color from the ls command.

Lab 0x5: More UNIX Shell Explorations

1. b/home/aforce2/shell
d.

lab46:~/shell$ touch file1 file2 file3 file4 filea file1234 fileZZZ file41


2. \\b.

lab46:~/shell$ ls file* 
file1  file1234  file2  file3  file4  file41  fileZZZ  filea 


d.

 ls file? 

outputs only the names with one character after the word file.
f.It lists file2 and file3 because the search ask's for only a 2 or 3 character after file.
h. lists File2 file4 file41 and filea because the search tels it to search file following either a 2, 4 or an a following anything.
3. \\b.File1 now returns the message of the day! \\d. File1 changed into “-This is text-”
4.
b. It changed into More text…
d. This put file1 and file1234 into file2. This happened because file* is file with anthing after it and file1 were redirected into file2.
5.
b.

lab46:~/shell$ ls file555
ls: cannot access file555: No such file or directory


d.The error didn't go away because the file555 doesn't exist.
f. The error went away because of the STDERR redirection operator.
g. This just used STDIN with cat into file 2

7.
b.

 lab46:~/shell$ echo $PATH 
/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:/usr/local/java/bin 


d. nothing changed because it means the same thing.
f. The '' Meant literal string
8. \\a. wc is word count
b. wc -l
9.
b.

cat /etc/motd | wc -l 


c. 19 lines
10.
a. ls ????
b. ls [amf]* and 13
c. ls [abc]*[rst] and 5
11.

 lab46:/var/public/unix/shell$ cat 'Long File $PATH for Shell Lab.text'
Good work! You're done! 

Lab 0x6: Shell Scripting Concepts

1. a.ls -l shows the permissions
b. -rw-r–r–
c. \ d. chmod 744 script1.sh
e. It ran!
2.

 echo "Enter your birth year"                                                       
read birth

let age=2013-$birth

echo $age
1)
i=0;i<10;i++
opus/fall2013/aforce2/start.txt · Last modified: 2014/01/19 07:56 by 127.0.0.1