就是Shell了。Shell可以帮助我们去驱使内核来完成我们所需要的工作。Shell一般分为两大主流:
sh:
burne shell (sh)
burne again shell (bash)
csh:
c shell (csh)
tc shell (tcsh)
korn shell (ksh)
然后在Linux下大多数的发行版都是默认选择bash的,我们也称之为bash shell。
知道Shell是什么后,我们来看看Shell的基础使用。首先我们要知道哪里可以使用Shell,Shell是可以在虚拟终端中使用和在终端中使用的。终端的打开方式是“ctrl+atl+F*”按键,这个自己去试试,无论终端还是虚拟终端,使用效果是一样的,登录了就可以了。那么虚拟终端在哪里捏?按照下面的图片去把虚拟终端打开来吧。
打开后的这个将是我们的实验环境哦。
现在我们来说说Shell的格式,Shell格式正规应该是:
Shell软件 选项 参数 |
记住格式后,我们简单的看看一些软件的作用,注意区分大小写。
cd | 切换目录 |
pwd | 查看当前的位置 |
ls | 查看当前目录下的文件与文件夹 |
cp | 复制文件/文件夹 |
mv | 移动文件/重命名文件 |
touch | 创建文件与修改文件属性 |
rm | 删除文件 |
mkdir | 创建文件夹 |
rmdir | 删除文件夹 |
vi | 编辑文件 |
less | 以阅读器方式查看文件 |
cat | 查看文件并输出 |
head | 指定文件头的行数并输出(默认10行) |
tail | 指定文件尾的行数并输出(默认10行) |
more | 分页输出显示文件 |
file | 查看文件类型 |
find | 查看文件 |
mount | 挂载文件系统(包括网络) |
umount | 卸载文件系统(包括网络) |
fdisk | 查看磁盘情况与创建分区 |
uesradd | 创建用户 |
uesrdel | 删除用户 |
groupadd | 创建组 |
groupdel | 删除组 |
chmod | 更改文件/文件夹权限 |
chown | 更改文件/文件夹属主与属组 |
history | 查看终端输入历史 |
! | 配合history查看的历史编号使用历史输入 |
chkconfig | 查看与设定服务状态 |
service | 对指定服务进行任务 |
jobs | 查看后台进程号 |
fg | 将后台进程恢复到前台 |
ps | 查看全部进程并输出 |
top | 实时方式查看进程 |
pstree | 以树形方式查看进程并输出 |
tar | 释放/创建归档 |
ifconfig | 查看网络接口信息与配置网络接口 |
route | 查看路由信息与配置路由 |
ping | 测试网络 |
hostname | 查看当前主机的主机名 |
nslookup | 以交互方式进行域名查询 |
free | 查看内存使用情况 |
df | 查看磁盘使用情况 |
du | 查看目录占用空间情况 |
cal | 查看日历 |
date | 查看与设置系统时间 |
time | 设置程序时间(例如程序生存时间) |
last | 主机最近的登录情况 |
ln | 创建链接文件 |
init | 切换系统模式 |
reboot | 重启 |
grep | 查看文件里符合条件的字符串 |
help | 查看软件的帮助文档 |
man | 查看软件的手册页信息 |
知道了这些软件的功能后我们就开始讲讲如何去使用这些软件。
在这之前我先告诉介绍给大家认识下最好的老师给大家认识。
他们就是“help、man”这两个软件。他们可以帮助我们解决很多的问题。
我们先看看我们需要怎么找help老师帮忙,现在我不知道cd这个软件怎么样用,或者说是他的功能,我们需要help老师的帮忙。那么我们应该:
cd –help |
是的,就是这么简单。不过大家要注意中间的空格键。
现在我们看看另一个老师的用法。man老师要比help老师懂更多的东西哦,用法有一点不一样。是反过来哦。同样是cd的帮助:
man cd |
这样就明白了吧。简单吧,不过同样注意中间的空格,按“q”退出帮助。
接下来先看看cd这个的用法,大家都知道Linux是以树形结构来构建文件系统的。所有都在“/”之下。在配合前面给大家的公式。现在我们的位置是哪里?使用“pwd”查看下。现在明白后我们就看看如果进入到“/”位置,软件名称+参数:
cd / |
是的就是这么的简单。
好了我不会跟大家讲每个“命令”的用法,为什么?很简单,因为他们是软件,我们不可能学习到所有的软件的选项与参数的用法,我们需要抓住技巧,抓住方法,更多的时候是需要我们的经验。要想学好基础的shell使用,不能懒,不能说为了方便复制直接就右键复制,试下用shell来帮你完成任务。因为这课很少,我在这个建议大家每个命令都要去用。不懂?我不是介绍了两个老师给你们么,再不懂?
Google也是你的老师,还不行?那么就mail跟Yayi一起讨论吧。
下面我也给大家一些练习,一定要做!
1. 创建一个文件test并删除。
2. 创建一个文件夹并删除。
3. 创建一个文件test并用mv修改文件名为check。
4. 用vi编辑文件check,随便写20行。
5. 分别用cat、less、more、head、tail查看文件。
6. 使用chmod修改文件check权限,权限为所有人均可读写执行。
7. 创建一个用户为test,删除用户。
8. 创建一个组为check并删除。
9. 创建一个用户test并指定加入到root组。
10. 使用chown切换文件check的属主为“test:root”。
11. 使用ps、pstree、top查看系统进程。
12. 使用ln为文件check创建一个硬链接并删除,使用ls查看删除后的情况。
13. 使用ln –s为一个文件夹创建软链接,删除并使用ls查看删除后的情况。
14. 创建两个归档压缩包,一个为bz的包,一个为gz的包。并解压缩。
15. 尝试删除一个带文件的文件夹。
16. 尝试用时kill停止一个进程。
17. 尝试使用init切换每个参数,并把每个参数的功能记录在脑子里,参数分别为“0、1、2、3、4、5、”。
作业就这么多。不难,但是要配合“help和man、Google”使用。
最后为大家推荐一个不错的中文翻译注释网站:
楼主的功劳是不可磨灭的啊
党和人民群众铭记于心!!
time命令的说明好象不对。
touch – 修改文件的时间戳,似乎这个才是它的正业,至于创建文件应该算是副业。
date 查看时间、 设置时间