I'm the guy with the beard. Love punk/rock music. Play bass guitar! I love video games such as battlefield. Im in the HPC program.
STDIN - Keyboard
STDOUT - Terminal
STDERR - Terminal
Printf(“”);
Fprintf(stdout,“___”); == What Printf does.
00000000 = 0
11111111 = 255
0-255 = 256 unique values
Printf format specifiers
%d = signed int
%v = unsigned int
%c = ASCII character(char)
%s = array of character(string)
%f = floating point
%lf = double
%lu = unsigned long int
%hu = unsigned half/short int
%hhu = unsigned half half int
%x = hexidecimal
%X = hexidecimal
0x00 = hexidecimal number
binary = 0,1
octal = 0-7
decimal = 0-9
hexidecimal = 0-9a-f
Hexidecimal | Octal | Unsigned Decimal | Binary | Signed Decimal |
---|---|---|---|---|
0 | 00 | 00 | 0000 | +0 |
1 | 01 | 01 | 0001 | +1 |
2 | 02 | 02 | 0010 | +2 |
3 | 03 | 03 | 0011 | +3 |
4 | 04 | 04 | 0100 | +4 |
5 | 05 | 05 | 0101 | +5 |
6 | 06 | 06 | 0110 | +6 |
7 | 07 | 07 | 0111 | +7 |
8 | 10 | 08 | 1000 | -8 |
9 | 11 | 09 | 1001 | -7 |
A | 12 | 10 | 1010 | -6 |
B | 13 | 11 | 1011 | -5 |
C | 14 | 12 | 1100 | -4 |
D | 15 | 13 | 1101 | -3 |
E | 16 | 14 | 1110 | -2 |
F | 17 | 15 | 1111 | -1 |
UD | B | SD |
---|---|---|
low : 0 | low:0000 | low:-8 |
high : 15 | high:1111 | high:+7 |
qty : 16 | qty:10000 | qty:16 |
MSB - Sign Bit
0 - +
1 = -
Two's Complement:
0001
to\\
1110 #invert
+ 1 #add one
1111
01111111
0x7F
10000000
0x80
Mental Math
2 digit numbers end in 5
15^2 = 225\
square second number 1|5^2
25
time 1st number by next number up
1*2=2
=225
int input; #variable
printf(“Enter Value:”);
Scanf(“%d”,&input); #address oaddress of
for(i=0; i<=strlen(input); i++)
for loop
for(i=13, i>2, i-=3)
i-=3 means i = i - 3
while - top-driven loop - 0 or more times
do while - bottom-driven loop - 1 or more times
while(condition) - no semi colon
{
do stuff
}
do
{
do stuff
}while(condition); always does one loop first
return type - int main(int argc, char **argv)
{
int x=4;
x = square(x);
return(0);
}
y = f(x) - X is a parameter
==Function Prototype== - int square(int);
look into recursion!
fgetc(stdin); = Gets Rid Of Enter As A Input! For Char Inputs!
printf(“%.4hhd - the four leaves to blank spaces before the output the . makes the spaces zero. if it was a -4 the two spaces would be after the output. hhd means half of a half of an integer - char.
a = 41
b = 4
printf(”%.*hhd\n“,b,a); The b allows 4 zeros before the 41 because b is set to 4, variable, can change!!
==Learning More With Arrays!!
Look at program array1
#include<stdio.h> int main() { int i, scores[8], sum = 0, total; float average; printf("How big is the array?"); scanf("%d",&total); scores=(int*)malloc(sizeof(int)*total); for(i=0;i<total;i++) { printf("Enter Test Score %d/%d: ",(i+1),total); scanf("%d",(scores+i)); } for(i=0;i<total;i++) { sum = sum + *(scores+i); // or scores[i] } average = sum/total; printf("average is: %3.2f\n",average);
gcc - C - .c
g++ - C++ - .C, .cc, .c++, .cpp
look in terminal for c++ starting program.
printf(“Hello, World!\n”); in C
std :: cout « “Hello, World!” « endl; in C++
scanf(”%d“ , &a); in C
cin » a; in C++
to use cin and cout MUST INCUDE #include<iostream>
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:
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:
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:
wiki.debian.org/Xen
ssh root@10.80.2.180
aptitude update aptitude upgrade aptitude search "VIM" , "Xen"- example aptitude install
hypervisor - kernel - user space
uname -a
install VIM and xen-linux-system
used Xen wiki to make Xen boot first!
vi /etc/network/interfaces
changed files according to Xen wiki
vi /etc/default/xendomains
do guest behaviour changes
restart server,
reboot
login run
xm list
xen-create-image --verbose --hostname=test --dhcp --vcpus=2 --pygrub --dist=wheezy --force
ssh root@10.80.2.197
== sign into my VM after ssh into lab46
Got the virtual machines up and running, had memory problem… Changed some of the ram sticks around and found the culprit and swapped it. The computer is up and running again. Re-created VM's!
Working with Virtual Machines, Mine being alex1. Installing packages such as Vim, bsdgames, etc. Learned how to run visual programs such as yahtzee by starting from the pod and running:
pod02:~$ ssh -X root@10.80.2.197
Created shortcuts in .bashrc such as
alias aps='aptitude search' alias api='aptitude install' alias apud='aptitude update' alias apug='aptitude upgrade'
Created Blackbeard User. Made The .vimrc and edited it.
Changed root@10.80.2.197 to root@vm04 for my sign on.
Creating Servers and Blogs Using Nginx and pybloxsom
Finally Got My Blog Up And Running!!! Figured Out The Flavours And Have The Nice 1024px! Check out http://vm04/cgi-bin/pyblosxom.cgi
Learned to create passwordless logins!!
Learned to take dumps in a new way!!
scp id_rsa.pub root@backup01:alex - copied to my root directory
cat alex » .ssh/authorized_keys - put my user into authorized keys
chmod 600 authorized_keys - changed permissions
cat authorized_keys - view the key
Continued taking dumps!!
dump -0uan -f - / | gzip -9 | ssh root@backup01 “dd of=blackbeard.dump.gz”
xm create - alex1 or wilson - Starting VM
blackbeard@router.projects.lan - arg
the type “su” to become root.
Then “screen -x” to join screen session.
Subnetcalc
on lab46
%s/252/192/ will change all the 252's into 192 in the vi.
4yy copy 4 lines in vi.
cw replaces text in vi.
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.
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\ -
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
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
My URL:
http://lab46.corning-cc.edu/~aforce2/cs.html
My EX0 URL:
http://lab46.corning-cc.edu/~aforce2/ex0.html
My Page Made From Scratch:
http://lab46.corning-cc.edu/~aforce2/alexspage.html
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.
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
1. grep -o “coast” pelopwar.txt and the're 9 matches
* 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.
* 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.
/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.
*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
*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.
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!
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