Unix and SSH Commands From Scratch

Tuesday, April 19th, 2011

In my last post I discussed node.js. This can be installed on a server. Originally I wanted to talk through how I installed Node.js and what plugins I have come to use. I took a look around and found a few ppl struggling with ssh. I figured best to cover some of the basics of server based commands first. I expect any one reading this have some Technical/Programming experience.

I am going to assume you have a sever and are working from a Unix based machine(Linux or OSX).

Accessing your server:

[shell]ssh usr@host[/shell]

usr: would be your user name to the server for the sake if this example lets say your user name is peter

host: is your server url/ip lets say for this example its Watson.com

so in your command window type in your server details press enter:

[shell]#these are fake details use your user name and server in their place
ssh peter@watson.com[/shell]

Enter you password and you should be in.

Basic Commands:

Here is a list of basic commands to help you move around the folders and manipulate the files.


[shell]
#this is how you comment if you where to write a script file
ls
[/shell]

Type that and it will list all the files and folders


[shell]ls -a[/shell]

That will show all the hidden files too.


[shell]cd somefolder/[/shell]

Primary navigation command.


[shell]cd ..[/shell]

goes up a folder.


[shell]cd folderName[/shell]

navigates to the folder with the name folderName


[shell]cd ~[/shell]

Takes you to your home directory.


[shell]mkdir newDirName[/shell]

creates a directory


[shell]cp txtFile.txt somefolder/copyOfFile.txt[/shell]

copies file.txt to someFolder and renames the file.


[shell]mv txtFile.txt somefolder/copyOfFile.txt[/shell]

moves file.txt to someFolder and renames the file.


[shell]rm txtFile.txt[/shell]

deletes txtFile.txt


[shell]touch newTextFile.txt[/shell]

touch creates the file with no content


[shell]top[/shell]

Displays resources and process


Downloading

[shell]wget http://www.google.co.uk/index.html[/shell]
wget downloads a file at a location the above line downloads googles index.html page


[shell]git clone https://github.com/joyent/node.git[/shell]
git clone will clone a git repository to your current location


[shell]svn checkout http://as3-youtube-data-api.googlecode.com/svn/trunk/ as3-youtube-data-api-read-only[/shell]

svn checkout checks out a svn repo


Editors
You will edit a lot of text files on server a far bit. So I will list 3 Degrees of editors.

Easy

[shell]pico textFile.txt[/shell]

this one is easy all shortcuts (^ is ctrl) are listed at the bottom but not as powerful as the other two.

Medium

[shell]vi  textFile.txt[/shell]

this is obviously more powerful than pico but to achieve that it uses states when u start you can’t type you need to enable typing. This is just a taster of how to use it. There are entire pages on the web that list all the shortcuts.

i
press i when u are not in edit mode and it will insert the cursor to allow you to type

press ESC then :wq
esc enters command mode w stands for write and q stands for quite so save and exit

press ESC then :q!
quit with out saving

Hard

[shell]vim  textFile.txt[/shell]

best text editor i could write a whole post on it. If you wana use google it.

Compiling Code
In Unix you can tailer a build for your system. so its compiled for you and you alone 🙂 Lets say you downloaded a project from the internet using git or svn.

Complete in order below

cd
to the location of the files

[shell]./configure[/shell]

set settings in the build for your machine its automated it just does it


[shell]make[/shell]

compiles your code

[shell]make check[/shell]

tests the compile

[shell]make install[/shell]

installs your compiled code

[shell]make clean[/shell]

Removes all the compiled files and cleans up for you

Comming soon 🙂 sudo pico /etc/motd

Leave a Reply

Your email address will not be published. Required fields are marked *