unix常用命令.docx

上传人:b****2 文档编号:491238 上传时间:2023-04-29 格式:DOCX 页数:28 大小:33.80KB
下载 相关 举报
unix常用命令.docx_第1页
第1页 / 共28页
unix常用命令.docx_第2页
第2页 / 共28页
unix常用命令.docx_第3页
第3页 / 共28页
unix常用命令.docx_第4页
第4页 / 共28页
unix常用命令.docx_第5页
第5页 / 共28页
unix常用命令.docx_第6页
第6页 / 共28页
unix常用命令.docx_第7页
第7页 / 共28页
unix常用命令.docx_第8页
第8页 / 共28页
unix常用命令.docx_第9页
第9页 / 共28页
unix常用命令.docx_第10页
第10页 / 共28页
unix常用命令.docx_第11页
第11页 / 共28页
unix常用命令.docx_第12页
第12页 / 共28页
unix常用命令.docx_第13页
第13页 / 共28页
unix常用命令.docx_第14页
第14页 / 共28页
unix常用命令.docx_第15页
第15页 / 共28页
unix常用命令.docx_第16页
第16页 / 共28页
unix常用命令.docx_第17页
第17页 / 共28页
unix常用命令.docx_第18页
第18页 / 共28页
unix常用命令.docx_第19页
第19页 / 共28页
unix常用命令.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

unix常用命令.docx

《unix常用命令.docx》由会员分享,可在线阅读,更多相关《unix常用命令.docx(28页珍藏版)》请在冰点文库上搜索。

unix常用命令.docx

unix常用命令

零入门级SHELL命令

1.man对你熟悉或不熟悉的命令提供帮助解释

举例:

#manls//就可以查看ls相关的用法

注:

按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。

2.ls查看目录或者文件的属*,列举出任一目录下面的文件

举例:

ls/usr/man或者ls-l

(1).d表示目录(directory),如果是一个"-"表示是文件,如果是l则表示是一个连接文件(link)

(2).表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x)。

3.cp拷贝文件

举例:

#cpfilename1filename2//把filename1拷贝成filename2

#cp1.cnetseek/2.c//将1.c拷到netseek目录下命名为2.c

4.rm删除文件和目录

举例:

#rm1.c//将1.c这个文件删除

5.mv移走目录或者改文件名

举例:

#mvfilename1filename2//将filename1改名为filename2

#mvqib.tgz../qib.tgz//移到上一级目录

6.cd改变当前目录pwd查看当前所在目录完整路径

举例:

#pwd//查看当前所在目录路径

#cdnetseek//进入netseek这个目录

#cd//退出当前目录

7.cat,more命令

将某个文件的内容显示出来。

两个命令所不同的是:

cat把文件内容一直打印出来,而more则分屏显示

举例:

#cat>1.c//就可以把代码粘帖到1.c文件里,按ctrl+d保存代码。

#cat1.c或more1.c//都可以查看里面的内容。

#gcc-o11.c//将1.c编译成.exe文件,我们可以用此命编译出代码。

8.chmod命令权限修改用法:

chmod一位8进制数filename。

举例:

#chmodu+xfilenmame//只想给自己运行,别人只能读//u表示文件主人,g表示文件文件所在组。

o表示其他人;r表可读,w表可写,x表可以运行

#chmodg+xfilename//同组的人来执行

9.clear,date命令

#clear:

清屏,相当与DOS下的cls;date:

显示当前时间。

10.mount加载一个硬件设备

用法:

mount[参数]要加载的设备载入点

举例:

#mount/dev/cdrom

#cd/mnt/cdrom//进入光盘目录

11.su在不退出登陆的情况下,切换到另外一个人的身份

用法:

su-l用户名(如果用户名缺省,则切换到root状态)

举例:

#su-lnetseek(切换到netseek这个用户,将提示输入密码)

12.whoami,whereis,which,id

whoami:

确认自己身份

whereis:

查询命令所在目录以及帮助文档所在目录

which:

查询该命令所在目录(类似whereis)

id:

打印出自己的UID以及GID。

(UID:

用户身份唯一标识。

GID:

用户组身份唯一标识。

每一个用户只能有一个唯一的UID和GID)

举例:

#whoami//显示你自已登陆的用户名

#whereisbin显示bin所在的目录,将显示为:

/usr/local/bin

#whichbin

13.grep,find

grep:

文本内容搜索;find:

文件或者目录名以及权限属主等匹配搜索

举例:

#grepsuccess*  /*查找当前目录下面所有文件里面含有success字符的文件

14.kill可以杀死某个正在进行或者已经是dest状态的进程

举例;#psax

15.passwd可以设置口令

16.history用户用过的命令

举例:

#history//可以显示用户过去使用的命令

17.!

!

执行最近一次的命令

18.mkdir命令

举例:

#mkdirnetseek//创建netseek这个目录

19.tar解压命令

举例:

#tar-zxvfnmap-3.45.tgz//将这个解压到nmap-3.45这个目录里

20.finger可以让使用者查询一些其他使用者的资料

举例:

#finger//查看所用用户的使用资料

#fingerroot//查看root的资料

一.用来发送消息的命令

1.使用write命令

用户可以使用write命令给其他在线用户发送消息。

格式:

#writeusername[tty]

在Shell提示符号输入write,username指接受发送信息的用户名。

如果一个用户多次登录到系统,tty参数指定要发送的终端。

使用write发送信息的前提条件是该用户已经登录到系统。

否则会出现以下提示:

  #writecjh

  write:

cjhisnotloggedin

  可以使用who命令查询登录用户名称。

接着可以输入要发送的信息。

当输入完毕后,键入EOF表示信息结束,用Crtl+D组合键发送信息。

输入内容会出现在用户的屏幕上,同时通信中止。

  如果在网络上可以使用write命令在username后加入主机名称或域名,建立网络通信。

如果要和cao主机上的bj用户通信使用命令:

 #writebj@cao

 可以使用rusers命令列出所有局域网上的登录用户。

2.wall命令

 如果想要发送一条信息给系统中所有用户,可以使用wall命令,wall表示:

writeall。

输入wall,然后编辑信息,如果shell支持可以使用中文。

然后使用Crtl+D组合键发送信息。

这样系统所有登录用户的桌面会收到信息。

如果在网络上,可以使用rwall命令把信息发送到局域网上所有的用户。

3.talk命令

 talk命令可以和另一个登录系统用户实现双向对话。

系统管理员输入信息,用户也可以输入自己的信息。

双方都可以看到交流时的屏幕信息。

格式:

#talkusername

一个例子:

#talkb

对方屏幕显示:

MessagefromTalk_Daemon@at7:

18...

  talk:

connectionrequestedbyb@.

  talk:

respondwith:

talkb@

  然后进入talk分屏界面,双方输入的信息。

会出现的对方的屏幕。

  用户完成会话后使用Crth+C断开连接。

和write一样可以使用在username后加入主机名称或域名,建立网络会话连接。

4.mesg命令

  用户可以阻止其他用户给自己发送消息打断工作,使用mesgn命令禁止其他用户发送消息。

当别人试图再使用write给他发送信息时,发送者将会看见提示:

#write:

userhasmessagesdisabledonpts/n?

  但是超级用户可以给任何用户发送消息,即使用户使用mesgn命令。

要恢复接受信息输入:

#mesg–y

二.系统关机/重启命令

1.shutdown

shutdown命令安全地将系统关机。

有些用户会使用直接断掉电源的方式来关闭linux,这是十分危险的。

因为linux与windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失﹐使系统处于不稳定的状态﹐甚至在有的系统中会损坏硬件设备。

而在系统关机前使用shutdown命令﹐系统管理员会通知所有登录的用户系统将要关闭。

并且login指令会被冻结﹐即新的用户不能再登录。

直接关机或者延迟一定的时间才关机都是可能的﹐还可能重启。

这是由所有进程〔process〕都会收到系统所送达的信号〔signal决定的。

这让像vi之类的程序有时间储存目前正在编辑的文档﹐而像处理邮件〔mail〕和新闻〔news〕的程序则可以正常地离开等等。

shutdown执行它的工作是送信号〔signal〕给init程序﹐要求它改变runlevel。

Runlevel0被用来停机〔halt〕﹐runlevel6是用来重新激活〔reboot〕系统﹐而runlevel1则是被用来让系统进入管理工作可以进行的状态﹔这是预设的﹐假定没有-h也没有-r参数给shutdown。

要想了解在停机〔halt〕或者重新开机〔reboot〕过程中做了哪些动作﹐你可以在这个文件/etc/inittab里看到这些runlevels相关的资料。

shutdown参数说明:

  [-t]在改变到其它runlevel之前﹐告诉init多久以后关机。

  [-r]重启计算器。

  [-k]并不真正关机﹐只是送警告信号给每位登录者〔login〕。

  [-h]关机后关闭电源〔halt〕。

  [-n]不用init﹐而是自己来关机。

不鼓励使用这个选项﹐而且该选项所产生的后果往往不总是你所预期得到的。

  [-c]cancelcurrentprocess取消目前正在执行的关机程序。

所以这个选项当然没有时间参数﹐但是可以输入一个用来解释的讯息﹐而这信息将会送到每位使用者。

  [-f]在重启计算器〔reboot〕时忽略fsck。

[-F]在重启计算器〔reboot〕时强迫fsck。

  [-time]设定关机〔shutdown〕前的时间。

   

2.halt----最简单的关机命令

其实halt就是调用shutdown-h。

halt执行时﹐杀死应用进程﹐执行sync系统调用﹐文件系统写操作完成后就会停止内核。

参数说明:

  [-n]防止sync系统调用﹐它用在用fsck修补根分区之后﹐以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块。

  [-w]并不是真正的重启或关机﹐只是写wtmp〔/var/log/wtmp〕纪录。

  [-d]不写wtmp纪录〔已包含在选项[-n]中〕。

  [-f]没有调用shutdown而强制关机或重启。

  [-i]关机〔或重启〕前﹐关掉所有的网络接口。

  [-p]该选项为缺省选项。

就是关机时调用poweroff。

 

3.reboot

reboot的工作过程差不多跟halt一样﹐不过它是引发主机重启﹐而halt是关机。

它的参数与halt相差不多。

4.init

init是所有进程的祖先﹐它的进程号始终为1﹐所以发送TERM信号给init会终止所有的用户进程﹑守护进程等。

shutdown就是使用这种机制。

init定义了8个运行级别(runlevel),init0为关机﹐init1为重启。

关于init可以长篇大论﹐这里就不再叙述。

另外还有telinit命令可以改变init的运行级别﹐比如﹐telinit-iS可使系统进入单用户模式﹐并且得不到使用shutdown时的信息和等待时间。

三.系统打包命令

在Unix/Linux系统中,是先通过cpio或tar将众多的文件打包成一个文件库后,再用compress将文件库压缩来达到目的的。

下面分别以cpio和tar来说明使用的方法和步骤。

1.文件或目录打包。

  打包有如下多种情况:

  A)含子目录打包:

  find/usr/lib-print|cpio-o〉/u0/temp1.cpio

  将/usr/lib目录下的文件与子目录打包成一个文件库为/u0/temp1.cpio。

  若通过-o选项来打包整个目录下的所有文件与子目录,常先利用find目录名-print来找出所有文件与子目录的名称,通过管道“|”传给cpio打包。

  B)不含子目录的打包:

  ls/usr/lib|cpio-o〉/u0/temp1.cpio

  将/usr/lib目录下的文件(不含子目录下的文件)打包成一个文件库为/u0/temp1.cpio。

  C)特定文件打包:

  可利用文本搜索命令grep与管道配合,可以排除或选择特定类型的文件传给cpio打包。

如:

ls/usr/lib/*.c|cpio-o〉/u0/temp1.cpio或ls/usr/lib|grep′.c$′|cpio-o〉/u0/temp1.cpio意思均为找出/usr/lib目录下以.c结尾的文件予以打包。

又如:

ls/usr/lib|grepabcd|cpio-o〉/u0/temp1.cpio,其意为找出/usr/lib目录下文件名中含有abcd字符的文件予以打包。

ls/usr/lib|grep-vabcd|cpio-o〉/u0/temp1.cpio,其意为找出/usr/lib目录下文件名中不含abcd字符的文件予以打包。

-v选项在grep命令中的意思是排除含有字符串的行列。

2.压缩:

  compress/u0/temp2.tar

压缩为/u0/temp2.tar.Z

3.解压:

  uncompress/u0/temp2.tar.Z

则还原为/u0/temp2.tar。

4.解包展开:

  tar-xvf/u0/temp2.tar

  若以相对路径打包的,解包时,以相对路径存放展开的文件数据;若以绝对路径打包的,解包时,以绝对路径存放展开的文件数据。

  若指定展开的文件名,须注意文件的目录路径。

5.显示:

  tar-tvf/u0/temp2.tar显示文件库内的文件名称。

当指定文件名时,亦须注意文件的路径。

  相对来说这两个命令各有优缺点。

  1)tar速度比cpio慢,且不能跨越两份存储媒体,但文件格式几乎在所有的Unix系统中都能通用,且使用简便。

  2)cpio则由于可通过管道功能,使得其打包时的文件选择、排除功能非常强,且能跨越多份媒体,并能备份特殊的系统文件。

另外,压缩命令compress比DOS下的Pkzip的压缩率要低些。

经测试,在一个目录下527个文本文件共15.7MB,在Unix打包后用compress压缩,大小为2.1MB;相同的文件拷到DOS系统用Pkzip压缩,则大小为1.4MB。

 

四.系统备份常用命令

Unix/Linux系统在多数情况下都是运行在服务器环境下的,在服务器上数据就是至关重要,需要格外重视的财产。

所以,数据的保护——备份就成了每一个服务器管理员每天的必修课。

vdump的常用方式:

1).对于文件需要在只读方式下备份的文件,建议进入单用户:

#inits或

>>>boot–fls

2).对操作系统各MOUNT点进行备份

3).#mount-a

#vdump-0uvf/dev/ntape/tape0_d1/

#vdump-0uvf/dev/ntape/tape0_d1/usr

#vdump-0uf/dev/ntape/tape0_d1/var(如过var区是做为单独的文件子集也需要单独备份)

-f:

设备文件名(比如DDStapedriver)

-u:

更新/etc/vdumpdates,用于增量备份

-v:

备份内容详细列表

-0:

零级备份

/dev/ntape0_d1:

系统执行完毕后,磁带停止在当前位置,可继续往下备份

/;/usr;/var:

各文件系统的MOUNT点

4).其他说明

a、该命令方式对系统当前mounted的文件系统进行备份

b、备份级别说明

备份级别有0~9个级别,如果当前系统采用零级备份,当下一次采用5级备份时,系统仅将会对有变化的文件进行备份。

系统恢复常用命令--vrestore

恢复整个操作系统各文件系统的内容:

1).准备工作:

a.准备一个可用的新硬盘,容量大小和原盘基本相符。

b.准备一套与备份系统相同版本的安装光盘

2).用操作系统安装光盘启动到安装界面,调整新硬盘各分区大小后进入单用户。

*>>>bootdqa0(dqa0为SRM下的光驱设备号)

*按正常安装步骤选着OK—》NEXT—》NEXT---》NEXT—NEXT---NEXT-CUSTOMIZEFILESYSSTEMLAYOUT(调整分区大小)--》QUITORSHELLWINDOW。

*注意:

在调整新硬盘分区时一定要在引导块上选择ADVFS,并定义B区为SWAP

3).创建操作系统的各文件系统。

(如系统新盘为dsk0)

mkfdmn/dev/disk/dsk0aroot_temp(创建文件系统域)

mkfsetroot_temproot(创建文件子集)

mkfdmn/dev/disk/dsk0gusr_temp

mkfsetusr_tempusr

mkfsetusr_tempvar(条件:

在原系统中VAR为单独的文件子集)

注:

在高级文件系统创建过程中,域名只要不和原来冲突,命名是任意的。

但对文件子集命名方面最好和原来一致。

(以避免不必要的修改工作)

4).操作系统各文件系统的的恢复

#mountroot_temp#root/mnt

#cd/mnt

#vrestore-xvf/dev/ntape/tape0_d1(恢复该文件系统上所有数据)

#cd/

#umount/mnt

#mountusr_temp#usr/mnt

#cd/mnt

#vrestore-xvf/dev/ntape/tape0_d1

#cd/

#umount/mnt

#mountusr_temp#var/mnt(条件:

VAR为单独的文件子集)

#cd/mnt

#vrestore-xvf/dev/ntape/tape0_d1

-f:

设备文件名

-x:

恢复磁带当前备份数据段上的所有数据

-v:

备份内容详细列表

5).如果恢复硬盘与备份盘在系统中设备名的不同(如:

备份盘为dsk0,恢复盘为dsk1)需要做以下修改:

#mountroot_temp#root/mnt

#cd/mnt/etc/fdmns

#cdroot_domain

#rm*

#ln–s/dev/disk/dsk1a

#cd..

#cdusr_domain

#rm*

#ln–s/dev/disk/dsk1g

#cd/mnt/etc

#visysconfigtab

将swapdevice=/dev/disk/dsk0b修改为swapdevice=/dev/disk/dsk1b

6).SHUTDOWN系统,在SRM下,用新盘引导

恢复文件系统中某些目录或文件:

#vrestore–if/dev/ntape/tape0_d1(/)addvmunixgenvmunix(在系统根区备份中只恢复vmunix和genvmunix两个文件)(/)extract(开始恢复)

对个别或若干个目录单独恢复同上

操作磁带机需要注意的几个问题

磁带机在备份过程中是分段记录的,在恢复时一定考虑磁带的位置问题。

按上述备份例子,在数据带上一共创建了3段独立的数据备份信息(/;/usr;/var)。

以下命令可调整数据带的位置。

#mtrewind(磁带机回卷磁带到初始位置)

需要单独恢复/usr文件系统或个别文件信息:

#mtrewind

#mtfsf1(跳过第一个数据备份段/)

如果以上需求发生在/var上则:

#mtrewind(跳过前两个数据备份段)

#mtfsf2

五.系统内存管理命令

unixLinux的内存管理,实际上跟windows的内存管理有很相像的地方,都是用虚拟内存这个的概念,说到这里不得不骂MS,为什么在很多时候还有很大的物理内存的时候,却还是用到了pagefile.所以才经常要跟一帮人吵着说Pagefile的大小,以及如何分配这个问题,在Linux大家就不用再吵什么swap大小的问题,我个人认为,swap设个512M已经足够了,如果你问说512M的SWAP不够用怎么办?

只能说大哥你还是加内存吧,要不就检查你的应用,是不是真的出现了memoryleak.夜也深了,就不再说废话了。

在Linux下查看内存我们一般用命令free;

  [root@nonamelinux]#freetotalusedfreesharedbufferscached;

  Mem:

3860243771168908021280155468;

  -/+buffers/cache:

200368185656;

  Swap:

3935520393552;

  下面是对这些数值的解释:

  total:

总计物理内存的大小。

  used:

已使用多大。

  free:

可用有多少。

  Shared:

多个进程共享的内存总额。

  Buffers/cached:

磁盘缓存的大小。

  第三行(-/+buffers/cached):

  used:

已使用多大。

  free:

可用有多少。

  第四行就不多解释了。

区别:

第二行(mem)的used/free与第三行(-/+buffers/cache)used/free的区别。

这两个的区别在于使用的角度来看,第一行是从OS的角度来看,因为对于OS,buffers/cached都是属于被使用,所以他的可用内存是8908KB,已用内存是377116KB,其中包括,内核(OS)使用+Application(X,oracle,etc)使用的+buffers+cached.

  第三行所指的是从应用程序角度来看,对于应用程序来说,buffers/cached是等于可用的,因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。

  所以从应用程序的角度来说,可用内存=系统freememory+buffers+cached。

  如上例:

  185656=8908+21280+155468接下来解释什么时候内存会被交换,以及按什么方交换。

当可用内存少于额定值的时候,就会开会进行交换。

  如何看额定值(RHEL4.0):

  #cat/proc/meminfo

  交换将通过三个途径来减少系统中使用的物理页面的个数:

 

  1.减少缓冲与页面cache的大小,

  2.将系统V类型的内存页面交换出去, 

  3.换出或者丢弃页面。

(Application占用的内存页,也就是物理内存不足)。

  事实上,少量地使用swap是不是影响到系统性能的。

  下面是buffers与cached的区别。

buffers是指用来给块设备做的缓冲大小,他只记录文件系统的metadata以及trackingin-flightpages.cached是用来给文件做缓冲。

那就是说:

buffers是用来存储,目录里面有什么内容,权限等等。

而cached直接用来记忆我们打开的文件,如果你想知道他是不是真的生效,你可以试一下,先后执行两次命令#manX,你就可以

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2