分类: LINUX
2009-10-19 14:18:54
简介:
这是包含在Linux软件包里(RedHat或者Mandrake),我们比较经常使用和比较有用的一些命令集合。在你当前路径的命令提示行下按
以下给那些对Linux没有概念的新手:
切换到第一个文本终端。在Linux下你可以有多达六个不同的终端。这个命令的意思是:“同时按住
切换到第n个文本终端。(你也可以使用不是很经常用到的命令chvt n 来实现,n指的是第n个文本终端)。在文本终端下(不是在X窗口),你也可以简单使用
打印出你正在使用的终端名称,如果你希望知道终端的名字,可以使用命令fgconsole。
切换到第一个图形用户界面(一般来说X-window在第七个终端)
切换到第n个图形用户街面。根据缺省,第一个X-Window在第7个终端运行,从第8到第12什么也没有,当然你可以逐个启动这些图形用户界面。
(在文本终端下)可以使用TAB自动完成命令,或者显示所有的可选项。这个快捷键真的非常好用,经常使用你会发觉它可以节约你很多的时间。
(在文本终端或者X窗口下)滚动和编辑以前输入的命令。按
回滚
滚动终端输出。对于登录提示也起作用,所以你可以使用它回滚启动信息。你显卡的内存大小决定你可以回滚多少内容
回滚终端输出
(在X窗口下) 改变X服务器的屏幕解析率 (如果你设置X服务器有多个不同的屏幕解析率)。比如对于我的标准SVGA卡和显示器,在文件/etc/X11/XF86Config有以下的设置行: (从缺省开始,到可以支持的最大虚拟屏幕解析率)
Modes "1024x768" "800x600" "640x480" "512x384" "480x300" "400x300" "1152x864"Z
当然,首先我必须设置我的X服务器,可以使用using Xconfigurator, xf86config, 也可以手工编辑文件:/etc/X11/XF86Config。XFdrake (Mandrake使用图形用户界面进行配置 )。你也可以参考命令xvidtune和xvidgen。
(在X窗口下)把X服务器的屏幕解析率修改到上一次的设置。
(在X窗口,KDE下)关闭我鼠标将要指向的窗口(鼠标的光标形状会有所改变)。同样的效果也可以使用命令xkill(在X终端上)来实现。当一个程序窗口被挂住的时候特别有用。
(在X窗口下) 终止当前的 X窗口服务。如果X窗口不能正常退出时可以使用。
(适用于文本终端下)关机和重新启动。这是一个在文本终端下的正常关机命令,千万不要按计算机上的reset键来重新关机和重新启动!
终止当前进程(对于一般的小型文本模式的应用程序)
(在一个空白的命令行上输入)退出当前的终端。参加下一个命令。
给当前的进程送文件结束符合。不要按两次否则你会把自己退出系统。
停止终端传输
从新开始终端传输。如果你的终端突然莫名其妙的停止响应,可以参考上一条命令。
把当前进程送到后台处理。
exit
退出系统。我也可以使用logout命令达到同样效果。(如果你启动了第二个shell程序,比如,使用bash,这条命令将使你退出第二个shell回到第一个shell,但是不会退出系统。当然,可以再一次使用exit退出)
reset
恢复崩溃的终端(有些终端显示一些奇怪的字符)到缺省的设置。当你使用cat命令准备显示一个二进制文件时,你可能看不到你所输入的命令,尽管命令仍然照常工作。
<鼠标的中间键>
粘贴当前选择的文本。这是一个常规的Linux“复制-粘贴”操作。它是对被广泛采用的通信用户界面下“复制-粘贴”操作的一个非常有用的扩展(但是它不支持旧版本的NetScape,因为在旧版的NetScape只能使用MAC/Windows风格的“复制-粘贴”操作。如果你运行“setup”程序进行设置,你可以在文本终端下使用这个功能。而且它在大多数的对话框里也能很好的工作,真的非常方便!)如果你有一个“Linux-Ready”的鼠标(logitec或者其类似产品)或者你通过使用“模拟三键鼠标”,这个功能可以得到最大限度的发挥。一般来说,“第三键”的模拟是通过同时点击左右两个鼠标键来实现。
~
(水文符合) 我的主目录(一般来书是/home/我的登录名)。举例,命令~/my_dir将修改我的工作目录到我的主目录的子目录”my_dir”下。相对于输入”cd ~”,你也可以只输入”cd”,我把我的所有文件都放在自己的主目录下。
.
(点符号) 当前目录。举例:./my_program 将试图执行当前目录下的"my_program"文件
..
(两个点)到当前的上一级目录(也叫“父目录”)。举个例子,命令“cd..”将修改我的当前工作目录到上一级目录。
一些KDE的快捷键(很有用,但不是非要不可的)
切换不同的程序窗口。往回切换,使用
切换不同的桌面。往回切换,使用
显示我系统里正在运行的进程列表。允许我终止那些由我启动的进程(或者送信号给这些进程)
访问K菜单 (对等于微软Windows的的“开始”菜单).
使用键盘上的箭号键模拟鼠标的操作
拖曳并移动一个窗口。一般来说,我通过拖曳窗口的题目栏来移动一个窗口。有些时候,我用它把
一个窗口移动到屏幕之外。使用这个功能,我可以把窗口移动到屏幕的任何位置。
把当前屏幕的快照存到剪贴板
把当前桌面的快照存到剪贴板
锁定桌面
切换隐藏/显示桌面的功能(当老板走过来的时候迅速藏起你的纸牌接龙游戏非常管用哦!)
这是在Linux的内核(底层内核)上支持的一组组合键。它意味着这些组合键在大部分情况下都是有效的。组合键主要是针对开发人员的程序调试目的或者在紧急场合下才使用;你也可以使用其他的办法,安全第一。
终止在当前虚拟终端上运行的所有进程(包括X窗口)。这个组合键被称为“安全访问键“(SAK).
发送 TERM 信号(结束信号)到除了init进程以外的所有运行进程,要求其退出
发送 KILL (终止信号)到除了init进程以外的所有运行进程, 这个组合键比上一个更加有效,但是也可能引起一些程序被异常终止。
发送KILL命令到所有运行进程(包括init),系统将不再能够使用
在所有的挂载文件系统上运行紧急同步(缓存写) 。这可以保护数据丢失
以只读模式重新挂载所有已加载的文件系统。这和上面的同步组合键有相同的功能,但是另外有一个好处:如果操作顺利完成,下一次硬件重新启动时,fsck将不会重新检查所有的文件系统。
程序启动。
不进行同步和卸载就立刻重新启动系统。之后你可能会碰到一下错误信息。
关机 (如果正确设置以后)
导出当前的寄存器和标志到控制台
导出当前任务和相关信息到控制台
导出内存的内容到控制台
“数字”从0到9。设置控制台记录的级别,用于控制哪一些内核信息将被显示在控制台上。举例,“0”意味着只有象PANIC和OOPS的之类的紧急信息才被显示在控制台上。
显示帮助信息。还有,任何其他不被支持的
命令名 –help | more
显示一个简略的命令帮助(对大部分命令有效)。举个例子,试着使用 “cp –help | more”。“--help”和和DOS下的“/h”开关功能类似。当输出超过一个屏幕时,加上“more”是很有必要的。
man 命令名
显示对应命令系统的帮助手册。输入“q”退出浏览器。如果你设置了高级选项,试着输入“man man”。命令“info 命令名” 和命令“man 命令名”功能相似,但是包含更多的最新信息。帮助手册对于新手可能有点难于读懂——因为它们最初是写来给UNIX程序员看的。使用“命令名 –help”可以得到一个简略容易消化的命令帮助。有些程序自带README文件或者其他帮助信息文件----建议你可以看看目录/usr/share/doc。在指定的部分显示命令帮助,可以使用这样的命令“man 3 exit”,这个命令只显示exit命令帮助手册的“第三部分”;或者使用命令“man –a exit”, 这个命令显示exit命令帮助手册的“所有部分”。exit命令帮助的所有部分是: 1-用户命令;2-系统调用;3-子调用;4-设备;5-文件格式;6-游戏;7-杂项;8-系统管理;9-新内容。打印完整的命令帮助,可以使用命令“man 命令名 | col -b | lpr”(可选项col –b删除所有的退格键和一些难以阅读的特殊字符)。
info 命令名
显示指定命令的帮助信息。info 命令是取代man 命令的一个好处是,它通常带有最近更新的系统资料。多使用“空格键”和“退格键”,否则你可能会晕头转向。按“q”键退出。如果觉得用于翻阅的办法不太好用――你也可以试着使用pinfo命令,看你会不会更喜欢这个替代品。
apropos 命令名
对所输入的命令名给出一个帮助一览表。
whatis 命令名
给出匹配所输入命令名的简短清单。whatis命令有点象apropos――它们使用相同的数据库。不同的是,whatis搜索的是关键字,apropos搜索的是关键字的具体描述。
help 命令名
显示bash shell内置命令的简单信息。使用 help 命令不带任何参数将显示bash shell所有内置的命令。最短的bash shell内置命令应该包括:alias, bg, cd, echo, exit, export, help, history, jobs, kill, logout, pwd, set, source, ulimit, umask, unalias, unset.
kdehelp
kdehelpcenter
(在X-终端下有效, 使用在你的系统上可以工作的那一个命令). 使用图形的浏览器显示整个系统的帮助。一般来说,KDE帮助通过把对应的图标放在KDE控制板上来实现。对等的GNOME帮助系统可以使用gnome-help-browser命令。
pwd
输出工作目录。举例,在屏幕上显示我当前所在的目录
hostname
输出本地主机的名称(我正在使用的这一台机器)。使用netconf修改机器的名称(要求超级用户权限)
whoami
输出我的登录名称
id username
输出用户标识ID(UID)和其对应的用户组标识ID(GID),有效的ID(如果不同于真正的用户ID)和所属的其他用户组
date
输出操作系统的当前日期,时间和时区。如果要以ISO标准格式输出,我必须使用命令“date –Iseconds”。
我可以修改当前的日期和时间到2003-12-31 23:57,使用命令:date 123123572003。或者使用两个命令(比较容易理解和记住):
date –-set 2003-12-31
date –set 23:57:00
如果要重新设置硬件时钟(BIOS),可以使用命令setclock,要求超级用户权限。
time
侦测一个进程所需要的时间加上其他处理的时间的总和。不要和上面提到的date命令混淆。比如,我可以使用命令“time ls”来判断显示一个目录需要多长时间;或者我可以使用命令“time sleep 10”来测试time命令(睡眠10秒钟,什么也不做)。
clock
(两个命令中的一个)从计算机的硬件(由电池供应的实时的硬件时钟)获得日期/时间。你可以使用这个命令来设置硬件时钟,但是setclock可能简单一些(看前面的两个命令)。举例:“hwclock –systohc –utc”命令把系统时钟设置到硬件时钟(以UTC格式)。
who
显示登录在系统里的用户
w
显示登录在系统里的用户,检查他们正在做什么以及他们的处理器使用状况。属于常用的安全方面的命令。
rwho -a
(=remote who,远端的who命令)。显示网络里其他计算机的用户登录状况。这个命令要求rwho服务必须在远端机器上运行。如果没有,以root用户运行setup(RedHat特有)激活“rwho”。
finger 用户名
显示对于一个用户的系统信息。可以试一下命令:finger root。任何人都可以使用finger命令访问任何一台连接到因特网提供finger服务的计算机。比如:finger @finger.kernel.org
last
显示最后一个登录到系统的用户。经常运行这个命令作为系统安全检测的手段之一是一个绝好的主意。
lastb
(“=last bad”,最后一个坏的)显示最后一个不成功的登录尝试。但是这个命令在我的系统上不能工作,所以你可能要使用:touch /var/log/btmp
“/var/log/btmp在一般的系统安装里无效的主要原因是因为:它是一个包含登录的出错信息的完全可读的文件。一个用户登录时最经常犯的错误是输入用户密码作为用户名,这样,文件/var/log/btmp对计算机黑客来说简直是一个礼物”。(谢谢Bruce Richardson提供这个信息)。
如果要解决这个问题,修改该文件的文件访问权限为只有root用户才可以使用命令“lastb”。命令:“chmod o-r /var/log/btmp”
history | more
显示当前用户在命令行模式下执行的最后(1000个)命令。参数“|more”在输出满屏时暂停。如果要检查其他用户在你系统上都运行了什么,以root用户登录,检查在该用户主目录下的文件“.bash_history”(没错,该文件可以被修改和删除)。
uptime
显示自从上一次启动到现在机器运行的总时间。
ps
(= “print status”或者 “process status”,打印状态或者处理状态)列出由当前用户运行的进程一览。
ps axu | more
列出当前运行的所有进程,包括那些不是来自控制终端的进程,在显示用户进程的同时显示用户名。
top
持续列出正在运行的所有进程,按CPU的占用率排序(占用率高的排在最前面)。按
PID = 用户标识
USER = 启动或者拥有该进程的用户.
PRI = 进程的优先级别(值越大,优先级别越低,一般进程是0,最高的级别是-20,最低的级别是20。
NI = 优化级别(比如,进程试图以预先给定的优先级别的数值来运行)。数值越高,进程的优化级别也越高(优先级别越低)
SIZE = 进程加载到内存的代码+数据+堆栈的字节总数(以千字节计算)
RSS = 物理内存被占用的大小(以千字节计算)
SHARE = 和其他进程共享的内存(以千字节计算)
STAT = 进程的当前状态 S-睡眠, R-运行,T-停止或者被跟踪,D-不可中断的睡眠,Z-不死的进程
%CPU = CPU占用虑百分比(自从上一次屏幕更新以来)
%MEM = 共享物理内存的占用率
TIME = 进程占用的CPU时间 (自从进程启动以来)
COMMAND=启动该任务使用的命令行(小心命令行里出现的密码等信息,有权限运行top命令的用户都可以看见它们!)
gtop
ktop
(X终端)在图形用户界面下的两个top功能。我比较习惯使用gtop(在gnome自带)。在KDE环境下,ktop在K菜单的“System”菜单下的“Task Manager”里。
uname –a
(=“Unix Name”带可选项“all”)显示你本地计算机信息。也可以使用通信用户界面的guname(X终端下)得到更好的信息显示。
XFree86 –version
显示本地计算机的X-Windows的版本。
cat /etc/issue
检查你的发行版本。你也可以把你自己的信息放到文件/etc/issue里――在用户登录的时候会显示。如果你想要显示更多的信息,还有一个比较常见的做法是把本地专有的登录信息内容放在文件/etc/motd里 (“motd”=“message of the day”,当天信息)
free
内存的信息(以千字节显示)。“共享”内存是指可以被多个进程共同享有的内存(比如,可执行代码是“共享”的)。“缓冲”和“缓存”则是用来保留最近访问的文件和数据――当其他进程需要更多的内存时候这些内容可以被减缩。
df -h
(=disk free 硬盘剩余空间) 输出所有文件系统的硬盘信息(以易读的模式, h-human readable, 人类可读)
du /-bh | more
(=disk usuage, 硬盘使用状况)输出根目录“/”下每个子目录具体的硬盘使用状况
cat /proc/cpuinfo
CPU信息――它显示文件cpuinfo的内容。要注意的是文件在/proc目录下不是真正的文件――它们只是在观察内核信息时起连接的作用。
cat /proc/interrupts
显示正在使用的中断号。在配置一个新硬件的时候可能需要浏览一下。
cat /proc/version
Linux的版本和其他信息
cat /proc/filesystems
显示当前使用的文件系统的类型
cat /etc/printcap |more
显示打印机的设置
lsmod
(= "list modules". 显示模块。必须是root用户,如果不是,使用命令/sbin/lsmod执行)显示当前已经加载的内核模块 .
set|more
显示当前的用户环境(全部显示)。一般来说东西太多了。
echo $PATH
显示环境变量“PATH”的内容。这个命令也可以用来显示其他的环境变量。使用set来察看所有的环境变量(和前一个命令功能相同)
dmesg | less
输出内核信息(也就是常说的内核内部缓存信息)。按“q”退出“less”。也可以使用 “less /var/log/dmesg”来直接检查最近一次系统启动时“dmesg”输出到文件里的内容。
chage -l my_login_name
查看我的密码过期信息
quota
查看我的硬盘区间(硬盘使用的限制)
sysctl -a |more
显示所有可设置的Linux内核参数
runlevel
输出和前一个和当前的运行级别(runlevel)。输出“N5”意味着:“没有前一个运行级别”和“5是当前的运行级别”。要修改运行级别,使用“init”,举例:“init 1”把当前的运行级别切换到“单用户模式”。
运行级别是Linux的操作模式。运行级别可以使用init命令进行快捷的修改。举例,“init 3”将把模式切换到运行级别3,以下是运行级别的标准:
0-中断 (不要把系统初始设置“initdeafult”设成这个值)
1-单用户模式
2-多用户模式,不带NFS(如果你没有网络,和运行级别3相同)
3-全功能多用户模式
4-目前没有使用
5-X11 (图形用户界面)
6-重新启动(不要把系统初始设置“initdeafult”设成这个值)
系统的初始运行级别设置在文件:/etc/inittab里
sar
查看抽取系统活动记录文件信息(/var/log/sarxx, 其中xx指的是当前的日期)。sar可以抽取很多种系统统计信息,包括CPU的平均载荷,i/o的统计,当天的网络流量统计或者是几天以前的数据。
kghostview my_file.ps
(在X终端上)在屏幕上显示一个postscript(或pdf)文件。我也能用看起来比较旧的ghostview 或gv来达到同样的效果。我也能够从视窗中打印postscript文件。
xpdf my_file.pdf
(在X终端上)查看一个pdf文件。要查看pdf文件,我更愿意使用Adobe Acrobat Reader的 Linux版本(会快一些)。
acroread my_file.pdf
你可以从下载它。
enscript my_file.txt –U 2
将一个文本文件转换为postscript格式并在缺省打印机上打印出来。我还能将输出发送到一个 postscript文件。
enscript my_file.txt –U 2 –o my_file.ps
选项-U 2使enscript在一张纸当打印2页逻辑页面,这样可以节省纸张,并带来方便,压缩打印输出。你还可以选择每页纸4页逻辑页,一页纸上打印得越多,就越难认。 Enscript真的很灵活,详见man enscript,在许多格式选项中进行选择。
ps2pdf my_file.ps my_file.pdf
从一个postscript文件生成一个pdf(Adobe portable document format)文件。
mpage –2 my_file.ps > new_file.ps
打印postscript文件my_file.ps,在一个物理页上输出两个逻辑页。将输出结果保存在文件new_file.ps中。
ps2ps file.ps new_file.ps
psnup –nup 2 –pletter new_file.ps new_file2.ps
生成一个物理页上包含两个逻辑页的文件的另一种方法。首先,我用“postscript distiller”将一个postscript文件简化(代价是文件变得大一点)。然后,我用psnup工具产生new_file2.ps文件,它每一个物理页包含两个逻辑页。我也可以将四或八个逻辑页放到一个物理页上。
gimp
(在X终端上)一个看起来不怎么样但功能非常强大的图像处理器。要学习一段时间才能使用,但它对艺术家来说真是太好了,几乎没有什么不能处理的。用你的鼠标右键调出本地菜单,学习怎样使用图层。将你的文件保存为本地的gimp文件格式*.xcf(保存图层,供以后编辑),只有将其平面化(flatten)并保存为png格式(或其他什么格式),你才可以使用。“学会如何做出正确的选择是关键。”
gphoto
(在X终端上)强大的照片编辑器和相机图像检测程序。
kpaint
(在X终端上)简单的位图画图程序(“画笔”类型)。
xfig
(在X终端上)一个简单的画图程序。对于制作基本的草图或流程图非常有用。
dia
(在X终端上)一个用预制组件画流程图的工具。
display my_picture
(在X终端上)显示一幅图片,只能浏览。你还可以输入display &,然后从菜单中选择文件睐查看图像,旋转,改变颜色,采用特定效果,等等。 Display是ImageMagick软件包的一部分,在一起的还有下面描述的几个实用工具。
identify –verbose my_picture
给出关于图像文件my_picture的描述:格式、类型、分类、大小(以像素为单位)、颜色数量、大小(以字节为单位)、等等。
convert –geometry 60x80 mypicture.gif out_small_picture.gif
将一个图片转换为60x80像素尺寸。下面有一个关于如何在不同图形文件格式进行转换的例子。
animate –delay 6x5 pic1 pic2 pic3
连续显示两个或多个图片。在示例中,图片文件名为pic1,pic2,pic3,图片的间隔时间为0.06秒,整个展示过程在5秒中之内反复进行。
combin pic1 pic2 combined_pic.miff
将两个或多个图像加到另一个图像中。例如你可以将一个图标加到每个图像中。
montage –geometry 800x600+0+0 my_picture montage.niff
从my_picture文件生成一个平铺的图像上,尺寸为800x600,边框为0x0。输出结果送到 montage.miff。
zgv my_picture
在一个vga屏幕上显示一个图片以供浏览。
giftopnm my_file.giff > my_file.pnm
pnmtopng my_file.pnm > my_file.png
将一个有版权的图形文件转换为一个原始的、方便的pnm文件。然后将pnm文件转换为png文件,png文件是Internet图片的更新更好的标准(技术上更好,再加上没有被giff专利拥有者控告的危险)。
xwd –out my_cupture_screen_file.xwd
(在X终端上)捕捉X-windows屏幕上的内容,并保存到X-windows“转存”图像文件(*.xwd)。以后你可以使用转换工具将xwd文件转换为你喜欢的格式。在KDE环境下,你可以使用键盘快捷键
convert my_capture_screen_file.xwd my_capture_screen.jpg
将X-windows屏幕转存文件*.xwd转换为*.jpg格式文件。这个转换工具能够对很多文件格式进行转换。
import –display 192.5.100.10:0 –window root my_file.jpeg
从192.5.100.10服务器上显示端口0上运行的X-windows上捕捉root屏幕的内容。输出文件是my_file.jpeg(可以根据所给出的文件扩展名改变文件格式)。为了能够捕捉屏幕的内容,你必须有对屏幕写的权限(在X-终端上运行命令xhost + 可以将这一权限赋予任何用户)。选项见man important。
ksnapshot
(在X终端上)基于GUI的捕捉屏幕内容的工具。
xine Frankenstein.avi &
(在X终端上)。从文件“frankenstein.avi”看电影。看起来你电视。
你的系统上很可能安装了许多小游戏。这个只是从我的标准Linux发行版CD上的一个例子。
kpat
(在X终端上)单人纸牌游戏。sol(快)和pysol(慢但是?)是另外的两个选择。我喜欢:sol –variation=freecell&
xboing
(在X终端上)非常好的弹球游戏。
xboard
(在X终端上)国际象棋。对于我来说很好玩。
koquest &
(在X终端上)和你的儿子进行一场权力的角逐。非常好的板上游戏。
kmines
(在X终端上)扫雷。
civserver
civclient
(在X终端上)(在X终端上)为FreeCivization游戏启动一个服务器(第一个命令)。然后,当服务器运行正常后,启动一个客户端(第二个命令)。有些人也启动其他的客户端程序和你玩。FreeCiv在RH7.0 CD上。
fgfs
“Flight Gear”飞行模拟器。