unix for developers
Post on 19-Aug-2014
416 Views
Preview:
DESCRIPTION
TRANSCRIPT
*nix for developerspart 1
@mitemitreskihttp://www.mitemitreski.com/
8.April.2014tricode talks
Agenda
Short historyOverview of var commands Demo of simple use cases
Short history
● Ken Thomson● Dennis Ritchie
● unix like systems 1969● official release 1979
"...the number of UNIX installations has grown to 10, with more expected..."
- Dennis Ritchie and Ken Thompson, June 1972
Linux
RMS and GNU/Linux
All the flavours
● Multiprocess● Multi-user● Timesharing● Different command between flavours
Start-up
init tab systemvcrondhttp://en.wikipedia.org/wiki/Init
Runlevel
>runlevel
Operating System Default runlevel
AIX 2
CentOS 3 (console/server) or 5 (graphical/desktop)[5]
Debian 2[6]
Gentoo Linux 3[7]
Mac OS X 3
Mandriva Linux 3 (console/server) or 5 (graphical/desktop)
Red Hat Enterprise Linux / Fedora 3 (console/server) or 5 (graphical/desktop)[8]
Solaris 3[9]
Ubuntu (Server and Desktop) 2[6]
Cron and crontab00 20 * * * /home/oracle/scripts/export_dump.shCron expressions ( * / , -)
# * * * * * command to execute# ┬ ┬ ┬ ┬ ┬# │ │ │ │ │# │ │ │ │ │# │ │ │ │ └───── day of week (0 - 7) (0 to 6 are Sunday to Saturday, or use names; 7 is Sunday, the same as 0)# │ │ │ └────────── month (1 - 12)# │ │ └─────────────── day of month (1 - 31)# │ └──────────────────── hour (0 - 23)# └───────────────────────── min (0 - 59)
Entry Description Equivalent to
@yearly (or @annually) Run once a year at midnight in the morning of January 1 0 0 1 1 *
@monthly Run once a month at midnight in the morning of the first day of the
month
0 0 1 * *
@weekly Run once a week at midnight in the morning of Sunday 0 0 * * 0
@daily Run once a day at midnight 0 0 * * *
@hourly Run once an hour at the beginning of the hour 0 * * * *
@reboot Run at startup @reboot
Crontab
Terminals
ttytelnetdsshd
http://en.wikipedia.org/wiki/Computer_terminal
All the different shells
SHsh, csh, ksh, zsh, bashoh my zshBean shellpython java#!/bin/bash
Bash
bashbashrcbash_profile/etc bash related.bash_history
List
ls -alfls -r
pwd/who/whoami
mite tty7 :0 09:55 6:42m 5:55 4.16s i3mite pts/0 :0 16:34 7.00s 0.06s 0.00s wmite pts/2 :0 14:52 2:23 0.23s 0.11s ssh mkooijman@amsjoslpe11mite pts/3 :0 16:35 55.00s 0.32s 7:19 gnome-terminal
cat and tac + basic streams
>>>1>2> 2>12>&1|
0 Standard input STDIN_FILENO stdin
1 Standard output STDOUT_FILENO stdout
2 Standard error STDERR_FILENO stderr
ln and mv and rm
-f-r
Important folders/usr/bin/usr/bin//dev/null/opt/var/tmp/home/proc
http://www.cs.duke.edu/csl/docs/sysadmin_course/sysadm-72.html
Processes
> ps -e> ps -f> ps -ef> ps axvf(interactive)>top>htop
Kill and Killall
>kill PID>killall NAME>kill -9 PID>killall -9 NAME
Job control & Run the command in the background > long_cmd &CTRL-Z Stop the foreground process [Ctrl-z] Stoppedjobs List background processes > jobs%n Refers to the background number n > fg %1bg Restart a stopped background process > bg [2] big_job &fg Bring a background process to the foreground > fg %1kill Kill a process > kill %2CTRL-D logoutCTRL-S, CTRL-Q (scroll lock)
>find
http://en.wikipedia.org/wiki/Find
find . -name 'my*'find . -iname 'my*'find . -name '*.mp3' -exec chmod 644 {} \;
>wget or GNU wget
>wget http://www.example.com/>wget --no-check-certificate https://www.example.com/
>curl
>curl http://www.google.com>curl -L http://www.google.com>curl -o mygettext.html http://www.gnu.org/software/gettext/manual/gettext.html
Xargs
find . -iname ‘*.php’ -print0 | xargs -0 svn add
Navigation and customization
Shift + page up/downCtrl + Rvar customizations
Credits
Wikimedia foundation for the images used
top related