Monday, September 27, 2010

Get familiar with the VIM editor

Get familiar with the VIM editor

This text will provide you information about the Linux / Unix vi text editor and it's options.


SYNTAX

vi [ -| -s ] [-l] [-L] [-R] [ -r [ filename ] ] [-S] [-t tag] [-v] [-V] [-x] [-w] [-n ] [-C] [+command | -c command ] filename

- | -s Suppress all interactive user feedback. This is useful when processing editor scripts.

-l Set up for editing LISP programs.

-L List the name of all files saved as the result of an editor or system crash.

-R Readonly mode; the readonly flag is set, preventing accidental overwriting of the file.

-r filename Edit filename after an editor or system crash. (Recovers the version of filename that was in the buffer when the crash occurred.)

-S This option is used in conjunction with the -t tag option to tell vi that the tags file may not be sorted and that, if the binary search (which relies on a sorted tags file) for tag fails to find it, the much slower linear search should also be done. Since the linear search is slow, users of large tags files should ensure that the tags files are sorted rather than use this flag. Creation of tags files normally produces sorted tags files. See ctags for more information on tags files.

-t tag Edit the file containing the tag, tag, and position the editor at its definition.

-v Start up in display editing state using vi . You can achieve the same effect by simply typing the vi command itself.

-V Verbose. When ex commands are read by means of standard input, the input will be echoed to standard error. This may be useful when processing ex commands within shell scripts.

-x Encryption option; when used, vi simulates the X command of ex and prompts the user for a key. This key is used to encrypt and decrypt text using the algorithm of the crypt command. The X command makes an educated guess to determine whether text read in is encrypted or not. The temporary buffer file is encrypted also, using a transformed version of the key typed in for the -x option. If an empty encryption key is entered (that is, if the return key is pressed right after the prompt), the file will not be encrypted. This is a good way to decrypt a file erroneously encrypted with a mistyped encryption key, such as a backspace or undo key.

-wn Set the default window size to n. This is useful when using the editor over a slow speed line.

-C Encryption option; same as the -x option, except that vi simulates the C command of ex . The C command is like the X command of ex , except that all text read in is assumed to have been encrypted.

+command | -c command Begin editing by executing the specified editor
command (usually a search or positioning command).
filename The file to be edited.


USER COMMANDS

Arrow keys Move cursor

hjkl Same as arrow keys

itextESC Insert text

cwnewESC Change word to new

easESC pluralize word (end of word; append s; escape from input state)

x delete a character

dw delete a word

dd delete a line

3dd deletes 3 lines

u undo previous change

ZZ exit vi , saving changes

:q!CR quit, discarding changes

/textCR search for text

^U ^D scroll up or down

:cmdCR any ex or ed command

ESC end insert or incomplete command

DEL (delete or rubout) interrupts

:wCR write back changes

:w!CR forced write, if permission originally not valid

:qCR quit

:q!CR quit, discard changes

:e nameCR edit file name

:e!CR reedit, discard changes

:e + nameCR edit, starting at end

:e +nCR edit, starting at line n

:e #CR edit alternate file

:e! #CR edit alternate file, discard changes

:w nameCR write file name

:w! nameCR overwrite file name

:shCR run shell, then return

:!cmdCR run cmd, then return

:nCR edit next file in arglist

:n argsCR specify new arglist

^G show current file and line

:ta tagCR position cursor to tag

F forward screen

^B backward screen

^D scroll down half screen

^U scroll up half screen

nG go to the beginning of the specified line (end default), where n is a line number

/pat next line matching pat

?pat previous line matching pat

n repeat last / or ? command

N reverse last / or ? command

/pat/+n nth line after pat

?pat?-n nth line before pat

]] next section/function

[[ previous section/function

( beginning of sentence

) end of sentence

{ beginning of paragraph

} end of paragraph

% find matching ( ) or { }

^L clear and redraw window

^R clear and redraw window if ^L is -> key

zCR redraw screen with current line at top of window

z-CR redraw screen with current line at bottom of window

z.CR redraw screen with current line at center of window

/pat/z-CR move pat line to bottom of window

zn.CR use n-line window

^E scroll window down one line

^Y scroll window up one line

`` move cursor to previous context

\'\' move cursor to first non-white space in line

mx mark current position with the ASCII lower-case letter x

`x move cursor to mark x

\'x move cursor to first non-white space in line marked by x

H top line on screen

L last line on screen

M middle line on screen

+ next line, at first non-white space character

- previous line, at first non-white space character

CR return, same as +

down-arrow or j next line, same column

up-arrow or k previous line, same column

^ first non-white space character

0 beginning of line

$ end of line

l or -> forward

h or <- backward

^H same as <- (backspace)

space same as -> (space bar)

fx find next x

Fx find next x

tx move to character following the next x

Tx move to character following the previous x

; repeat last f, F, t, or T

, repeat inverse of last f, F, t, or T

n| move to column n

% find matching ( ) or { }

w forward a word

b back a word

e end of word

) to next sentence

} to next paragraph

( back a sentence

{ back a paragraph

W forward a blank-delimited word

B back a blank-delimited word

E end of a blank-delimited word

^H erase last character (backspace)

^W erase last word

erase your erase character, same as ^H (backspace)

kill your kill character, erase this line of input

\\ quotes your erase and kill characters

ESC ends insertion, back to command mode

CTRL-C interrupt, suspends insert mode

^D backtab one character; reset left margin of autoindent

^^D caret (^) followed by control-d (^D); backtab to beginning of line; do not reset left margin of autoindent

0^D backtab to beginning of line; reset left margin of autoindent

^V quote non-printable character

a append after cursor

A append at end of line

i insert before cursor

I insert before first non-blank

o open line below

O open line above

rx replace single character with x

RtextESC replace characters

d delete

c change

y yank lines to buffer

> left shift

< right shift

! filter through command

C change rest of line (c$)

D delete rest of line (d$)

s substitute characters (cl)

S substitute lines (cc)

J join lines

x delete characters (dl)

X delete characters before cursor dh)

Y yank lines (yy)

3yy yank 3 lines

3yl yank 3 characters

p put back text after cursor

P put back text before cursor \" .nr )I xp\"n

put from buffer x \" .nr )I xy\"n

yank to buffer x \" .nr )I xd\"n

delete into buffer x

u undo last change

U restore current line

. repeat last change \" .nr )I dp\"n

retrieve d\'th last delete

Linux: How to check the hardware

Linux: How to check the hardware

I've noticed there are no good tutorials on how to check what hardware you have installed on your machine. In Linux there are many ways doing this so it's not an issue but you have to know the needed commands.

I'll start step by step checking different devices on your computer but there is a tool wich shows all so if you don't want to read much just scroll down to the lshw command.

Check on the CPU:

Here is the command that will help you to see what CPU you have installed:

root@Linux ~# cat /proc/cpuinfo

This will print the whole needed information for your CPU. Here is an example:

processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 2
model name : Intel(R) Celeron(R) CPU 2.40GHz
stepping : 9
cpu MHz : 2400.485
cache size : 128 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe up pebs bts cid xtpr
bogomips : 4805.18
clflush size : 64

Checking VGA, LAN and wireless adapters, chipset etc:

root@Linux ~# lspci

Example result:

00:00.0 Host bridge: Intel Corporation 82865G/PE/P DRAM Controller/Host-Hub Interface (rev 02)
00:02.0 VGA compatible controller: Intel Corporation 82865G Integrated Graphics Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev c2)
00:1f.0 ISA bridge: Intel Corporation 82801EB/ER (ICH5/ICH5R) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801EB/ER (ICH5/ICH5R) IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02)
01:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

Checking the hard drives:

root@Linux ~# fdisk -l

Example:

isk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x90909090

Device Boot Start End Blocks Id System
/dev/hda1 1 13 104391 83 Linux
/dev/hda2 14 139 1012095 82 Linux swap / Solaris
/dev/hda3 140 9729 77031675 83 Linux

lshw

The easiest way to check all the hardware installed on your box is the lshw command.

Using this command you can see all the hardware. Use the update manager of your distribution to install it if the command line says that the command doesn't exist. The package name is lshw as well.

root@Linux ~# lshw

I won't paste an example for this command since the result is always too huge but it lists everything you need to know.

I hope it was helpful.

How To Check Which Port Is Listening or Open on Linux

How To Check Which Port Is Listening or Open on Linux

For some security reason you may configure SSH or any other protocol using different kind of port number on Linux server. Sometimes it?s important to know which ports are actually listen or open to the system network, it may open for network instruction or hacking.

Basically there are few methods to see which ports are open on Linux.

Option 1:
Check /etc/services file
planetmy:/ # cat /etc/services | grep xxx (xxx = port number)

If the command return no output mean no port configure to listen on the particular port number. For port SSH/22, you should be able to see:
ssh 22/tcp # SSH Remote Login Protocol
ssh 22/udp # SSH Remote Login Protocol

Option 2:
Use netstat command - Print network connections, routing tables, interface statistics, masquerade connections, and multi cast memberships.

planetmy:/ # netstat -nan | grep 22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 7110/sshd

If the command output return ?LISTEN?, mean the particular port is open or listen on network.

Option 3:
use lsof command - list open files

planetmy:/ # lsof -i -n -P|grep 631
cupsd 17934 lp 0u IPv4 56540196 TCP *:631 (LISTEN)
cupsd 17934 lp 2u IPv4 56540197 UDP *:631

Option 4:
use nmap command - Network exploration tool and security scanner

planetmy:/ # nmap -sS -O 192.168.1.2
Starting nmap 3.50 ( http://www.insecure.org/nmap/ ) at 2008-09-12 10:13 GMT
Interesting ports on 192.168.1.2:
(The 1655 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
427/tcp open svrloc
631/tcp open ipp
Device type: general purpose
Running: Linux 2.4.X|2.5.X
OS details: Linux Kernel 2.4.0 - 2.5.20, Linux Kernel 2.4.18 - 2.5.70 (X86)
Nmap run completed ? 1 IP address (1 host up) scanned in 4.146 seconds

The output show the system is running SSH on port 22.

Option 5:
use telnet command - user interface to the TELNET protocol

planetmy:/ # telnet 192.168.1.2 22
Trying 192.168.1.2?
Connected to 192.168.1.2.
Escape character is ?^]?.
SSH-1.99-OpenSSH_4.2

The output show as above mean SSH port 22 is listening on the network

planetmy:/ # telnet 192.168.1.2 122
Trying 192.168.1.2?
telnet: connect to address 192.168.1.2: Connection refused

The output show as above mean port 122 is closed.

Thanks to:
http://www.freecodeclub.com/

Setting Up Your Own Station: A Free Radio Under Linux HowTo

Setting Up Your Own Station: A Free Radio Under Linux HowTo

1. Introduction

So, you want to create your own radio station, don’t you? This manual will help you become a DJ.

2. System Requirements

Minimal requirements for radio broadcasting through your own computer, most of which you are already aware of:

*

150 MHz processor, or better
*

32 MB RAM
*

cable, DSL, or any other kind of broadband internet

and a little free hard disk space for mp3s (which you are going to play).

OS:

*

Some up-to-date Linux distribution, kernel 2.2 or newer.

Software:

*

XMMS 1.2.x http://www.xmms.org/
*

LAME v3.x http://www.sulaco.org/mp3
*

Icecast 1.3.x http://www.icecast.org/
*

Liveice-XMMS. http://star.arm.ac.uk/~spm/software/liveice.html

If using Debian, you can also use:

apt-get install xmms icecast-server

to install xmms and Icecast server. According to LAME, you can use a program called Alien, to convert RPM pack into Debian pack. All you have to do is:

apt-get install alien

and then, as root:

alien package.rpm

to create .deb which you can install, using

dpkg –i

where the name of the Debian package is.

3. Installation

The installation should be rather right-minded. You already should have all packages you need, in order to make things work. If compiling from source, then you should compile and install the software as it is described in its documentation.

If using RedHat, or any of its relative ones you can search for RPM, and download and install it by

rpm –Uvh

where the name of the RPM, which you use is.

If using Debian, just write

apt-get install xmms

icecast-server

to install xmms and Icecast server. According to LAME, you can use a program called Alien, to convert RPM package into Debian package. Install it:

apt-get install alien

then you can use it as root:

alien package.rpm

and the packages can be installed by using

dpkg –i

followed by the package’s name. For example:

dpkg -i .deb

And don’t forget that you should be root to do most of the above. And now, after the installation of all programs you need we have to set them in order to work properly.

4. Configuration

First of all we should configure the Icecast server. Find the directory which contains the Icecast server configuration files (in my case it was /etc/icecast, and I suppose it’s the same if installed by RPM; if you compiled the program on your own, then you are prepared well enough to know where the settings should be) and there you should have many “.dist”-files. Now rename all that files by deleting the “.dist” part. For example if the file name is “icecast.conf.dist” the new one should be “icecast.conf”. If there are no more “.dist”-files then you are doing well.

Now open icecast.conf with your favorite editor. The configuration is rather right-minded and simple, but anyway I’ll guide you through it. Near the beginning of the file you’ll find location/information fields:

location Just west of Mars

rp_email kirk@enterprise.space

server_url http://www.icecast.org/

fill them with the information, that you want people to see, when visiting your web-radio-station.

The next section you have to look at is the one for the server limit:

max_clients 900

max_clients_per_source 900

max_sources 10

max_admins 5

throttle 10.0

For most of the users this is much more than enough. Just set the parameters according to the speed of your Internet connection. Probably you’ll prefer

max_clients

and

max_clients_per_source

to be set at 10, and the rest you can leave the way it is. Now go down the file while you reach:

encoder_password hackme

admin_password hackme

oper_password hackme

If installed the Icecast server under Debian, or support of encrypted passwords enabled, you should crypt the password in this file using program, called mkpasswd (which probably you already have installed on your system). To do this use:

mkpasswd --crypt

Then copy and paste the result in the file. It should look like this:

encoder_passwd --WZKu0fXj3bQ

admin_passwd --WZKu0fXj3bQ

oper_passwd --WZKu0fXj3bQ

No matter which way of installation you made, you should change the password into something else than “hackme”. In the common case the three passwords should be the same. Remember the password you use, because you will use it latter during the configuration of the Liveice-XMMS.

Go down the file again and find:

console_mode 0

change the value at 3, that way the loading will be in text mode.

Usually you don’t have to change the rest of the configuration file. The advanced users can look through the rest of the settings.

Now, let’s configure the Liveice-XMMS:

Restart the XMMS, in order to make it possible to notice that there is another plugin. Make right click on the XMMS and choose Preferences. Go to Effect/General Plugins. In the list under Effect Plugins you should find Liveince. In case you can’t find it check out the Liveice-XMMS installation. After choosing Liveince, click on Configure.

Most of these audio format settings are standard, so you won’t have to change them much. Change the “Encoder type” to ‘Lame’, and the “executable name” to ‘Lame’. If already have any version of Lame on your machine, then set the path to it. Under “Description” you can consider the exact changes by yourself.

Go to Server and change the “Encoder Password” into the one that’s written in the Icecast configuration (and I told you to remember). You shouldn't type the password in encrypted mode if you have encrypted it.

Now everything is set and ready. Click OK. Check “Use Plugins” in the dialog “Preferences”, which should still be in front of you, and click OK again.

In terminal window type ‘icecast’ and press Enter. You should see how it’s getting started and proceeds into text mode.

If you are listening to a song, stop it and play it again.

Nothing went wrong…? There wasn’t big BANG!!! I hope so!

Ask a friend to connect to your IP through XMMS or any other mp3-player at http://yourcomputer:8000 … there should be music playing! If this is not happening, check out the FAQ to solve the problem.

If everything is OK, congratulations – you are now a DJ!

5. FAQ

Make sure that Icecast works. If the problems are still there, go to the conf file, at the place where you changed console_mode to 3, and change it back to 0 (that way you can receive some debug messages). You should be connecting as source, other ways check the Liveice settings. If you are connected as ‘source’, or as ‘encoder’, and your friend is trying to connect, but you don’t receive a message for this, then the problem is not in you!

Linux advanced commands

Linux advanced commands

Command Description

apropos whatis Show commands pertinent to string. See also threadsafe

man -t man | ps2pdf - > man.pdf make a pdf of a manual page

which command Show full path name of command

time command See how long a command takes

time cat Start stopwatch. Ctrl-d to stop. See also sw

nice info Run a low priority command (The "info" reader in this case)

renice 19 -p $$ Make shell (script) low priority. Use for non interactive tasks
dir navigation

cd - Go to previous directory

cd Go to $HOME directory

(cd dir && command) Go to dir, execute command and return to current dir

pushd . Put current dir on stack so you can popd back to it

alias l='ls -l --color=auto' quick dir listing

ls -lrt List files by date. See also newest and find_mm_yyyy

ls /usr/bin | pr -T9 -W$COLUMNS Print in 9 columns to width of terminal

find -name '*.[ch]' | xargs grep -E 'expr' Search 'expr' in this dir and below. See also findrepo

find -type f -print0 | xargs -r0 grep -F 'example' Search all regular files for 'example' in this dir and below

find -maxdepth 1 -type f | xargs grep -F 'example' Search all regular files for 'example' in this dir

find -maxdepth 1 -type d | while read dir; do echo $dir; echo cmd2; done Process each item with multiple commands (in while loop)

find -type f ! -perm -444 Find files not readable by all (useful for web site)

find -type d ! -perm -111 Find dirs not accessible by all (useful for web site)

locate -r 'file[^/]*\.txt' Search cached index for names. This re is like glob *file*.txt

look reference Quickly search (sorted) dictionary for prefix

grep --color reference /usr/share/dict/words Highlight occurances of regular expression in dictionary
archives and compression

gpg -c file Encrypt file

gpg file.gpg Decrypt file

tar -c dir/ | bzip2 > dir.tar.bz2 Make compressed archive of dir/

bzip2 -dc dir.tar.bz2 | tar -x Extract archive (use gzip instead of bzip2 for tar.gz files)

tar -c dir/ | gzip | gpg -c | ssh user@remote 'dd of=dir.tar.gz.gpg' Make encrypted archive of dir/ on remote machine

find dir/ -name '*.txt' | tar -c --files-from=- | bzip2 > dir_txt.tar.bz2 Make archive of subset of dir/ and below

find dir/ -name '*.txt' | xargs cp -a --target-directory=dir_txt/ --parents Make copy of subset of dir/ and below

( tar -c /dir/to/copy ) | ( cd /where/to/ && tar -x -p ) Copy (with permissions) copy/ dir to /where/to/ dir

( cd /dir/to/copy && tar -c . ) | ( cd /where/to/ && tar -x -p ) Copy (with permissions) contents of copy/ dir to /where/to/

( tar -c /dir/to/copy ) | ssh -C user@remote 'cd /where/to/ && tar -x -p' Copy (with permissions) copy/ dir to remote:/where/to/ dir

dd bs=1M if=/dev/sda | gzip | ssh user@remote 'dd of=sda.gz' Backup harddisk to remote machine
rsync (Use the --dry-run option for testing)

rsync -P rsync://rsync.server.com/path/to/file file Only get diffs. Do multiple times for troublesome downloads

rsync --bwlimit=1000 fromfile tofile Locally copy with rate limit. It's like nice for I/O

rsync -az -e ssh --delete ~/public_html/ remote.com:'~/public_html' Mirror web site (using compression and encryption)

rsync -auz -e ssh remote:/dir/ . && rsync -auz -e ssh . remote:/dir/ Synchronize current directory with remote one
ssh (Secure SHell)

ssh $USER@$HOST command Run command on $HOST as $USER (default command=shell)

ssh -f -Y $USER@$HOSTNAME xeyes Run GUI command on $HOSTNAME as $USER

scp -p -r $USER@$HOST: file dir/ Copy with permissions to $USER's home directory on $HOST

ssh -g -L 8080:localhost:80 root@$HOST Forward connections to $HOSTNAME:8080 out to $HOST:80

ssh -R 1434:imap:143 root@$HOST Forward connections from $HOST:1434 in to imap:143
wget (multi purpose download tool)

(cd cmdline && wget -nd -pHEKk http://www.pixelbeat.org/cmdline.html) Store local browsable version of a page to the current dir

wget -c http://www.example.com/large.file Continue downloading a partially downloaded file

wget -r -nd -np -l1 -A '*.jpg' http://www.example.com/dir/ Download a set of files to the current directory

wget ftp://remote/file[1-9].iso/ FTP supports globbing directly

wget -q -O- http://www.pixelbeat.org/timeline.html | grep 'a href' | head Process output directly

echo 'wget url' | at 01:00 Download url at 1AM to current dir

wget --limit-rate=20k url Do a low priority download (limit to 20KB/s in this case)

wget -nv --spider --force-html -i bookmarks.html Check links in a file

wget --mirror http://www.example.com/ Efficiently update a local copy of a site (handy from cron)
networking (Note ifconfig, route, mii-tool, nslookup commands are obsolete)

ethtool eth0 Show status of ethernet interface eth0

ethtool --change eth0 autoneg off speed 100 duplex full Manually set ethernet interface speed

iwconfig eth1 Show status of wireless interface eth1

iwconfig eth1 rate 1Mb/s fixed Manually set wireless interface speed

iwlist scan List wireless networks in range

ip link show List network interfaces

ip link set dev eth0 name wan Rename interface eth0 to wan

ip link set dev eth0 up Bring interface eth0 up (or down)

ip addr show List addresses for interfaces

ip addr add 1.2.3.4/24 brd + dev eth0 Add (or del) ip and mask (255.255.255.0)

ip route show List routing table

ip route add default via 1.2.3.254 Set default gateway to 1.2.3.254

tc qdisc add dev lo root handle 1:0 netem delay 20msec Add 20ms latency to loopback device (for testing)

tc qdisc del dev lo root Remove latency added above

host pixelbeat.org Lookup DNS ip address for name or vice versa

hostname -i Lookup local ip address (equivalent to host `hostname`)

whois pixelbeat.org Lookup whois info for hostname or ip address

netstat -tupl List internet services on a system

netstat -tup List active connections to/from system
windows networking (Note samba is the package that provides all this windows specific networking support)

smbtree Find windows machines. See also findsmb

nmblookup -A 1.2.3.4 Find the windows (netbios) name associated with ip address

smbclient -L windows_box List shares on windows machine or samba server

mount -t smbfs -o fmask=666,guest //windows_box/share /mnt/share Mount a windows share

echo 'message' | smbclient -M windows_box Send popup to windows machine (off by default in XP sp2)
text manipulation (Note sed uses stdin and stdout, so if you want to edit files, append newfile)

sed 's/string1/string2/g' Replace string1 with string2

sed 's/\(.*\)1/\12/g' Modify anystring1 to anystring2

sed '/ *#/d; /^ *$/d' Remove comments and blank lines

sed ':a; /\\$/N; s/\\\n//; ta' Concatenate lines with trailing \

sed 's/[ \t]*$//' Remove trailing spaces from lines

sed 's/\([\\`\\"$\\\\]\)/\\\1/g' Escape shell metacharacters active within double quotes

seq 10 | sed "s/^/ /; s/ *\(.\{7,\}\)/\1/" Right align numbers

sed -n '1000p;1000q' Print 1000th line

sed -n '10,20p;20q' Print lines 10 to 20

sed -n 's/.*\(.*\)<\/title>.*/\1/ip;<acronym title="quit after match">T;q</acronym>'</td> <td>Extract title from HTML web page</td> </tr> <tr> <td> <br /></td> <td class="nw">sort -t. -k1,1n -k2,2n -k3,3n -k4,4n</td> <td>Sort IPV4 ip addresses</td> </tr> <tr> <td> <br /></td> <td class="nw">echo 'Test' | tr '[:lower:]' '[:upper:]'</td> <td>Case conversion</td> </tr> <tr> <td> <br /></td> <td class="nw">tr -dc '[:print:]' < /dev/urandom</td> <td>Filter non printable characters</td> </tr> <tr> <td> <br /></td> <td class="nw">history | wc -l</td> <td>Count lines</td> </tr> <tr id="sets" class="pbtitle"> <td colspan="3"><strong>set operations</strong> (Note you can export LANG=C for speed. Also these assume no duplicate lines within a file)</td> </tr> <tr> <td> <br /></td> <td class="nw">sort file1 file2 | uniq</td> <td><acronym title="Items in either file1 or file2">Union</acronym> of unsorted files</td> </tr> <tr> <td> <br /></td> <td class="nw">sort file1 file2 | uniq -d</td> <td><acronym title="Items both in file1 and file2">Intersection</acronym> of unsorted files</td> </tr> <tr> <td> <br /></td> <td class="nw">sort file1 file1 file2 | uniq -u</td> <td><acronym title="Items in file2 not in file1">Difference</acronym> of unsorted files</td> </tr> <tr> <td> <br /></td> <td class="nw">sort file1 file2 | uniq -u</td> <td><acronym title="Items in only one file">Symmetric Difference</acronym> of unsorted files</td> </tr> <tr> <td> <br /></td> <td class="nw">join -a1 -a2 file1 file2</td> <td>Union of sorted files</td> </tr> <tr> <td> <br /></td> <td class="nw">join file1 file2</td> <td>Intersection of sorted files</td> </tr> <tr> <td> <br /></td> <td class="nw">join -v2 file1 file2</td> <td>Difference of sorted files</td> </tr> <tr> <td> <br /></td> <td class="nw">join -v1 -v2 file1 file2</td> <td>Symmetric Difference of sorted files</td> </tr> <tr id="math" class="pbtitle"> <td colspan="3"><strong>math</strong></td> </tr> <tr> <td> <br /></td> <td class="nw">echo '(1 + sqrt(5))/2' | bc -l</td> <td>Quick math (Calculate f). See also bc</td> </tr> <tr> <td> <br /></td> <td class="nw">echo 'pad=20; min=64; (100*10^6)/((pad+min)*8)' | bc</td> <td>More complex (int) e.g. This shows max FastE packet rate</td> </tr> <tr> <td> <br /></td> <td class="nw">echo 'pad=20; min=64; print (100E6)/((pad+min)*8)' | python</td> <td>Python handles scientific notation</td> </tr> <tr> <td> <br /></td> <td class="nw">echo 'pad=20; plot [64:1518] (100*10**6)/((pad+x)*8)' | gnuplot -persist</td> <td>Plot FastE packet rate vs packet size</td> </tr> <tr> <td> <br /></td> <td class="nw">echo 'obase=16; ibase=10; 64206' | bc</td> <td>Base conversion (decimal to hexadecimal)</td> </tr> <tr> <td> <br /></td> <td class="nw">echo $((0x2dec))</td> <td>Base conversion (hex to dec) ((shell arithmetic expansion))</td> </tr> <tr> <td> <br /></td> <td class="nw">units -t '100m/9.74s' 'miles/hour'</td> <td>Unit conversion (metric to imperial)</td> </tr> <tr> <td> <br /></td> <td class="nw">units -t '500GB' 'GiB'</td> <td>Unit conversion (<acronym title="powers of 10">SI</acronym> to <acronym title="powers of 2">IEC</acronym> prefixes)</td> </tr> <tr> <td> <br /></td> <td class="nw">units -t '1 googol'</td> <td>Definition lookup</td> </tr> <tr> <td> <br /></td> <td class="nw">seq 100 | (tr '\n' +; echo 0) | bc</td> <td>Add a column of numbers. See also add and funcpy</td> </tr> <tr id="dates" class="pbtitle"> <td colspan="3"><strong>calendar</strong></td> </tr> <tr> <td> <br /></td> <td class="nw">cal -3</td> <td>Display a calendar</td> </tr> <tr> <td> <br /></td> <td class="nw">cal 9 1752</td> <td>Display a calendar for a particular month year</td> </tr> <tr> <td> <br /></td> <td class="nw">date -d fri</td> <td>What date is it this friday. See also day</td> </tr> <tr> <td> <br /></td> <td class="nw">date --date='25 Dec' +%A</td> <td>What day does xmas fall on, this year</td> </tr> <tr> <td> <br /></td> <td class="nw">date --date '1970-01-01 UTC 2147483647 seconds'</td> <td>Convert number of seconds since the epoch to a date</td> </tr> <tr> <td> <br /></td> <td class="nw">TZ=':America/Los_Angeles' date</td> <td>What time is it on West coast of US (use tzselect to find TZ)</td> </tr> <tr> <td> <br /></td> <td class="nw">echo "mail -s 'get the train' P@draigBrady.com < /dev/null" | at 17:45</td> <td>Email reminder</td> </tr> <tr> <td> <br /></td> <td class="nw">echo "DISPLAY=$DISPLAY xmessage cooker" | at "NOW + 30 minutes"</td> <td>Popup reminder</td> </tr> <tr id="locale" class="pbtitle"> <td colspan="3"><strong>locales</strong></td> </tr> <tr> <td> <br /></td> <td class="nw">printf "%'d\n" 1234</td> <td>Print number with thousands grouping appropriate to locale</td> </tr> <tr> <td> <br /></td> <td class="nw">BLOCK_SIZE=\'1 ls -l</td> <td>get ls to do thousands grouping appropriate to locale</td> </tr> <tr> <td> <br /></td> <td class="nw">echo "I live in `locale territory`"</td> <td>Extract info from locale database</td> </tr> <tr> <td> <br /></td> <td class="nw">LANG=en_IE.utf8 locale int_prefix</td> <td>Lookup locale info for specific country. See also ccodes</td> </tr> <tr> <td> <br /></td> <td class="nw">locale | cut -d= -f1 | xargs locale -kc | less</td> <td>List fields available in locale database</td> </tr> <tr id="recode" class="pbtitle"> <td colspan="3"><strong>recode</strong> (Obsoletes iconv, dos2unix, unix2dos)</td> </tr> <tr> <td> <br /></td> <td class="nw">recode -l | less</td> <td>Show available conversions (aliases on each line)</td> </tr> <tr> <td> <br /></td> <td class="nw">recode windows-1252.. file_to_change.txt</td> <td>Windows "ansi" to local charset (auto does CRLF conversion)</td> </tr> <tr> <td> <br /></td> <td class="nw">recode utf-8/CRLF.. file_to_change.txt</td> <td>Windows utf8 to local charset</td> </tr> <tr> <td> <br /></td> <td class="nw">recode iso-8859-15..utf8 file_to_change.txt</td> <td>Latin9 (western europe) to utf8</td> </tr> <tr> <td> <br /></td> <td class="nw">recode ../b64 <> file.b64</td> <td>Base64 encode</td> </tr> <tr> <td> <br /></td> <td class="nw">recode /qp.. <> file.qp</td> <td>Quoted printable decode</td> </tr> <tr> <td> <br /></td> <td class="nw">recode ..HTML <> file.html</td> <td>Text to HTML</td> </tr> <tr> <td> <br /></td> <td class="nw">recode -lf windows-1252 | grep euro</td> <td>Lookup table of characters</td> </tr> <tr> <td> <br /></td> <td class="nw">echo -n 0x80 | recode latin-9/x1..dump</td> <td>Show what a code represents in latin-9 charmap</td> </tr> <tr> <td> <br /></td> <td class="nw">echo -n 0x20AC | recode ucs-2/x2..latin-9/x</td> <td>Show latin-9 encoding</td> </tr> <tr> <td> <br /></td> <td class="nw">echo -n 0x20AC | recode ucs-2/x2..utf-8/x</td> <td>Show utf-8 encoding</td> </tr> <tr id="CDs" class="pbtitle"> <td colspan="3"><strong><acronym title="Compact Disks">CDs</acronym></strong></td> </tr> <tr> <td> <br /></td> <td class="nw">gzip < /dev/cdrom > cdrom.iso.gz</td> <td>Save copy of data cdrom</td> </tr> <tr> <td> <br /></td> <td class="nw">mkisofs -V LABEL -r dir | gzip > cdrom.iso.gz</td> <td>Create cdrom image from contents of dir</td> </tr> <tr> <td> <br /></td> <td class="nw">mount -o loop cdrom.iso /mnt/dir</td> <td>Mount the cdrom image at /mnt/dir (read only)</td> </tr> <tr> <td> <br /></td> <td class="nw">cdrecord -v dev=/dev/cdrom blank=fast</td> <td>Clear a CDRW</td> </tr> <tr> <td> <br /></td> <td class="nw">gzip -dc cdrom.iso.gz | cdrecord -v dev=/dev/cdrom -</td> <td>Burn cdrom image (use dev=ATAPI -scanbus to confirm dev)</td> </tr> <tr> <td> <br /></td> <td class="nw">cdparanoia -B</td> <td>Rip audio tracks from CD to wav files in current dir</td> </tr> <tr> <td> <br /></td> <td class="nw">cdrecord -v dev=/dev/cdrom -audio *.wav</td> <td>Make audio CD from all wavs in current dir (see also cdrdao)</td> </tr> <tr> <td> <br /></td> <td class="nw">oggenc --tracknum='track' track.cdda.wav -o 'track.ogg'</td> <td>Make ogg file from wav file</td> </tr> <tr id="disk_space" class="pbtitle"> <td colspan="3"><strong>disk space</strong> (See also FSlint)</td> </tr> <tr> <td> <br /></td> <td class="nw">ls -lSr</td> <td>Show files by size, biggest last</td> </tr> <tr> <td> <br /></td> <td class="nw">du -s * | sort -k1,1rn | head</td> <td>Show top disk users in current dir. See also dutop</td> </tr> <tr> <td> <br /></td> <td class="nw">df -h</td> <td>Show free space on mounted filesystems</td> </tr> <tr> <td> <br /></td> <td class="nw">df -i</td> <td>Show free inodes on mounted filesystems</td> </tr> <tr> <td> <br /></td> <td class="nw"><acronym title="usually in /sbin/">fdisk</acronym> -l</td> <td>Show disks partitions sizes and types (run as root)</td> </tr> <tr> <td> <br /></td> <td class="nw">rpm -q -a --qf '%10{SIZE}\t%{NAME}\n' | sort -k1,1n</td> <td>List all packages by installed size (Bytes) on rpm distros</td> </tr> <tr> <td> <br /></td> <td class="nw">dpkg-query -W -f='${Installed-Size;10}\t${Package}\n' | sort -k1,1n</td> <td>List all packages by installed size (KBytes) on deb distros</td> </tr> <tr> <td> <br /></td> <td class="nw">dd bs=1 seek=2TB if=/dev/null of=ext3.test</td> <td>Create a large test file (taking no space). See also truncate</td> </tr> <tr id="monitor" class="pbtitle"> <td colspan="3"><strong>monitoring/debugging</strong></td> </tr> <tr> <td> <br /></td> <td class="nw">tail -f /var/log/messages</td> <td>Monitor messages in a log file</td> </tr> <tr> <td> <br /></td> <td class="nw">strace -c ls >/dev/null</td> <td>Summarise/profile system calls made by command</td> </tr> <tr> <td> <br /></td> <td class="nw">strace -f -e open ls >/dev/null</td> <td>List system calls made by command</td> </tr> <tr> <td> <br /></td> <td class="nw">ltrace -f -e getenv ls >/dev/null</td> <td>List library calls made by command</td> </tr> <tr> <td> <br /></td> <td class="nw"><acronym title="usually in /usr/sbin/">lsof</acronym> -p <acronym title="process id of current shell">$$</acronym></td> <td>List paths that process id has open</td> </tr> <tr> <td> <br /></td> <td class="nw">lsof ~</td> <td>List processes that have specified path open</td> </tr> <tr> <td> <br /></td> <td class="nw">tcpdump not port 22</td> <td>Show network traffic except ssh. See also tcpdump_not_me</td> </tr> <tr> <td> <br /></td> <td class="nw">ps -e -o pid,args --forest</td> <td>List processes in a hierarchy</td> </tr> <tr> <td> <br /></td> <td class="nw">ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu | sed '/^ 0.0 /d'</td> <td>List processes by % cpu usage</td> </tr> <tr> <td> <br /></td> <td class="nw">ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS</td> <td>List processes by mem usage. See also ps_mem.py</td> </tr> <tr> <td> <br /></td> <td class="nw">ps -C firefox-bin -L -o pid,tid,pcpu,state</td> <td>List all threads for a particular process</td> </tr> <tr> <td> <br /></td> <td class="nw">ps -p 1,2</td> <td>List info for particular process IDs</td> </tr> <tr> <td> <br /></td> <td class="nw">last reboot</td> <td>Show system reboot history</td> </tr> <tr> <td> <br /></td> <td class="nw">free -m</td> <td>Show amount of (remaining) RAM (-m displays in MB)</td> </tr> <tr> <td> <br /></td> <td class="nw">watch -n1 'cat /proc/interrupts'</td> <td>Watch changeable data continuously</td> </tr> <tr id="sysinfo" class="pbtitle"> <td colspan="3"><strong>system information</strong> (see also sysinfo) ('#' means root access is required)</td> </tr> <tr> <td> <br /></td> <td class="nw">uname -a</td> <td>Show kernel version and system architecture</td> </tr> <tr> <td> <br /></td> <td class="nw">head -n1 /etc/issue</td> <td>Show name and version of distribution</td> </tr> <tr> <td> <br /></td> <td class="nw">cat /proc/partitions</td> <td>Show all partitions registered on the system</td> </tr> <tr> <td> <br /></td> <td class="nw">grep MemTotal /proc/meminfo</td> <td>Show RAM total seen by the system</td> </tr> <tr> <td> <br /></td> <td class="nw">grep "model name" /proc/cpuinfo</td> <td>Show CPU(s) info</td> </tr> <tr> <td> <br /></td> <td class="nw"><acronym title="usually in /sbin/">lspci</acronym> -tv</td> <td>Show PCI info</td> </tr> <tr> <td> <br /></td> <td class="nw"><acronym title="usually in /sbin/">lsusb</acronym> -tv</td> <td>Show USB info</td> </tr> <tr> <td> <br /></td> <td class="nw">mount | column -t</td> <td>List mounted filesystems on the system (and align output)</td> </tr> <tr> <td>#</td> <td class="nw">dmidecode -q | less</td> <td>Display SMBIOS/DMI information</td> </tr> <tr> <td>#</td> <td class="nw">smartctl -A /dev/sda | grep Power_On_Hours</td> <td>How long has this disk (system) been powered on in total</td> </tr> <tr> <td>#</td> <td class="nw">hdparm -i /dev/sda</td> <td>Show info about disk sda</td> </tr> <tr> <td>#</td> <td class="nw">hdparm -tT /dev/sda</td> <td>Do a read speed test on disk sda</td> </tr> <tr> <td>#</td> <td class="nw">badblocks -s /dev/sda</td> <td>Test for unreadable blocks on disk sda</td> </tr> <tr id="interactive" class="pbtitle"> <td colspan="3"><strong>interactive</strong> (see also linux keyboard shortcuts)</td> </tr> <tr> <td> <br /></td> <td class="nw">readline</td> <td>Line editor used by bash, python, bc, gnuplot, ...</td> </tr> <tr> <td> <br /></td> <td class="nw">screen</td> <td>Virtual terminals with detach capability, ...</td> </tr> <tr> <td> <br /></td> <td class="nw">mc</td> <td>Powerful file manager that can browse rpm, tar, ftp, ssh, ...</td> </tr> <tr> <td> <br /></td> <td class="nw">gnuplot</td> <td>Interactive/scriptable graphing</td> </tr> <tr> <td> <br /></td> <td class="nw">links</td> <td>Web browser</td> </tr> <tr id="misc" class="pbtitle"> <td colspan="3"><strong>miscellaneous</strong></td> </tr> <tr> <td> <br /></td> <td class="nw">alias hd='od -Ax -tx1z -v'</td> <td>Handy hexdump. (usage e.g.: hd /proc/self/cmdline | less)</td> </tr> <tr> <td> <br /></td> <td class="nw">alias realpath='readlink -f'</td> <td>Canonicalize path. (usage e.g.: realpath ~/../$USER)</td> </tr> <tr> <td> <br /></td> <td class="nw">set | grep $USER</td> <td>Search current environment</td> </tr> <tr> <td> <br /></td> <td class="nw">touch -c -t 0304050607 file</td> <td>Set file timestamp (YYMMDDhhmm)</td></tr></tbody></table> <br />Thanks to : <br /><span style="color: rgb(255, 0, 0);">http://www.freecodeclub.com/art-Linux_advanced_commands.php</span> <br /> <br /> <br /> <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <span itemprop='name'>Sivakumar</span> </span> </span> <span class='post-timestamp'> at <meta content='http://sivanihonjin.blogspot.com/2010/09/linux-advanced-commands.html' itemprop='url'/> <a class='timestamp-link' href='https://sivanihonjin.blogspot.com/2010/09/linux-advanced-commands.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2010-09-27T20:40:00-07:00'>9/27/2010 08:40:00 PM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://sivanihonjin.blogspot.com/2010/09/linux-advanced-commands.html#comment-form' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-action'> <a href='https://www.blogger.com/email-post.g?blogID=2916662426460066736&postID=5356671157302713903' title='Email Post'> <img alt='' class='icon-action' height='13' src='https://resources.blogblog.com/img/icon18_email.gif' width='18'/> </a> </span> <span class='item-control blog-admin pid-1067355270'> <a href='https://www.blogger.com/post-edit.g?blogID=2916662426460066736&postID=5356671157302713903&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> </div></div> <div class="date-outer"> <h2 class='date-header'><span>Thursday, September 23, 2010</span></h2> <div class="date-posts"> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='2916662426460066736' itemprop='blogId'/> <meta content='9030460699697503562' itemprop='postId'/> <a name='9030460699697503562'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='https://sivanihonjin.blogspot.com/2010/09/emacs-shorcuts.html'>Emacs shorcuts</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-9030460699697503562' itemprop='description articleBody'> C-spacebar start copying a region<br /><br />M-x end copying a region <br />C-w cut a region<br /><br /><br />C-M-\ indent-region<br /><br />Emacs keyboard shortcuts<br />FILE<br />Open Ctrl-X, Ctrl-F <br />Save Ctrl-X, Ctrl-S <br />Save As Ctrl-X, Ctrl-W <br />Save All Ctrl-X, S <br />Revert to File Ctrl-X, Ctrl-V <br />Revert Buffer Meta-X, revert-buffer <br />Close Window/Buffer Ctrl-X, K <br />Quit Ctrl-X, Ctrl-C <br /><br />EDIT<br />Undo Ctrl-_ <br />Begin Selection Ctrl-SPC <br />Cancel Selection Ctrl-G <br />Cut Selection Ctrl-W <br />Cut Line Ctrl-K <br />Paste Ctrl-Y <br />Copy Selection to Numbered Clipboard Ctrl-X R S [#] <br />Paste from Numbered Clipboard Ctrl-X R I [#] <br />Delete DEL <br />Fwd Delete Ctrl-D <br />Delete Word Meta-DEL <br />Fwd Delete Word Meta-D <br />Delete Line Ctrl-K <br /><br /><br />CURSOR MOVEMENT<br /> FORWARD BACKWARD<br />Word Meta-F Meta-B<br />Line Ctrl-A Ctrl-E<br />Paragraph Meta-{ Meta-}<br />Page Ctrl-V Meta-V<br />Document Meta-<><br />C Function Meta-Ctrl-A Meta-Control-E<br /><br /><br />SEARCH<br />Incremental Search Ctrl-S <br />Incremental Search Reverse Ctrl-R <br />Regexp Inc Search Meta-Ctrl-S <br />Regexp Inc Search Reverse Meta-Ctrl-R <br />Interactive Search and Replace Meta-% <br />Goto Line Number Meta-X goto-line <br />Previous Matching Bracket Meta-Ctrl-B (or ESC Ctrl-B) <br />Next Matching Bracket Meta-Ctrl-F (or ESC Ctrl-F) <br /><br /><br />WINDOW<br />Close Ctrl-X, K <br />Next Window Ctrl-X, B <br />Choose Window Ctrl-X, Ctrl-B <br />Maximize Ctrl-X, 1 <br />Split Horizontal Ctrl-X, 2 <br />Split Vertical Ctrl-X, 3 <br />Switch Focus Between Windows Ctrl-X, O <br />Activate Menu Bar Meta-` <br /><br /><br />REGISTERS<br />Copy Selection to Numbered Clipboard Ctrl-X R S [#] <br />Paste from Numbered Clipboard Ctrl-X R I [#] <br />Set Numbered Bookmark Ctrl-X R SPC [#] <br />Jump to Numbered Bookmark Ctrl-X R J [#] <br /><br />FORMATTING<br />Re-flow Paragraph Meta-Q <br />Indent Selection Meta-Control-\ <br />Uppercase Word Meta-U <br />Lowercase Word Meta-L <br />Capitalize Word Meta-C <br />Uppercase Selection Ctrl-X, Ctrl-U <br />Lowercase Selection Ctrl-X, Ctrl-L <br /><br />MACROS<br />Start Recording Ctrl-X, ( <br />Stop Recording Ctrl-X, ) <br />Play Macro Ctrl-X, E <br />Repeat command # times Meta-[#] [command] <br />Repeat command # times Ctrl-U [#] [command] <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <span itemprop='name'>Sivakumar</span> </span> </span> <span class='post-timestamp'> at <meta content='http://sivanihonjin.blogspot.com/2010/09/emacs-shorcuts.html' itemprop='url'/> <a class='timestamp-link' href='https://sivanihonjin.blogspot.com/2010/09/emacs-shorcuts.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2010-09-23T04:15:00-07:00'>9/23/2010 04:15:00 AM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://sivanihonjin.blogspot.com/2010/09/emacs-shorcuts.html#comment-form' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-action'> <a href='https://www.blogger.com/email-post.g?blogID=2916662426460066736&postID=9030460699697503562' title='Email Post'> <img alt='' class='icon-action' height='13' src='https://resources.blogblog.com/img/icon18_email.gif' width='18'/> </a> </span> <span class='item-control blog-admin pid-1067355270'> <a href='https://www.blogger.com/post-edit.g?blogID=2916662426460066736&postID=9030460699697503562&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> </div></div> <div class="date-outer"> <h2 class='date-header'><span>Friday, September 10, 2010</span></h2> <div class="date-posts"> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='2916662426460066736' itemprop='blogId'/> <meta content='3547929577463962932' itemprop='postId'/> <a name='3547929577463962932'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='https://sivanihonjin.blogspot.com/2010/09/how-to-write-batch-file.html'>How to Write a Batch File</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-3547929577463962932' itemprop='description articleBody'> <span style="font-weight: bold; color: rgb(255, 0, 0);">How to Write a Batch File:</span><br />OS used : Windows<br />Writing a batch file is used to automate daily and often mundane tasks. Instead of typing the same commands day after day, you would simply double click the batch file to run said commands. These instructions will show you how to do so.<br />For Windows<br />1. <br />Open up Notepad in Windows. You can do this by navigating to Start > Programs > Accessories > Notepad, or simply by entering notepad under Start > Run.<br />2. <br />Or open up notepad by keying C:\WINDOWS\system32\notepad.exe<br />3. <br />Save your file before anything, so be sure to follow the instructions closely.<br /><br /><br />1. Go to File > Save As... and chose a file name.<br />2. Choose your desktop as the location to save.<br />3. Click on the dropdown box "Save as type:" and select "All files" instead of Text (*.txt).<br />4. Add .bat to the end of your file name before you save. For example, you would type wikihow.bat.<br />5. Click on Save. If you did this correctly, you should see your file name in the title bar of Windows Notepad. Make sure that it reads as wikihow.bat—not wikihow.bat.txt. Now you are ready to create your batch file.<br />4. <br />Type "@echo off" on the first line of your batch file. This will prevent any commands in the batch file to be sent to the screen when executed.<br />5. <br />Enter your commands. The following examples show you how to create a batch file that will automatically load wikiHow.com using Internet Explorer.<br />1. <br />First example:<br />1. <br />o @echo off.<br />o REM The following will open wikiHow.com in a new Internet Explorer window.<br />o start iexplore.exe www.sivab.org<br /> or, second example:<br />1. <br />o @echo off.<br />o REM The following will open wikiHow.com in your default browser, if it is IE and you have another IE window open, then it will hijack that window or open a new tab.<br />o start www.sivab.org<br />2. <br />Save the file.<br />3. <br />Run the file by double clicking the file on your desktop.<br /><br /><span style="color: rgb(153, 0, 0);">Ex1:</span><br />Save the following as “siva.bat” and double click the file.<br /><br /><span style="color: rgb(102, 0, 204);">@echo off</span><br /><span style="color: rgb(102, 0, 204);">start iexplore.exe www.wikihow.com</span><br /><br /><br /><br /><span style="color: rgb(153, 0, 0);">Ex2:</span><br />Save the following as “siva.bat” and double click the file.<br /><br /><span style="color: rgb(102, 0, 204);">@echo off</span><br /><span style="color: rgb(102, 0, 204);">start www.wikihow.com</span><br /><br />Thanks to :<br />http://www.wikihow.com/Write-a-Batch-File <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <span itemprop='name'>Sivakumar</span> </span> </span> <span class='post-timestamp'> at <meta content='http://sivanihonjin.blogspot.com/2010/09/how-to-write-batch-file.html' itemprop='url'/> <a class='timestamp-link' href='https://sivanihonjin.blogspot.com/2010/09/how-to-write-batch-file.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2010-09-10T00:23:00-07:00'>9/10/2010 12:23:00 AM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://sivanihonjin.blogspot.com/2010/09/how-to-write-batch-file.html#comment-form' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-action'> <a href='https://www.blogger.com/email-post.g?blogID=2916662426460066736&postID=3547929577463962932' title='Email Post'> <img alt='' class='icon-action' height='13' src='https://resources.blogblog.com/img/icon18_email.gif' width='18'/> </a> </span> <span class='item-control blog-admin pid-1067355270'> <a href='https://www.blogger.com/post-edit.g?blogID=2916662426460066736&postID=3547929577463962932&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> </div></div> </div> <div class='blog-pager' id='blog-pager'> <span id='blog-pager-newer-link'> <a class='blog-pager-newer-link' href='https://sivanihonjin.blogspot.com/search?updated-max=2011-12-05T06:49:00-08:00&max-results=100&reverse-paginate=true' id='Blog1_blog-pager-newer-link' title='Newer Posts'>Newer Posts</a> </span> <span id='blog-pager-older-link'> <a class='blog-pager-older-link' href='https://sivanihonjin.blogspot.com/search?updated-max=2010-09-10T00:23:00-07:00' id='Blog1_blog-pager-older-link' title='Older Posts'>Older Posts</a> </span> <a class='home-link' href='https://sivanihonjin.blogspot.com/'>Home</a> </div> <div class='clear'></div> <div class='blog-feeds'> <div class='feed-links'> Subscribe to: <a class='feed-link' href='https://sivanihonjin.blogspot.com/feeds/posts/default' target='_blank' type='application/atom+xml'>Posts (Atom)</a> </div> </div> </div></div> </div> </div> <div class='column-left-outer'> <div class='column-left-inner'> <aside> <div class='sidebar section' id='sidebar-left-1'><div class='widget Poll' data-version='1' id='Poll1'> <h2 class='title'>What is the aXb:c refers to in 802.11n protocols specifying the no of antennaes ? for eg: 2x3:2 means </h2> <div class='widget-content'> <iframe allowtransparency='true' frameborder='0' height='260' name='poll-widget-6504448491053621198' style='border:none; width:100%;'></iframe> <div class='clear'></div> </div> </div><div class='widget Image' data-version='1' id='Image1'> <h2>Renault's Twizy - Small Electric car</h2> <div class='widget-content'> <a href='http://www.renault.com/en/innovation/vehicule-electrique/pages/twizy-ze-concept.aspx'> <img alt='Renault's Twizy - Small Electric car' height='149' id='Image1_img' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjS-SGE0it-Pcs3Lq1Zv2_GcO0Q1nVpn-KASSKRhOk0deng_hU7zALghN1EX9JKltkbqnwR5ooyWPFfk8WupccTIfHm20A5fGhbIze2ZuVbpcP1J5RzQROUbhvzGV3IZMmoYEm5mMeU3vk/s250/5048465160_46bde58c51.jpg' width='250'/> </a> <br/> <span class='caption'>Future car</span> </div> <div class='clear'></div> </div><div class='widget Followers' data-version='1' id='Followers1'> <h2 class='title'>Followers</h2> <div class='widget-content'> <div id='Followers1-wrapper'> <div style='margin-right:2px;'> <div><script type="text/javascript" src="https://apis.google.com/js/platform.js"></script> <div id="followers-iframe-container"></div> <script type="text/javascript"> window.followersIframe = null; function followersIframeOpen(url) { gapi.load("gapi.iframes", function() { if (gapi.iframes && gapi.iframes.getContext) { window.followersIframe = gapi.iframes.getContext().openChild({ url: url, where: document.getElementById("followers-iframe-container"), messageHandlersFilter: gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER, messageHandlers: { '_ready': function(obj) { window.followersIframe.getIframeEl().height = obj.height; }, 'reset': function() { window.followersIframe.close(); followersIframeOpen("https://www.blogger.com/followers/frame/2916662426460066736?colors\x3dCgt0cmFuc3BhcmVudBILdHJhbnNwYXJlbnQaByMyMjIyMjIiByMyNDlmYTMqByNmZmZmZmYyByMwMDAwMDA6ByMyMjIyMjJCByMyNDlmYTNKByM5OTk5OTlSByMyNDlmYTNaC3RyYW5zcGFyZW50\x26pageSize\x3d21\x26hl\x3den\x26origin\x3dhttps://sivanihonjin.blogspot.com"); }, 'open': function(url) { window.followersIframe.close(); followersIframeOpen(url); }, 'blogger-ping': function() { } } }); } }); } followersIframeOpen("https://www.blogger.com/followers/frame/2916662426460066736?colors\x3dCgt0cmFuc3BhcmVudBILdHJhbnNwYXJlbnQaByMyMjIyMjIiByMyNDlmYTMqByNmZmZmZmYyByMwMDAwMDA6ByMyMjIyMjJCByMyNDlmYTNKByM5OTk5OTlSByMyNDlmYTNaC3RyYW5zcGFyZW50\x26pageSize\x3d21\x26hl\x3den\x26origin\x3dhttps://sivanihonjin.blogspot.com"); </script></div> </div> </div> <div class='clear'></div> </div> </div><div class='widget HTML' data-version='1' id='HTML2'> <h2 class='title'>Wireless Car Driving - By Fadii</h2> <div class='widget-content'> <object width="500" height="405"><param name="movie" value="http://www.youtube.com/v/-CmuYCq7lnM&hl=en_US&fs=1&border=1" /><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><embed src="http://www.youtube.com/v/-CmuYCq7lnM&hl=en_US&fs=1&border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="250" height="250"></embed></object> </div> <div class='clear'></div> </div><div class='widget BlogArchive' data-version='1' id='BlogArchive1'> <h2>Blog Archive</h2> <div class='widget-content'> <div id='ArchiveList'> <div id='BlogArchive1_ArchiveList'> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2018/'> 2018 </a> <span class='post-count' dir='ltr'>(1)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2018/05/'> May </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2016/'> 2016 </a> <span class='post-count' dir='ltr'>(3)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2016/07/'> July </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2016/01/'> January </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2015/'> 2015 </a> <span class='post-count' dir='ltr'>(6)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2015/12/'> December </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2015/11/'> November </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2015/07/'> July </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2015/04/'> April </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2014/'> 2014 </a> <span class='post-count' dir='ltr'>(7)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2014/12/'> December </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2014/07/'> July </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2014/06/'> June </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2014/05/'> May </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2014/01/'> January </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/'> 2013 </a> <span class='post-count' dir='ltr'>(19)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/12/'> December </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/09/'> September </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/08/'> August </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/07/'> July </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/06/'> June </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/05/'> May </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/04/'> April </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/03/'> March </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/02/'> February </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2013/01/'> January </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/'> 2012 </a> <span class='post-count' dir='ltr'>(39)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/12/'> December </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/11/'> November </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/10/'> October </a> <span class='post-count' dir='ltr'>(8)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/09/'> September </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/07/'> July </a> <span class='post-count' dir='ltr'>(6)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/06/'> June </a> <span class='post-count' dir='ltr'>(6)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/05/'> May </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/04/'> April </a> <span class='post-count' dir='ltr'>(8)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2012/03/'> March </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/'> 2011 </a> <span class='post-count' dir='ltr'>(62)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/12/'> December </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/11/'> November </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/10/'> October </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/08/'> August </a> <span class='post-count' dir='ltr'>(7)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/07/'> July </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/06/'> June </a> <span class='post-count' dir='ltr'>(5)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/05/'> May </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/04/'> April </a> <span class='post-count' dir='ltr'>(5)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/03/'> March </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/02/'> February </a> <span class='post-count' dir='ltr'>(11)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2011/01/'> January </a> <span class='post-count' dir='ltr'>(16)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate expanded'> <a class='toggle' href='javascript:void(0)'> <span class='zippy toggle-open'> ▼  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/'> 2010 </a> <span class='post-count' dir='ltr'>(110)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/12/'> December </a> <span class='post-count' dir='ltr'>(19)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/11/'> November </a> <span class='post-count' dir='ltr'>(13)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/10/'> October </a> <span class='post-count' dir='ltr'>(7)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate expanded'> <a class='toggle' href='javascript:void(0)'> <span class='zippy toggle-open'> ▼  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/09/'> September </a> <span class='post-count' dir='ltr'>(7)</span> <ul class='posts'> <li><a href='https://sivanihonjin.blogspot.com/2010/09/get-familiar-with-vim-editor.html'>Get familiar with the VIM editor</a></li> <li><a href='https://sivanihonjin.blogspot.com/2010/09/linux-how-to-check-hardware.html'>Linux: How to check the hardware</a></li> <li><a href='https://sivanihonjin.blogspot.com/2010/09/how-to-check-which-port-is-listening-or_27.html'>How To Check Which Port Is Listening or Open on Linux</a></li> <li><a href='https://sivanihonjin.blogspot.com/2010/09/setting-up-your-own-station-free-radio.html'>Setting Up Your Own Station: A Free Radio Under Li...</a></li> <li><a href='https://sivanihonjin.blogspot.com/2010/09/linux-advanced-commands.html'>Linux advanced commands</a></li> <li><a href='https://sivanihonjin.blogspot.com/2010/09/emacs-shorcuts.html'>Emacs shorcuts</a></li> <li><a href='https://sivanihonjin.blogspot.com/2010/09/how-to-write-batch-file.html'>How to Write a Batch File</a></li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/07/'> July </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/06/'> June </a> <span class='post-count' dir='ltr'>(10)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/05/'> May </a> <span class='post-count' dir='ltr'>(5)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/04/'> April </a> <span class='post-count' dir='ltr'>(15)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/03/'> March </a> <span class='post-count' dir='ltr'>(7)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/02/'> February </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://sivanihonjin.blogspot.com/2010/01/'> January </a> <span class='post-count' dir='ltr'>(21)</span> </li> </ul> </li> </ul> </div> </div> <div class='clear'></div> </div> </div> </div> </aside> </div> </div> <div class='column-right-outer'> <div class='column-right-inner'> <aside> </aside> </div> </div> </div> <div style='clear: both'></div> <!-- columns --> </div> <!-- main --> </div> </div> <div class='main-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> <footer> <div class='footer-outer'> <div class='footer-cap-top cap-top'> <div class='cap-left'></div> <div class='cap-right'></div> </div> <div class='fauxborder-left footer-fauxborder-left'> <div class='fauxborder-right footer-fauxborder-right'></div> <div class='region-inner footer-inner'> <div class='foot no-items section' id='footer-1'></div> <table border='0' cellpadding='0' cellspacing='0' class='section-columns columns-2'> <tbody> <tr> <td class='first columns-cell'> <div class='foot no-items section' id='footer-2-1'></div> </td> <td class='columns-cell'> <div class='foot no-items section' id='footer-2-2'></div> </td> </tr> </tbody> </table> <!-- outside of the include in order to lock Attribution widget --> <div class='foot section' id='footer-3' name='Footer'><div class='widget Attribution' data-version='1' id='Attribution1'> <div class='widget-content' style='text-align: center;'> Sivakumar. Simple theme. Theme images by <a href='http://www.istockphoto.com/googleimages.php?id=4072573&platform=blogger&langregion=en' target='_blank'>gaffera</a>. Powered by <a href='https://www.blogger.com' target='_blank'>Blogger</a>. </div> <div class='clear'></div> </div></div> </div> </div> <div class='footer-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> </footer> <!-- content --> </div> </div> <div class='content-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> </div> <script type='text/javascript'> window.setTimeout(function() { document.body.className = document.body.className.replace('loading', ''); }, 10); </script> <script type="text/javascript" src="https://www.blogger.com/static/v1/widgets/984859869-widgets.js"></script> <script type='text/javascript'> window['__wavt'] = 'AOuZoY6N2slRyNz61DZFne1wD4ZcyflQlQ:1731879916728';_WidgetManager._Init('//www.blogger.com/rearrange?blogID\x3d2916662426460066736','//sivanihonjin.blogspot.com/2010/09/','2916662426460066736'); _WidgetManager._SetDataContext([{'name': 'blog', 'data': {'blogId': '2916662426460066736', 'title': 'Nihonjin \u30b7\u30ef\u30af\u30de\u30eb Sivakumar\x27s Blog', 'url': 'https://sivanihonjin.blogspot.com/2010/09/', 'canonicalUrl': 'http://sivanihonjin.blogspot.com/2010/09/', 'homepageUrl': 'https://sivanihonjin.blogspot.com/', 'searchUrl': 'https://sivanihonjin.blogspot.com/search', 'canonicalHomepageUrl': 'http://sivanihonjin.blogspot.com/', 'blogspotFaviconUrl': 'https://sivanihonjin.blogspot.com/favicon.ico', 'bloggerUrl': 'https://www.blogger.com', 'hasCustomDomain': false, 'httpsEnabled': true, 'enabledCommentProfileImages': true, 'gPlusViewType': 'FILTERED_POSTMOD', 'adultContent': false, 'analyticsAccountNumber': '', 'encoding': 'UTF-8', 'locale': 'en', 'localeUnderscoreDelimited': 'en', 'languageDirection': 'ltr', 'isPrivate': false, 'isMobile': false, 'isMobileRequest': false, 'mobileClass': '', 'isPrivateBlog': false, 'isDynamicViewsAvailable': true, 'feedLinks': '\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22Nihonjin \u30b7\u30ef\u30af\u30de\u30eb Sivakumar\x26#39;s Blog - Atom\x22 href\x3d\x22https://sivanihonjin.blogspot.com/feeds/posts/default\x22 /\x3e\n\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/rss+xml\x22 title\x3d\x22Nihonjin \u30b7\u30ef\u30af\u30de\u30eb Sivakumar\x26#39;s Blog - RSS\x22 href\x3d\x22https://sivanihonjin.blogspot.com/feeds/posts/default?alt\x3drss\x22 /\x3e\n\x3clink rel\x3d\x22service.post\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22Nihonjin \u30b7\u30ef\u30af\u30de\u30eb Sivakumar\x26#39;s Blog - Atom\x22 href\x3d\x22https://www.blogger.com/feeds/2916662426460066736/posts/default\x22 /\x3e\n', 'meTag': '', 'adsenseHostId': 'ca-host-pub-1556223355139109', 'adsenseHasAds': false, 'adsenseAutoAds': false, 'boqCommentIframeForm': true, 'loginRedirectParam': '', 'view': '', 'dynamicViewsCommentsSrc': '//www.blogblog.com/dynamicviews/4224c15c4e7c9321/js/comments.js', 'dynamicViewsScriptSrc': '//www.blogblog.com/dynamicviews/3d970d7188fc7945', 'plusOneApiSrc': 'https://apis.google.com/js/platform.js', 'disableGComments': true, 'interstitialAccepted': false, 'sharing': {'platforms': [{'name': 'Get link', 'key': 'link', 'shareMessage': 'Get link', 'target': ''}, {'name': 'Facebook', 'key': 'facebook', 'shareMessage': 'Share to Facebook', 'target': 'facebook'}, {'name': 'BlogThis!', 'key': 'blogThis', 'shareMessage': 'BlogThis!', 'target': 'blog'}, {'name': 'X', 'key': 'twitter', 'shareMessage': 'Share to X', 'target': 'twitter'}, {'name': 'Pinterest', 'key': 'pinterest', 'shareMessage': 'Share to Pinterest', 'target': 'pinterest'}, {'name': 'Email', 'key': 'email', 'shareMessage': 'Email', 'target': 'email'}], 'disableGooglePlus': true, 'googlePlusShareButtonWidth': 0, 'googlePlusBootstrap': '\x3cscript type\x3d\x22text/javascript\x22\x3ewindow.___gcfg \x3d {\x27lang\x27: \x27en\x27};\x3c/script\x3e'}, 'hasCustomJumpLinkMessage': false, 'jumpLinkMessage': 'Read more', 'pageType': 'archive', 'pageName': 'September 2010', 'pageTitle': 'Nihonjin \u30b7\u30ef\u30af\u30de\u30eb Sivakumar\x27s Blog: September 2010'}}, {'name': 'features', 'data': {}}, {'name': 'messages', 'data': {'edit': 'Edit', 'linkCopiedToClipboard': 'Link copied to clipboard!', 'ok': 'Ok', 'postLink': 'Post Link'}}, {'name': 'template', 'data': {'name': 'Simple', 'localizedName': 'Simple', 'isResponsive': false, 'isAlternateRendering': false, 'isCustom': false, 'variant': 'wide', 'variantId': 'wide'}}, {'name': 'view', 'data': {'classic': {'name': 'classic', 'url': '?view\x3dclassic'}, 'flipcard': {'name': 'flipcard', 'url': '?view\x3dflipcard'}, 'magazine': {'name': 'magazine', 'url': '?view\x3dmagazine'}, 'mosaic': {'name': 'mosaic', 'url': '?view\x3dmosaic'}, 'sidebar': {'name': 'sidebar', 'url': '?view\x3dsidebar'}, 'snapshot': {'name': 'snapshot', 'url': '?view\x3dsnapshot'}, 'timeslide': {'name': 'timeslide', 'url': '?view\x3dtimeslide'}, 'isMobile': false, 'title': 'Nihonjin \u30b7\u30ef\u30af\u30de\u30eb Sivakumar\x27s Blog', 'description': 'This blog is made for Expressing My Ideas, Views, and to put some technical datas.', 'url': 'https://sivanihonjin.blogspot.com/2010/09/', 'type': 'feed', 'isSingleItem': false, 'isMultipleItems': true, 'isError': false, 'isPage': false, 'isPost': false, 'isHomepage': false, 'isArchive': true, 'isLabelSearch': false, 'archive': {'year': 2010, 'month': 9, 'rangeMessage': 'Showing posts from September, 2010'}}}]); _WidgetManager._RegisterWidget('_NavbarView', new _WidgetInfo('Navbar1', 'navbar', document.getElementById('Navbar1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HeaderView', new _WidgetInfo('Header1', 'header', document.getElementById('Header1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogView', new _WidgetInfo('Blog1', 'main', document.getElementById('Blog1'), {'cmtInteractionsEnabled': false, 'lightboxEnabled': true, 'lightboxModuleUrl': 'https://www.blogger.com/static/v1/jsbin/2784278825-lbx.js', 'lightboxCssUrl': 'https://www.blogger.com/static/v1/v-css/1964470060-lightbox_bundle.css'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_PollView', new _WidgetInfo('Poll1', 'sidebar-left-1', document.getElementById('Poll1'), {'pollid': '-6504448491053621198', 'iframeurl': '/b/poll-results?pollWidget\x3dPoll1\x26txtclr\x3d%23222222\x26lnkclr\x3d%23249fa3\x26chrtclr\x3d%23249fa3\x26font\x3dnormal+normal+12px+Arial,+Tahoma,+Helvetica,+FreeSans,+sans-serif\x26hideq\x3dtrue\x26purl\x3dhttps://sivanihonjin.blogspot.com/'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_ImageView', new _WidgetInfo('Image1', 'sidebar-left-1', document.getElementById('Image1'), {'resize': false}, 'displayModeFull')); _WidgetManager._RegisterWidget('_FollowersView', new _WidgetInfo('Followers1', 'sidebar-left-1', document.getElementById('Followers1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML2', 'sidebar-left-1', document.getElementById('HTML2'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogArchiveView', new _WidgetInfo('BlogArchive1', 'sidebar-left-1', document.getElementById('BlogArchive1'), {'languageDirection': 'ltr', 'loadingMessage': 'Loading\x26hellip;'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_AttributionView', new _WidgetInfo('Attribution1', 'footer-3', document.getElementById('Attribution1'), {}, 'displayModeFull')); </script> </body> </html>