Learning to use (and love) the Command Line

shell

Back to Snip <-- Previous Change | Next Change -->

Diff Summary
Title Learning to use (and love) the Command Line Learning to use (and love) the Command Line
Date 2010-07-18 01:47:56 2010-07-18 01:50:47
Editor serjant serjant
Tags

2010-07-18 01:47:56 by serjant
2010-07-18 01:50:47 by serjant
226<div id="code">226<div id="code">
227<pre>[df4@localhost ~]$ cd Desktop227<pre>[df4@localhost ~]$ cd Desktop
228</pre></div>228</pre></div>
229<p>Lets say I am in the home folder and I want to 229<p>Lets say I am in the home folder and I want to 
>go to the /opt folder. In this case, I need the wh>go to the /opt folder. In this case, I need the wh
>ole path, as /opt is not a subfolder of my home fo>ole path, as /opt is not a subfolder of my home fo
>lder:</p>>lder:</p>
230<div id="code">230<div id="code">
nn231<pre>
231<pre>[df4@localhost ~]$ cd /opt232[df4@localhost ~]$ cd /opt
232</pre></div>233</pre></div>
233<p>Finally, if I want to go up a folder, there is 234<p>Finally, if I want to go up a folder, there is 
>a shortcut. It is similar to DOS, but in DOS there>a shortcut. It is similar to DOS, but in DOS there
> is no space:</p>> is no space:</p>
234<div id="code">235<div id="code">
nn236<pre>
235<pre>[df4@localhost ~]$ cd ..237[df4@localhost ~]$ cd ..
236</pre></div>238</pre></div>
237<h1 id="toc3"><span><strong>cp - Copy</strong></sp239<h1 id="toc3"><span><strong>cp - Copy</strong></sp
>an></h1>>an></h1>
238<p><strong>cp</strong> is used to copy a file. It 240<p><strong>cp</strong> is used to copy a file. It 
>is often used to create backups of config files be>is often used to create backups of config files be
>fore you edit them, or move a folder while leaving>fore you edit them, or move a folder while leaving
> the original. Lets say I want to make a copy of t> the original. Lets say I want to make a copy of t
>he file /boot/grub/menu.lst. I have two options. F>he file /boot/grub/menu.lst. I have two options. F
>irst, I could cd to the directory then make the ch>irst, I could cd to the directory then make the ch
>ange:</p>>ange:</p>
239<div id="code">241<div id="code">
240<pre>242<pre>
242[root@localhost ~]# cd /boot/grub244[root@localhost ~]# cd /boot/grub
243[root@localhost ~]# cp menu.lst menu.lst.backup245[root@localhost ~]# cp menu.lst menu.lst.backup
244</pre></div>246</pre></div>
245<p>Note that I needed to become root to edit anyth247<p>Note that I needed to become root to edit anyth
>ing in /boot since it is not in my home folder. No>ing in /boot since it is not in my home folder. No
>w this is how I could do it in one command:</p>>w this is how I could do it in one command:</p>
246<div id="code">248<div id="code">
nn249<pre>
247<pre>[df4@localhost ~]$su -250[df4@localhost ~]$su -
248[root@localhost ~]# cp /boot/grub/menu.lst /boot/g251[root@localhost ~]# cp /boot/grub/menu.lst /boot/g
>rub/menu.lst.backup>rub/menu.lst.backup
249[root@localhost ~]# exit252[root@localhost ~]# exit
250</pre></div>253</pre></div>
251<h1 id="toc4"><span><strong>ln - Link</strong></sp254<h1 id="toc4"><span><strong>ln - Link</strong></sp
>an></h1>>an></h1>
252<p><strong>ln</strong> is the command used to crea255<p><strong>ln</strong> is the command used to crea
>te links. It is very useful when you want a file t>te links. It is very useful when you want a file t
>o be available in several places but with only one>o be available in several places but with only one
> version. You can link to directories or single fi> version. You can link to directories or single fi
>les. Typically you use what are called "symbolic l>les. Typically you use what are called "symbolic l
>inks". These "symbolic links" are created by using>inks". These "symbolic links" are created by using
> "ln -s", followed by the file that you are linkin> "ln -s", followed by the file that you are linkin
>g, and the path that it is being linked to. Note t>g, and the path that it is being linked to. Note t
>hat you cannot make a link to a link, you must lin>hat you cannot make a link to a link, you must lin
>k to the original file/directory. A common applica>k to the original file/directory. A common applica
>tion of a link is to enable plugins in multiple br>tion of a link is to enable plugins in multiple br
>owsers. Below is an example of linking the flash p>owsers. Below is an example of linking the flash p
>lugin in my firefox plugins folder to "swiftfox" w>lugin in my firefox plugins folder to "swiftfox" w
>hich I have installed:</p>>hich I have installed:</p>
257[root@localhost ~]# exit260[root@localhost ~]# exit
258</pre></div>261</pre></div>
259<h1 id="toc5"><span><strong>mv - Move</strong></sp262<h1 id="toc5"><span><strong>mv - Move</strong></sp
>an></h1>>an></h1>
260<p><strong>mv</strong> is the command used to move263<p><strong>mv</strong> is the command used to move
> a file or a directory. To move a file, you simply> a file or a directory. To move a file, you simply
> use mv, followed by the file, followed by the pla> use mv, followed by the file, followed by the pla
>ce you want to move it to. In this example I am mo>ce you want to move it to. In this example I am mo
>ving my recently downloaded Fedora 7 Test 4 disk i>ving my recently downloaded Fedora 7 Test 4 disk i
>mage from the desktop to my home folder:</p>>mage from the desktop to my home folder:</p>
261<div id="code">264<div id="code">
nn265<pre>
262<pre>[df4@localhost ~]$ mv ~/Desktop/F-6.93-i386-D266[df4@localhost ~]$ mv ~/Desktop/F-6.93-i386-DVD.is
>VD.iso ~/>o ~/
263</pre></div>267</pre></div>
264<h1 id="toc6"><span><strong>rm - Remove/Delete</st268<h1 id="toc6"><span><strong>rm - Remove/Delete</st
>rong></span></h1>>rong></span></h1>
265<p><strong>rm</strong> is the command to delete fr269<p><strong>rm</strong> is the command to delete fr
>om the command line. This is a very dangerous comm>om the command line. This is a very dangerous comm
>and and should be used sparingly, as once a file i>and and should be used sparingly, as once a file i
>s deleted by rm there is no way to recover it. Her>s deleted by rm there is no way to recover it. Her
>e I will delete the iso file from above using rm:<>e I will delete the iso file from above using rm:<
>/p>>/p>
266<div id="code">270<div id="code">
nn271<pre>
267<pre>[df4@localhost ~]$ rm ~/F-6.93-i386-DVD.iso</272[df4@localhost ~]$ rm ~/F-6.93-i386-DVD.iso</code>
>code>>
268</pre></div>273</pre></div>
269<p>To delete a folder, use the tag "-r" for recurs274<p>To delete a folder, use the tag "-r" for recurs
>ive. Here I will delete a folder called Pictures o>ive. Here I will delete a folder called Pictures o
>n my desktop:</p>>n my desktop:</p>
270<div id="code">275<div id="code">
nn276<pre>
271<pre>[df4@localhost ~]$rm -r ~/Desktop/Pictures277[df4@localhost ~]$rm -r ~/Desktop/Pictures
272</pre></div>278</pre></div>
273<h1 id="toc7"><span><strong>pwd - Print Working Di279<h1 id="toc7"><span><strong>pwd - Print Working Di
>rectory</strong></span></h1>>rectory</strong></span></h1>
274<p><strong>pwd</strong> stands for "print working 280<p><strong>pwd</strong> stands for "print working 
>directory", and it does just that. It prints the l>directory", and it does just that. It prints the l
>ocation you are currently in. Here is what happens>ocation you are currently in. Here is what happens
> when I type pwd from my home folder:</p>> when I type pwd from my home folder:</p>
275<div id="code">281<div id="code">
nn282<pre>
276<pre>[df4@localhost ~]$ pwd283[df4@localhost ~]$ pwd
277/home/df4284/home/df4
278</pre></div>285</pre></div>
279<h1 id="toc8"><span><strong>mkdir - Make a Directo286<h1 id="toc8"><span><strong>mkdir - Make a Directo
>ry</strong></span></h1>>ry</strong></span></h1>
280<p><strong>mkdir</strong> is the command you would287<p><strong>mkdir</strong> is the command you would
> use to create a new folder. You need to specify t> use to create a new folder. You need to specify t
>he path and name of the folder. If I wanted to cre>he path and name of the folder. If I wanted to cre
>ate a new folder on my desktop called pictures, it>ate a new folder on my desktop called pictures, it
> would look like this:</p>> would look like this:</p>
281<div id="code">288<div id="code">
nn289<pre>
282<pre>[df4@localhost ~]$ mkdir ~/Desktop/Pictures290[df4@localhost ~]$ mkdir ~/Desktop/Pictures
283</pre></div>291</pre></div>
284<h1 id="toc9"><span><strong>mount - Mount a Drive<292<h1 id="toc9"><span><strong>mount - Mount a Drive<
>/strong></span></h1>>/strong></span></h1>
285<p><strong>mount</strong> is a command that lets y293<p><strong>mount</strong> is a command that lets y
>ou access new hard drives or partitions on your sy>ou access new hard drives or partitions on your sy
>stem (including flash drives that are not automati>stem (including flash drives that are not automati
>cally recognized). In this most common use, I am m>cally recognized). In this most common use, I am m
>ounting a drive that has another linux OS on it:</>ounting a drive that has another linux OS on it:</
>p>>p>
286<p>First, I need to know what the partition is cal294<p>First, I need to know what the partition is cal
>led, so I run this:</p>>led, so I run this:</p>
287<div id="code">295<div id="code">
309[root@localhost ~]# mount /dev/sda1 /media/sda1317[root@localhost ~]# mount /dev/sda1 /media/sda1
310[root@localhost ~]# cd /media/sda1318[root@localhost ~]# cd /media/sda1
311</pre></div>319</pre></div>
312<p>If I were mounting a windows partition, the ste320<p>If I were mounting a windows partition, the ste
>ps would basically be the same, except the mount c>ps would basically be the same, except the mount c
>ommand would look different. Windows NTFS partitio>ommand would look different. Windows NTFS partitio
>ns can be mounted as ntfs, which only allows readi>ns can be mounted as ntfs, which only allows readi
>ng of the files, not writing, or as ntfs-3g, which>ng of the files, not writing, or as ntfs-3g, which
> alows you to change the files. To use ntfs-3g, us> alows you to change the files. To use ntfs-3g, us
>e the -t flag in order to specify the file system >e the -t flag in order to specify the file system 
>type:</p>>type:</p>
313<div id="code">321<div id="code">
nn322<pre>
314<pre>[root@localhost ~]# mount -t ntfs-3g /dev/sda323[root@localhost ~]# mount -t ntfs-3g /dev/sda1 /me
>1 /media/sda1>dia/sda1
315</pre></div>324</pre></div>
316<p>Finally, if you want to mount all the file syst325<p>Finally, if you want to mount all the file syst
>ems listed in your /etc/fstab file (*INSERT LINK T>ems listed in your /etc/fstab file (*INSERT LINK T
>O FSTAB PAGE HERE*), use the -a flag:</p>>O FSTAB PAGE HERE*), use the -a flag:</p>
317<div id="code">326<div id="code">
nn327<pre>
318<pre>[root@localhost ~]# mount -a328[root@localhost ~]# mount -a
319</pre></div>329</pre></div>
320<h1 id="toc10"><span><strong>locate - A File Searc330<h1 id="toc10"><span><strong>locate - A File Searc
>h</strong></span></h1>>h</strong></span></h1>
321<p><strong>locate</strong> is used to find a file 331<p><strong>locate</strong> is used to find a file 
>anywhere on your system. If I want to find any fla>anywhere on your system. If I want to find any fla
>shplayer on my system, I could search with the loc>shplayer on my system, I could search with the loc
>ate command like this:</p>>ate command like this:</p>
322<div id="code">332<div id="code">
nn333<pre>
323<pre>[df4@localhost ~]$ locate libflashplayer.so334[df4@localhost ~]$ locate libflashplayer.so
324/opt/swiftfox/plugins/libflashplayer.so335/opt/swiftfox/plugins/libflashplayer.so
325/usr/lib/mozilla/plugins/libflashplayer.so336/usr/lib/mozilla/plugins/libflashplayer.so
326</pre></div>337</pre></div>
327<p>The system keeps a database of the files on the338<p>The system keeps a database of the files on the
> system. If you are looking for a file that you ha> system. If you are looking for a file that you ha
>ve recently added, it might not have been updated >ve recently added, it might not have been updated 
>recently. Type this to fix this (might take some t>recently. Type this to fix this (might take some t
>ime):</p>>ime):</p>
328<div id="code">339<div id="code">
344<pre>chown -R df4 /media/sda1355<pre>chown -R df4 /media/sda1
345</pre></div>356</pre></div>
346<h1 id="toc13"><span><strong>top - A System Monito357<h1 id="toc13"><span><strong>top - A System Monito
>r</strong></span></h1>>r</strong></span></h1>
347<p><strong>top</strong> is used to launch a comman358<p><strong>top</strong> is used to launch a comman
>d line system processes monitor. It updates freque>d line system processes monitor. It updates freque
>ntly and is quite powerful:</p>>ntly and is quite powerful:</p>
348<div id="code">359<div id="code">
nn360<pre>
349<pre>[df4@localhost ~]$ top361[df4@localhost ~]$ top
350top - 06:08:28 up 1 day,  8:48,  2 users,  load av362top - 06:08:28 up 1 day,  8:48,  2 users,  load av
>erage: 0.06, 0.08, 0.08>erage: 0.06, 0.08, 0.08
351Tasks: 102 total,   1 running, 101 sleeping,   0 s363Tasks: 102 total,   1 running, 101 sleeping,   0 s
>topped,   0 zombie>topped,   0 zombie
352Cpu(s):  0.8% us,  0.2% sy,  0.0% ni, 98.5% id,  0364Cpu(s):  0.8% us,  0.2% sy,  0.0% ni, 98.5% id,  0
>.0% wa,  0.3% hi,  0.2% si>.0% wa,  0.3% hi,  0.2% si
353Mem:   1035740k total,   993028k used,    42712k f365Mem:   1035740k total,   993028k used,    42712k f
>ree,    89712k buffers>ree,    89712k buffers
354Swap:  1164672k total,       44k used,  1164628k f366Swap:  1164672k total,       44k used,  1164628k f
>ree,   649108k cached>ree,   649108k cached
374</pre></div>386</pre></div>
375<p>I can quit the screen by pressing 'q'. I can al387<p>I can quit the screen by pressing 'q'. I can al
>so enter a mode to kill processes by hitting 'k', >so enter a mode to kill processes by hitting 'k', 
>then using the PID number next to each process to >then using the PID number next to each process to 
>kill it.</p>>kill it.</p>
376<h1 id="toc14"><span><strong>Launching Programs</s388<h1 id="toc14"><span><strong>Launching Programs</s
>trong></span></h1>>trong></span></h1>
377<p>In order to <strong>launch a program</strong> f389<p>In order to <strong>launch a program</strong> f
>rom the terminal, you need to type its name. Thats>rom the terminal, you need to type its name. Thats
> it. Well, mostly. As long as it was installed fro> it. Well, mostly. As long as it was installed fro
>m the repositories (through synaptic or apt-get), >m the repositories (through synaptic or apt-get), 
>the command will be placed in /usr/bin. Any comman>the command will be placed in /usr/bin. Any comman
>d in /usr/bin can be launched by just typing the n>d in /usr/bin can be launched by just typing the n
>ame, and the computer just assumes the /usr/bin:</>ame, and the computer just assumes the /usr/bin:</
>p>>p>
378<div id="code">390<div id="code">
n379<pre>firefox n391<pre>
392[df4@localhost ~]$ firefox
380</pre></div>393</pre></div>
381<p>If the app you want to launch is in another fol394<p>If the app you want to launch is in another fol
>der (say, /opt/swiftfox) then you need the full pa>der (say, /opt/swiftfox) then you need the full pa
>th to the executable:</p>>th to the executable:</p>
382<div id="code">395<div id="code">
n383<pre>/opt/swiftfox/swiftfox n396<pre>
397[df4@localhost ~]$ /opt/swiftfox/swiftfox
384</pre></div>398</pre></div>
385<p>Finally, if you are in the directory of the pro399<p>Finally, if you are in the directory of the pro
>gram, use ./ to launch it. The ./ means the curren>gram, use ./ to launch it. The ./ means the curren
>t directory. You can't just type the name, because>t directory. You can't just type the name, because
> the computer assumes that means /usr/bin. Example> the computer assumes that means /usr/bin. Example
> launching swiftfox as above:</p>> launching swiftfox as above:</p>
386<div id="code">400<div id="code">
t387<pre>cd /opt/swiftfox t401<pre>
388./swiftfox 402[df4@localhost ~]$ cd /opt/swiftfox
403[df4@localhost ~]$ ./swiftfox
389</pre></div>404</pre></div>
390405
391</div>406</div>

No users online



Google Search Engine