一个操作系统的底层是独立运行的,用户界面和底层分开,可以最大限度的保证系统稳定。Shell就是一个特殊的程序,负责接受用户的命令,并把系统的响应返回给用户。
Bash Shell一般不需要自己安装,在安装发行版的同时都会安装好。
Shell的存在是和登陆相关的,从用户名密码验证通过以后,Shell就启动了,知道你退出,Shell就结束了运行。
除了Bash Shell之外,还有很多其他的Shell。
2 Linux的文件、目录、程序
Linux的文件、目录、程序是使用bash操作的主要对象。有必要事先了解一下文件、目录和程序的概念
文件
Linux中一切都是文件、普通的文件、设备文件、管道也是文件的形式。一切操作都是文件为基础的。DOS操作系统早期也是模拟这种方式,不过有很多漏洞(比如C:\con\con会蓝屏)
文件是有属性的,有一个属性表示这个文件是不是目录,有3个属性表示这个文件的访问权限,还有一些表示从这个文件派生出的文件属性。
目录
目录是管理文件的手段,不同的文件要分门别类才容易找到。严格的说,目录也是一种文件,是具有目录属性的文件。
文件和目录都有所有者和所有组。叫UID和GID,对应的,有3个属性表示相应的权限。后面写到ls和chmod有详细地说明。
程序
程序是可以执行的代码,有些是直接交给内核或者CPU执行的,有些是通过其他程序执行的(解释脚本),可以运行的程序都有一个可执行的属性。
3 简单的命令 ls cp mv mkdir rm chown chmod
前面说了一些枯燥的概念,现在趁着看官还没有烦躁,开始实际操作的例子。
QUOTE:
Last login: Mon Aug 14 21:52:47 2006 from 61.149.202.143
[root@CERNET ~]#
这就是bash登陆后的样子。#井号是root特权用户的提示符号,一般用户提示符是$符号。
现在输入ls,列出当前目录的内容
QUOTE:
[root@CERNET ~]# ls
anaconda-ks.cfg install.log.syslog log4cplus-1.0.2 MceMonitor-install-files.tgz.md5sum vmstat_monitor
Ice-3.0.1 jwsmtp-1.32.11 log4cplus-1.0.2.tar.gz memcached-1.1.12 wuhan.sh
Ice-3.0.1.tar.gz jwsmtp-1.32.11.tar.gz login_keepalived memcached-1.1.12.tar.gz
ids.sh libevent-0.8 MceMonitor sar.log
install.log libevent-0.8.tar.gz MceMonitor-install-files.tgz tmp
再输入cd /,把当前目录改为根目录
QUOTE:
[root@CERNET /]# ls
bin data etc home lib media mnt proc sbin srv tmp var
boot dev eth1.route initrd lost+found misc opt root selinux sys usr
相信你的Linux一定是有颜色的,呵呵。
现在回到原来的目录(刚登陆的时候那个目录叫用户主目录),然后新建一个目录叫aaa。
QUOTE:
[root@CERNET /]# cd ~
[root@CERNET ~]# mkdir aaa
[root@CERNET aaa]#
~表示用户的主目录,mkdir是建立目录的命令,还可以这样用
mkdir {aaa,bbb,ccc,ddd} 会同时建立4个目录
mkdir -p ~/aaa/bbb/ccc/ddd/eee 这样在前面目录不存在的时候,会自动建立。
在当前目录下有这样的文件,复制和移动是这样的:
QUOTE:
[root@CERNET /]# ls
a.log
[root@CERNET /]# cp a.log b.log
[root@CERNET /]# ls
a.log b.log
[root@CERNET /]# rm a.log
|