- 浏览: 506375 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (285)
- 数据库 (49)
- dwr (1)
- js (35)
- security (6)
- freemaker (4)
- 网站建设 (15)
- css (5)
- javaEE (56)
- 生活点滴 (12)
- 安装与配置 (16)
- ssh2 (13)
- 开源软件 (6)
- web 应用服务器 (6)
- 开发模式和设计模式 (2)
- linux (5)
- 项目管理 (7)
- 计算机杂症 (0)
- appScan (1)
- idea (3)
- android (1)
- java @override 报错处理 (1)
- lucene (5)
- java (2)
- groovy (1)
- Extjs (7)
- asp (2)
- php (2)
- Memcached (1)
- 名言 (1)
- 面试 (1)
- Jmeter (0)
- 微信支付 (1)
- app开发 (1)
- branch分支合并到trunk主干 (1)
- 自动化测试 (1)
- springClond (1)
- ELK (2)
最新评论
-
skykufo:
坑爹啊,我也因为写多了一个div,在ie8浪费了一天
jQuery加载(load、get、post)页面显示空白原因 -
yeyinzhu3211:
帅哥,我想问下,是怎么去除呀?能详细说明下吗?
IntelliJ IDEA 10.5.1 无法断点或停止不动 -
sshitaime:
怎么下载不了啊,能给我一个安装包吗
oracle 10g透明网关组件下载地址(新) -
fuanyu:
xiaohuafyle 写道被你的头像吓尿了 哥们有这么可怕呀 ...
netstat -aon -
wanlt_software:
谢谢。。。。。
oracle 10g透明网关组件下载地址(新)
本文来自互联网!
一、常用的简单命令
1.pwd 显示当前工作目录的绝对路径
例如:如果当前目录为 /root,则
[root@localhost /root] # pwd <CR>
/root
2. ls 显示当前工作目录下的内容
主要选项:-a 显示指定目录下的所有子目录与文件,包括隐藏文件
-l 以长格式显示文件的详细信息
-p 子目录后带“/”
例如: [root@localhost /root] # ls –a <CR>
3. cd 改变工作目录
主要选项: . 进入当前目录
.. 进入上一级目录
例如:[root@localhost /root] # cd .. <CR> (可用pwd命令查看目录的改变)
[root@localhost /root] # cd /root/aa <CR>
4.mkdir 新建目录
例如:[root@localhost /root] # mkdir /root/aa <CR>
或 [root@localhost /root] # mkdir aa <CR> (在当前目录下新建一个目录aa)
5.rmdir 删除目录
例如:[root@localhost /root] # rmdir /root/aa <CR>
或 [root@localhost /root] # rmdir aa <CR>(删除当前目录下的子目录aa)
6.cat 查看文件内容
主要选项:-n 每行开始位置显示编号
例如:[root@localhost /root] #cat -n filename<CR>
7.more 在显示器上按屏显示文本文件
说明:当文件内容过多时,用cat命令显示的文本会迅速闪过,用户来不及看清内容,用more命令逐屏显示文本,显示满一屏后暂停,若要继续显示,按回车或空格键即可。
例如:[root@localhost /root] # more filename <CR>
8.wc 统计指定文件的行数、字数、字节数
主要选项:-c 统计字节数
-l 统计行数
-w 统计字数
例如:[root@localhost /root] # wc file1 <CR>
52 168 1073 file1
9.cp 将源文件或目录复制到目标文件或目录中
主要选项:-i 在覆盖目标文件之前将给出提示要求用户确认,回答y时目标文件将被覆盖。
例如:[root@localhost /root] # cp –i file1.c /usr/file2.c <CR>
(将文件file1拷贝到目录/usr下,并命名file2.c)
10. rm 删除文件
例如:[root@localhost /root] # rm /root/file1.c <CR>
11. mv 移动文件或为文件改名
例如:[root@localhost /root] # mv file1 file2 <CR>(文件名由file1改为file2)
[root@localhost /root] # mv file1 /usr<CR>(将文件file1移至目录/usr下)
12.head 查看文件头
例如:[root@localhost /root] # head file1 <CR>
13.Tail 查看文件尾
例如:[root@localhost /root] # tail file1 <CR>
14.chmod 改变文件或目录的权限
用ls - l命令显示的信息中,开头是由10个字符构成的字符串,其中第一个字符表示文件类型,它可以是下述类型之一:
- 普通文件
d 目录
l 符号链接
b 块设备文件
c 字符设备文件
后面的9个字符表示文件的访问权限,分为3组,每组3位。
第一组表示文件属主的权限,第二组表示同组用户的权限,第三组表示其他用户的权限。每一组的三个字 符分别表示对文件的读、写和执行权限。
各权限如下所示:
r 读
w 写
x 执行。对于目录,表示进入权限。
命令格式:chmod [who] [+ | - ] [mode] 文件名?
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。
操作符号可以是:
+ 添加某个权限。
- 取消某个权限。
例如: [root@localhost /root] # chmod o+w file1 <CR>(增加其他用户对file1的写权限)
15.tar 压缩目录或文件
常用选项:-cvf 创建一个压缩文件
-xvf 还原并解压缩文件
例如:[root@localhost /root] # tar –cvf abc.tar /root/aa <CR>
(把目录/root/aa下的所有子目录和文件进行压缩,压缩文件名为abc.tar)
[root@localhost /root] # tar –xvf abc.tar <CR>
(把abc.tar还原并解压缩)
二、提高你输入速度的命令补全(很有用)
当用户输入一个命令的一部分后,按Tab键,Shell将试图补全这个命令。例如:
$pass< Tab>
Bash知道这是一个命令,并查找以pass开头的命令,当查到只有passwd符合条件时,Bash将把命令补全。如果查找到多个以输入字符串开头的命令,则会发出警告声,在按一下Tab键,将显示出以此字符串开头的命令。例如:
$pas< Tab>< Tab>
passwd paste
此时在原输入字符串的基础上增加字符避免多义性后,再用Tab键即可补全命令。
Bash不仅能补全命令,还能补全做命令参数的文件名,如:
$ls -l /home/public/c< Tab>< Tab>
clfile cxpfile
$ls -l /home/public/cl< Tab>
-rw-r--r-- 2 cl user 21 Dec 3 12:37clfile
在这个例子中,按第一个Tab键,会有警告声,第二个Tab键用于显示在/home/public目录下同以c开头的文件的名称,然后添加字符l,在按Tab键,Bash将补全文件名,即clfile。
三、历史表(history list)
因为用户很有可能用到过去用过的命令,所以Bash将每次输入的命令都记录在历史表中以便将来使用。历史表可以容纳下500条命令。这么大的容量足够我们使用的了。在退出登录时,Bash将历史表的内容保存到.bash_history文件中,在登录时,又将.bash_history的内容写入历史表中,这样一来就好像接着上一次登录一样,我们可以使用history命令来显示历史表中的记录。例如:
$history
210 who
211 passwd
212 cd public
213 cp /home/file/clfile .
214 cp /home/file/cxpfile .
215 ls -l /home/pubic
从例子中可以看出,每一个命令占一行,被称为一个事件(event),每一个事件的前一部分的数字被称为事件号,后一部分则是命令。
如果我们想要执行历史表中的命令,我们可以用历史代替操作符(!)加上事件号来实现。例如:
$!210
who
root tty1 Dec 3 10:22
cl tty2 Dec 3 11:57
cxp tty3 Dec 3 13:54
在例子中,我们执行了历史表中事件号为210的who命令。
如果想要执行最近一次的命令,可以如下输入:
$!!
who
root tty1 Dec 3 10:22
cl tty2 Dec 3 11:57
cxp tty3 Dec 3 13:54
我们也可以用!和命令连用,来重复过去执行过的命令。这样的优点是不必写出命令的参数。如:
$!ls
ls -l /home/pubic
-rw-r--r-- 2 cl user 21 Dec 3 12:37clfile
-rw-rw-r-- 2 cxp user 27 Dec 3 12:33cxpfile
还有一种方法是在命令的任何位置查找与指定输入部分相同的命令。具体做法是用一对?把要查找的字符串括起来,例如:
$!?-l?
ls -l /home/pubic
-rw-r--r-- 2 cl user 21 Dec 3 12:37clfile
-rw-rw-r-- 2 cxp user 27 Dec 3 12:33cxpfile
在这条命令中,Bash在每个事件中搜索有无-l这个字符串,当搜索到有-l字符串的ls -l /home/pubic命令时,就执行它。
如果第二个问号后面再没有其他的东西,则可省略第二个问号,因此上面的例子也可以写成:
$!?-l
如果要重复命令,但又要做些改动,可以用s/old/new来实现,它的作用是将old部分的字符串换成new部分的字符串。例如:
$!?-l?:s/public/cl
ls -l /home/cl
drwxrw-r-- 1 cl user 1067 Apr 19 23:35mp
-rw-r--r-- 2 cl user 21 Dec 3 13:41clfile
这个例子是将ls -l /home/public命令中的public换成cl,然后执行。即执行ls -l /home/cl。
其实,上面这些命令还有一个很简单的实现方法,即按向上键,在提示符后就会出现前一次的命令。因此,我们可以通过按上键在历史表中从尾部向前查找命令。当找到要执行的命令后,可以直接按Enter键执行,也可以用前面介绍的命令行编辑方法修改命令。而向下键的作用正好与向上键相反,是从前向后查找历史表。大家可以在实际运用中体会它们的用法。
四、路径名扩展
我想大家对DOS中的*和?不陌生吧。在Linux下它们的用途完全相同。
*代表任意一个字符串,例如:
$ls -l /home/public/c*
-rw-r--r-- 2 cl user 21 Dec 3 12:37clfile
-rw-rw-r-- 2 cxp user 27 Dec 3 12:33cxpfile
在这个例子中,Bash将*扩展后使c*变为clfile、cxpfile。
?代表任意一个字符,例如:
$cat /home/public/c?file
User name is CaoLei.
在这条命令中,Bash将?扩展后得到clfile,即执行cat /home/public/clfile命令。
同DOS一样,Linux允许在一行中重复使用*和?,如:
$ls c*f*
clfile cxpfile
$ls c?pf?le
cxpfile
在Linux中,比DOS还多一种路径名扩展方式,即用[]把要匹配的字符括起来,如:
$rm dirfle[12346789]
这行命令的作用是删除名为dirfile1、dirfile2、…、dirfile4、dirfile6、…、dirfile9的这些文件。我们也可以用一种 比较简单的写法来表示上面的命令:
$rm dirfile[1-46-9]
不仅可以用数字,还可以使用字母:
$rm dirfile[abcdefghijklmnopqrstuvwxyz]
$rm dirfile[a-z]
这两条命令是同一个意思,它们都是把名为dirfilea、…、dirfilez的这些文件删除。
五、输入/输出重新定向
Linux命令一般从标准输出设备获得信息,经过命令程序处理后,再将结果送到标准输出设备上。键盘既是Linux的标准输出设备,显示器既是Linux的标准输入设备。
有时,要从文件中获得信息,或是将结果送到文件中。因为每个命令不一定都带有相应的参数,所以Bash提供了将命令的标准输出和标准输入重新定向的功能,这些功能可以通过相应的符号表示。
1.>和>>
>的功能是将命令的输出送入文件中。如果文件不存在,则创建这个文件;如果文件存在,则覆盖这个文件,如:
$ls -l > dirfile
$cat dirfile
-rw-r--r-- 2 cl user 21 Dec 3 12:37clfile
-rw-rw-r-- 2 cxp user 27 Dec 3 12:33cxpfile
这个例子中,第一个命令前半部分是列出一个目录的文件清单,在一般情况下文件清单显示到屏幕上。但后半部分有>号,Bash将标准输出定义为名为dirfilr的文件,将显示结果保存到了这个文件中。第二个命令用于察看dirfile文件的内容,它的内容和直接使用ls -l的结果一样。
>>的功能同>相似,不同的是:如果文件存在,它并不是覆盖文件,而是将结果添加的文件的后面。例如:
$ls -l >> dirfile
$cat dirfile
-rw-r--r-- 2 cl user 21 Dec 3 12:37clfile
-rw-rw-r-- 2 cxp user 27 Dec 3 12:33cxpfile
-rw-r--r-- 2 cl user 21 Dec
三、常见命令的分类
Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。
不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。
◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。
login
1.作用
login的作用是登录系统,它的使用权限是所有用户。
2.格式
login [name][-p ][-h 主机名称]
3.主要参数
-p:通知login保持现在的环境参数。
-h:用来向远程登录的之间传输用户名。
如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。
一般界面是这样的:
Manddrake Linux release 9.1(Bamboo) for i586
renrel 2.4.21-0.13mdk on i686 / tty1
localhost login:root
password:
上面代码中,第一行是Linux发行版本号,第二行是内核版本号和登录的虚拟控制台,我们在第三行输入登录名,按“Enter”键在Password后输入账户密码,即可登录系统。出于安全考虑,输入账户密码时字符不会在屏幕上回显,光标也不移动。
登录后会看到下面这个界面(以超级用户为例):
[root@localhost root]#
last login:Tue ,Nov 18 10:00:55 on vc/1
上面显示的是登录星期、月、日、时间和使用的虚拟控制台。
4.应用技巧
Linux是一个真正的多用户操作系统,可以同时接受多个用户登录,还允许一个用户进行多次登录。这是因为Linux和许多版本的Unix一样,提供了虚拟控制台的访问方式,允许用户在同一时间从控制台(系统的控制台是与系统直接相连的监视器和键盘)进行多次登录。每个虚拟控制台可以看作是一个独立的工作站,工作台之间可以切换。虚拟控制台的切换可以通过按下Alt键和一个功能键来实现,通常使用F1-F6 。
例如,用户登录后,按一下“Alt+F2”键,用户就可以看到上面出现的“login:”提示符,说明用户看到了第二个虚拟控制台。然后只需按“Alt+ F1”键,就可以回到第一个虚拟控制台。一个新安装的Linux系统允许用户使用“Alt+F1”到“Alt+F6”键来访问前六个虚拟控制台。虚拟控制台最有用的是,当一个程序出错造成系统死锁时,可以切换到其它虚拟控制台工作,关闭这个程序。
shutdown
1.作用
shutdown命令的作用是关闭计算机,它的使用权限是超级用户。
2.格式
shutdown [-h][-i][-k][-m][-t]
3.重要参数
-t:在改变到其它运行级别之前,告诉init程序多久以后关机。
-k:并不真正关机,只是送警告信号给每位登录者。
-h:关机后关闭电源。
-c:cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。
-F:在重启计算机时强迫fsck。
-time:设定关机前的时间。
-m: 将系统改为单用户模式。
-i:关机时显示系统信息。
4.命令说明
shutdown命令可以安全地将系统关机。有些用户会使用直接断掉电源的方式来关闭Linux系统,这是十分危险的。因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备(硬盘)。在系统关机前使用 shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录。
halt
1.作用
halt命令的作用是关闭系统,它的使用权限是超级用户。
2.格式
halt [-n] [-w] [-d] [-f] [-i] [-p]
3.主要参数说明
-n:防止sync系统调用,它用在用fsck修补根分区之后,以阻止内核用老版本的超级块覆盖修补过的超级块。
-w:并不是真正的重启或关机,只是写wtmp(/var/log/wtmp)纪录。
-f:没有调用shutdown,而强制关机或重启。
-i:关机(或重启)前,关掉所有的网络接口。
-f:强迫关机,不呼叫shutdown这个指令。
-p: 当关机的时候顺便做关闭电源的动作。
-d:关闭系统,但不留下纪录。
4.命令说明
halt就是调用shutdown -h。halt执行时,杀死应用进程,执行sync(将存于buffer中的资料强制写入硬盘中)系统调用,文件系统写操作完成后就会停止内核。若系统的运行级别为0或6,则关闭系统;否则以shutdown指令(加上-h参数)来取代。
reboot
1.作用
reboot命令的作用是重新启动计算机,它的使用权限是系统管理者。
2.格式
reboot [-n] [-w] [-d] [-f] [-i]
3.主要参数
-n: 在重开机前不做将记忆体资料写回硬盘的动作。
-w: 并不会真的重开机,只是把记录写到/var/log/wtmp文件里。
-d: 不把记录写到/var/log/wtmp文件里(-n这个参数包含了-d)。
-i: 在重开机之前先把所有与网络相关的装置停止。
install
1.作用
install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户。
2.格式
(1)install [选项]... 来源 目的地
(2)install [选项]... 来源... 目录
(3)install -d [选项]... 目录...
在前两种格式中,会将<来源>复制至<目的地>或将多个<来源>文件复制至已存在的<目录>,同时设定权限模式及所有者/所属组。在第三种格式中,会创建所有指定的目录及它们的主目录。长选项必须用的参数在使用短选项时也是必须的。
3.主要参数
--backup[=CONTROL]:为每个已存在的目的地文件进行备份。
-b:类似 --backup,但不接受任何参数。
-c:(此选项不作处理)。
-d,--directory:所有参数都作为目录处理,而且会创建指定目录的所有主目录。
-D:创建<目的地>前的所有主目录,然后将<来源>复制至 <目的地>;在第一种使用格式中有用。
-g,--group=组:自行设定所属组,而不是进程目前的所属组。
-m,--mode=模式:自行设定权限模式 (像chmod),而不是rwxr-xr-x。
-o,--owner=所有者:自行设定所有者 (只适用于超级用户)。
-p,--preserve-timestamps:以<来源>文件的访问/修改时间作为相应的目的地文件的时间属性。
-s,--strip:用strip命令删除symbol table,只适用于第一及第二种使用格式。
-S,--suffix=后缀:自行指定备份文件的<后缀>。
-v,--verbose:处理每个文件/目录时印出名称。
--help:显示此帮助信息并离开。
--version:显示版本信息并离开。
mount
1.作用
mount命令的作用是加载文件系统,它的用权限是超级用户或/etc/fstab中允许的使用者。
2.格式
mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir
3.主要参数
-h:显示辅助信息。
-v:显示信息,通常和-f用来除错。
-a:将/etc/fstab中定义的所有文件系统挂上。
-F:这个命令通常和-a一起使用,它会为每一个mount的动作产生一个行程负责执行。在系统需要挂上大量NFS文件系统时可以加快加载的速度。
-f:通常用于除错。它会使mount不执行实际挂上的动作,而是模拟整个挂上的过程,通常会和-v一起使用。
-t vfstype:显示被加载文件系统的类型。
-n:一般而言,mount挂上后会在/etc/mtab中写入一笔资料,在系统中没有可写入文件系统的情况下,可以用这个选项取消这个动作。
4.应用技巧
在Linux和Unix系统上,所有文件都是作为一个大型树(以/为根)的一部分访问的。要访问CD-ROM上的文件,需要将CD-ROM设备挂装在文件树中的某个挂装点。如果发行版安装了自动挂装包,那么这个步骤可自动进行。在Linux中,如果要使用硬盘、光驱等储存设备,就得先将它加载,当储存设备挂上了之后,就可以把它当成一个目录来访问。挂上一个设备使用mount命令。在使用mount这个指令时,至少要先知道下列三种信息:要加载对象的文件系统类型、要加载对象的设备名称及要将设备加载到哪个目录下。
(1)Linux可以识别的文件系统
◆ Windows 95/98常用的FAT 32文件系统:vfat ;
◆ Win NT/2000 的文件系统:ntfs ;
◆ OS/2用的文件系统:hpfs;
◆ Linux用的文件系统:ext2、ext3;
◆ CD-ROM光盘用的文件系统:iso9660。
虽然vfat是指FAT 32系统,但事实上它也兼容FAT 16的文件系统类型。
(2)确定设备的名称
在Linux中,设备名称通常都存在/dev里。这些设备名称的命名都是有规则的,可以用“推理”的方式把设备名称找出来。例如,/dev/hda1这个 IDE设备,hd是Hard Disk(硬盘)的,sd是SCSI Device,fd是Floppy Device(或是Floppy Disk?)。a代表第一个设备,通常IDE接口可以接上4个IDE设备(比如4块硬盘)。所以要识别IDE硬盘的方法分别就是hda、hdb、hdc、 hdd。hda1中的“1”代表hda的第一个硬盘分区 (partition),hda2代表hda的第二主分区,第一个逻辑分区从hda5开始,依此类推。此外,可以直接检查/var/log/messages文件,在该文件中可以找到计算机开机后系统已辨认出来的设备代号。
(3)查找挂接点
在决定将设备挂接之前,先要查看一下计算机是不是有个/mnt的空目录,该目录就是专门用来当作挂载点(Mount Point)的目录。建议在/mnt里建几个/mnt/cdrom、/mnt/floppy、/mnt/mo等目录,当作目录的专用挂载点。举例而言,如要挂载下列5个设备,其执行指令可能如下 (假设都是Linux的ext2系统,如果是Windows XX请将ext2改成vfat):
软盘 ===>mount -t ext2 /dev/fd0 /mnt/floppy
cdrom ===>mount -t iso9660 /dev/hdc /mnt/cdrom
SCSI cdrom ===>mount -t iso9660 /dev/sdb /mnt/scdrom
SCSI cdr ===>mount -t iso9660 /dev/sdc /mnt/scdr
不过目前大多数较新的Linux发行版本(包括红旗 Linux、中软Linux、Mandrake Linux等)都可以自动挂装文件系统,但Red Hat Linux除外。
umount
1.作用
umount命令的作用是卸载一个文件系统,它的使用权限是超级用户或/etc/fstab中允许的使用者。
2.格式
unmount -a [-fFnrsvw] [-t vfstype] [-n] [-rw] [-F] device dir
3.使用说明
umount命令是mount命令的逆操作,它的参数和使用方法和mount命令是一样的。Linux挂装CD-ROM后,会锁定CD—ROM,这样就不能用CD-ROM面板上的Eject按钮弹出它。但是,当不再需要光盘时,如果已将/cdrom作为符号链接,请使用umount/cdrom来卸装它。仅当无用户正在使用光盘时,该命令才会成功。该命令包括了将带有当前工作目录当作该光盘中的目录的终端窗口。
chsh
1.作用
chsh命令的作用是更改使用者shell设定,它的使用权限是所有使用者。
2.格式
chsh [ -s ] [ -list] [ --help ] [ -v ] [ username ]
3.主要参数
-l:显示系统所有Shell类型。
-v:显示Shell版本号。
4.应用技巧
前面介绍了Linux下有多种Shell,一般缺省的是Bash,如果想更换Shell类型可以使用chsh命令。先输入账户密码,然后输入新Shell类型,如果操作正确系统会显示“Shell change”。其界面一般如下:
Changing fihanging shell for cao
Password:
New shell [/bin/bash]: /bin/tcsh
上面代码中,[ ]内是目前使用的Shell。普通用户只能修改自己的Shell,超级用户可以修改全体用户的Shell。要想查询系统提供哪些Shell,可以使用chsh -l 命令,见图1所示。
图1 系统可以使用的Shell类型
从图1中可以看到,笔者系统中可以使用的Shell有bash(缺省)、csh、sh、tcsh四种。
exit
1.作用
exit命令的作用是退出系统,它的使用权限是所有用户。
2.格式
exit
3.参数
exit命令没有参数,运行后退出系统进入登录界面。
last
1.作用
last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户。通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统。
2.格式
1ast[—n][-f file][-t tty] [—h 节点][-I —IP][—1][-y][1D]
3.主要参数
-n:指定输出记录的条数。
-f file:指定用文件file作为查询用的log文件。
-t tty:只显示指定的虚拟控制台上登录情况。
-h 节点:只显示指定的节点上的登录情况。
-i IP:只显示指定的IP上登录的情况。
-1:用IP来显示远端地址。
-y:显示记录的年、月、日。
-ID:知道查询的用户名。
-x:显示系统关闭、用户登录和退出的历史。
动手练习
上面介绍了Linux安装和登录命令,下面介绍几个实例,动手练习一下刚才讲过的命令。
1.一次运行多个命令
在一个命令行中可以执行多个命令,用分号将各个命令隔开即可,例如:
#last -x;halt
上面代码表示在显示系统关闭、用户登录和退出的历史后关闭计算机。
2.利用mount挂装文件系统访问Windows系统
许多Linux发行版本现在都可以自动加载Vfat分区来访问Windows系统,而Red Hat各个版本都没有自动加载Vfat分区,因此还需要进行手工操作。
mount可以将Windows分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下,从而将Windows的分区和/mnt这个目录联系起来。因此,只要访问这个文件夹就相当于访问该分区了。首先要在/mnt下建立winc文件夹,在命令提示符下输入下面命令:
#mount -t vfat /dev/hda1 /mnt/winc
即表示将Windows的C分区挂到Liunx的/mnt/winc目录下。这时,在/mnt/winc目录下就可以看到Windows中C盘的内容了。使用类似的方法可以访问Windows系统的D、E盘。在Linux系统显示Windows的分区一般顺序这样的:hda1为C盘、hda5为D盘、 hda6为E盘……以此类推。上述方法可以查看Windows系统有一个很大的问题,就是Windows中的所有中文文件名或文件夹名全部显示为问号 “?”,而英文却可以正常显示。我们可以通过加入一些参数让它显示中文。还以上面的操作为例,此时输入命令:
#mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/winc
现在它就可以正常显示中文了。
3.使用mount加挂闪盘上的文件系统
在Linux下使用闪盘非常简单。Linux对USB设备有很好的支持,当插入闪盘后,闪盘被识别为一个SCSI盘,通常输入以下命令:
# mount /dev/sda1 /usb
就能够加挂闪盘上的文件系统。
小知识
Linux命令与Shell
所谓Shell,就是命令解释程序,它提供了程序设计接口,可以使用程序来编程。学习Shell对于Linux初学者理解Linux系统是非常重要的。 Linux系统的Shell作为操作系统的外壳,为用户提供了使用操作系统的接口。Shell是命令语言、命令解释程序及程序设计语言的统称,是用户和 Linux内核之间的接口程序。如果把Linux内核想象成一个球体的中心,Shell就是围绕内核的外层。当从Shell或其它程序向Linux传递命令时,内核会做出相应的反应。Shell在Linux系统的作用和MS DOS下的COMMAND.COM和Windows 95/98 的 explorer.exe相似。Shell虽然不是系统核心的一部分,只是系统核心的一个外延,但它能够调用系统内核的大部分功能。因此,可以说 Shell是Unux/Linux最重要的实用程序。
Linux中的Shell有多种类型,其中最常用的是Bourne Shell(sh)、C Shell(csh)和Korn Shell(ksh)。大多数Linux发行版本缺省的Shell是Bourne Again Shell,它是Bourne Shell的扩展,简称bash,与Bourne Shell完全向后兼容,并且在Bourne Shell的基础上增加了很多特性。bash放在/bin/bash中,可以提供如命令补全、命令编辑和命令历史表等功能。它还包含了很多C Shell和Korn Shell中的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。Linux系统中200多个命令中有40个是bash的内部命令,主要包括 exit、less、lp、kill、 cd、pwd、fc、fg等。
发表评论
-
Linux,设置启动时直接进入命令行模式
2010-12-01 22:51 1419编辑 /etc/inittab 配置文件,将 id:5:ini ... -
linux下mysql的安装和使用,远程连接;
2010-12-01 21:23 2492本次系统是Red Hat Enterprise Linux 5 ... -
redhat5 卸载自带的jdk1.4
2010-11-30 22:05 2114用root用户登陆到系统,打开一个终端输入# rpm -qa| ... -
vsftpd登录出错问题:500 OOPS: cannot change directory:/root
2010-11-29 23:20 3633可以在windows上使用一ftp客户端来尝试进行登录。这个时 ...
相关推荐
linux命令大全linux指令大全(完整篇).pdf
Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 Linux命令大全 ...
本文将详细解读《Linux命令大全完整版.pdf》中所收录的各类命令,以帮助读者更好地理解和运用Linux命令。 1. Linux系统管理命令 系统管理命令是Linux系统中最重要的命令类别之一,涵盖了用户管理、进程控制、系统...
Linux 指令大全 Linux 操作系统提供了丰富的命令来管理和维护系统。下面是 Linux 指令大全的 档案目录管理 ...这些命令只是 Linux 指令大全的一部分,掌握这些命令可以帮助您更好地管理和维护 Linux 系统。
linux命令大全linux指令大全(完整篇)汇编.pdf
Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux命令大全Linux...