Linux Shell常用shell命令.docx
《Linux Shell常用shell命令.docx》由会员分享,可在线阅读,更多相关《Linux Shell常用shell命令.docx(14页珍藏版)》请在冰豆网上搜索。
LinuxShell常用shell命令
LinuxShell常用shell命令
LinuxShell常用shell命令
作者:
周立军
修改日期:
2006年03月01日
一、文件、目录操作命令
1、ls命令
功能:
显示文件和目录的信息
ls 以默认方式显示当前目录文件列表
ls-a显示所有文件包括隐藏文件
ls-l显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行
ls-lh显示文件的大小,以容易理解的格式印出文件大小(例如1K234M2G)
ls-lt显示文件,按照修改时间排序
2、cd命令
功能:
改名目录
cddir 切换到当前目录下的dir目录
cd/ 切换到根目录
cd.. 切换到到上一级目录
cd../.. 切换到上二级目录
cd~ 切换到用户目录,比如是root用户,则切换到/root下
3、cp命令
功能:
copy文件
cpsourcetarget 将文件source复制为target
cp/root/source. 将/root下的文件source复制到当前目录
cp–avsoure_dirtarget_dir 将整个目录复制,两目录完全一样
4、rm命令
功能:
删除文件或目录
rmfile 删除某一个文件
rm-ffile删除时候不进行提示。
可以于r参数配合使用
rm-rfdir 删除当前目录下叫dir的整个目录
5、mv命令
功能:
将文件移动走,或者改名,在uinx下面没有改名的命令,如果想改名,可以使用该命令
mvsourcetarget 将文件source更名为target
6、diff
功能:
比较文件内容
diffdir1dir2 比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出
difffile1file2 比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的
commfile1file2 比较文件,显示两个文件不相同的内容
7、ln命令
功能:
建立链接。
windows的快捷方式就是根据链接的原理来做的
lnsource_pathtarget_path 硬连接
ln-ssource_pathtarget_path 软连接
二、查看文件内容命令
1、cat命令
显示文件的内容,和DOS的type相同
catfile
2、more命令
功能:
分页显示命令
more file
more命令也可以通过管道符(|)与其他的命令一起使用,例如:
psux|more
ls|more
3、tail命令
功能:
显示文件的最后几行
tail-n100aaa.txt 显示文件aaa.txt文件的最后100行
4、vi命令
vifile 编辑文件file
vi原基本使用及命令:
输入命令的方式为先按[ESC]键,然后输入:
w(写入文件),:
w!
(不询问方式写入文件),:
wq保存并退出,:
q退出,q!
不保存退出
5、touch命令
功能:
创建一个空文件
touchaaa.txt 创建一个空文件,文件名为aaa.txt
三、基本系统命令
1、man命令
功能:
查看某个命令的帮助,如果你不知道某个命令的用法不懂,可以问他,他知道就回告诉你
例如:
manls 显示ls命令的帮助内容
2、w命令
功能:
显示登录用户的详细信息
例如:
Sarge:
~#w
22:
06:
51up43min, 1user, loadaverage:
0.00,0.00,0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPUWHAT
zhoulj pts/0 10.140.0.109 21:
24 0.00s 0.85s 0.09ssshd:
zhoulj[priv]
3、who命令
功能:
显示登录用户
例如:
Sarge:
~#who
zhoulj pts/0 Mar1321:
24(10.140.0.109)
4、last命令
功能:
查看最近那些用户登录系统
例如:
Sarge:
~#last
zhoulj pts/0 10.140.0.109 MonMar1321:
24 stillloggedin
reboot systemboot 2.6.8-2-386 MonMar1321:
23 (00:
43)
zhoulj pts/0 10.140.0.105 SunMar1222:
51-down (00:
00)
zhoulj pts/0 10.140.0.105 SunMar1222:
51-22:
51 (00:
00)
root tty1 SunMar1222:
50-down (00:
01)
root tty1 SunMar1222:
46-22:
48 (00:
02)
root tty1 SunMar1222:
43-22:
46 (00:
02)
reboot systemboot 2.6.8-2-386 MonMar1306:
34 (-7:
-41)
wtmpbeginsMonMar1306:
34:
112006
5、date命令
功能:
系统日期设定
date 显示当前日期时间
date-s20:
30:
30 设置系统时间为20:
30:
30
date-s2002-3-5 设置系统时期为2003-3-5
date-s"06052006:
00:
00" 设置系统时期为2006年5月20日6点整。
6、clock命令
功能:
时钟设置
clock–r 对系统Bios中读取时间参数
clock–w 将系统时间(如由date设置的时间)写入Bios
7、uname命令
功能:
查看系统版本
uname-R 显示操作系统内核的version
例如:
Sarge:
~#uname-a
LinuxSarge2.6.8-2-386#1TueAug1612:
46:
35UTC2005i686GNU/Linux
8、关闭和重新启动系统命令
reboot 重新启动计算机
shutdown-rnow 重新启动计算机,停止服务后重新启动计算机
shutdown-hnow 关闭计算机,停止服务后再关闭系统
halt 关闭计算机
一般用shutdown-rnow,在重启系统是,关闭相关服务,shutdown-hnow也是如此。
9、su命令
功能:
切换用户
su- 切换到root用户
su-zhoulj 切换到zhoulj用户,
注意:
-,他很关键,使用-,将使用用户的环境变量
四、监视系统状态命令
1、top命令
功能:
查看系统cpu、内存等使用情况
2、free命令
功能:
查看内存和swap分区使用情况
例如:
Sarge:
~#free-tm
total used free shared buffers cached
Mem:
187 42 145 0 6 16
-/+buffers/cache:
19 167
Swap:
243 0 243
Total:
430 42 388
3、uptime
功能:
现在的时间,系统开机运转到现在经过的时间,连线的使用者数量,最近一分钟,五分钟和十五分钟的系统负载
例如:
Sarge:
~#uptime
21:
54:
46up31min, 1user, loadaverage:
0.00,0.00,0.00
4、vmstat命令
功能:
监视虚拟内存使用情况
例如:
#vmstat
procs memory swap io system cpu
r b swpd free buff cache si so bi bo in csussyidwa
1 0 0 63704 8100 32272 0 0 8 3 103 17 0 198 1
5、ps命令
功能:
显示进程信息
psux 显示当前用户的进程
psuxwww 显示当前用户的进程的详细信息
psaux 显示所有用户的进程
psef 显示系统所有进程信息
6、kill命令
功能:
干掉某个进程,进程号可以通过ps命令得到
kill-91001 将进程编号为1001的程序干掉
killall-9apache 将所有名字为apapche的程序杀死,kill不是万能的,对僵死的程序则无效。
五、磁盘操作命令
1、df命令
功能:
检查文件系统的磁盘空间占用情况。
可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
参数 功能
-a 列出全部目录
-Ta 列出全部目录,并且显示文件类型
-B 显示块信息
-i 以i节点列出全部目录
-h 按照日常习惯显示(如:
1K、100M、20G)
-x[filesystype] 不显示[filesystype]
例如:
#df-Th
Filesystem Type Size UsedAvailUse%Mountedon
/dev/sda1 ext3 265M 64M 187M 26%/
tmpfs tmpfs 94M 0 94M 0%/dev/shm
/dev/sda6 ext3 714M 8.1M 667M 2%/home
/dev/sda8 ext3 956M 215M 691M 24%/usr
/dev/sda7 ext3 714M 57M 619M 9%/var
2、du命令
功能:
检测一个目录和(递归地)所有它的子目录中的文件占用的磁盘空间。
参数 功能
-s[dirName] 显示目录占用总空间
-sk[dirName] 显示目录占用总空间,以k为单位
-sb[dirName] 显示目录占用总空间,以b为单位
-sm[dirName] 显示目录占用总空间,以m为单位
-sc[dirName] 显示目录占用总空间,加上目录统计
-sh[dirName] 只统计目录大小
例如:
#du-sh/etc
1.3M /etc
3、mount命令
功能:
使用mount命令就可在Linux中挂载各种文件系统。
格式:
mount-t<文件系统>设备名挂载点
(1)、mount/dev/sda1 /mnt/filetest
mount-tvfat/dev/hda /mnt/fatfile
mount-tntfs/dev/hda /mnt/ntfsfile
mount-tiso9660/dev/cdrom /mnt/cdrom
mount-o<选项>设备名挂载点
(2)、使用usb设备
modprobeusb-storage
mkdir/mnt/usb
mount-tauto/dev/sdx1/mnt/usb
umount/mnt/usb
4、mkswap命令
功能:
使用mkswap命令可以创建swap空间,如:
debian:
~#mkswap-c/dev/hda4
debian:
~#swapon/dev/hda4 #启用新创建的swap空间,停用可使用swapoff命令
5、fdisk命令
功能:
对磁盘进行分区
fdisk/dev/xxx 格式化xxx设备(xxx是指磁盘驱动器的名字,例如hdb,sdc)
fdisk-l 显示磁盘的分区表
6、mkfs命令
功能:
格式化文件系统,可以指定文件系统的类型,如ext2、ext3、fat、ntfs等
格式1:
mkfs.ext3options/dev/xxx
格式2:
mkfs-text2options/dev/xxx
参数 功能
-b<1024|2048|4096> 块大小
-i 节点大写
-m 预留管理空间大小
例如:
debian:
~#mkfs.ext3/dev/sdb1
7、e2fsck命令
功能:
磁盘检测
e2fsck/dev/hda1 检查/dev/hda1是否有文件系统错误,提示修复方式
e2fsck-p/dev/hda1 检查/dev/hda1是否有错误,如果有则自动修复
e2fsck-y/dev/hda1 检查错误,所有提问均于yes方式执行
e2fsck-c/dev/hda1 检查磁盘是否有坏区
8、tune2fs命令
功能:
调整ext2/ext3文件的参数
参数 功能
-l 查看文件系统信息
-c 设置强制自检的挂载次数
-i 设置强制自检的间隔时间,单位天
-m 保留块的百分比
-j 将ext2文件系统转换成ext3格式
#tune2fs-l/dev/sda1
9、dd命令
功能:
功能:
把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换。
跟DOS下的diskcopy命令的作用类似。
ddif=/dev/fd0of=floppy.img 将软盘的内容复制成一个镜像
ddif=floppy.imgof=/dev/fd0 将一个镜像的内容复制到软盘,做驱动盘的时候经常用。
六、用户和组相关命令
1、groupadd命令
功能:
添加组
groupaddtest1 添加test1组
groupadd-g1111test2 添加test2组,组id为1111
2、useradd命令
功能:
添加用户
useradduser1 添加用户user1,home为/home/user1,组为user1
useradd-gtest1-m-d/home/test1test1 添加用户test1,home为/home/test1,组为test1
userlist 显示已登陆的用户列表
3、passwd命令
功能:
更改用户密码
passwduser1 修改用户user1的密码
passwd-droot 将root用户的密码删除
4、userdel命令
功能:
删除用户
userdeluser1 删除user1用户
5、chown命令
功能:
改变文件或目录的所有者
chownuser1/dir 将/dir目录设置为user1所有
chown-Ruser1.user1/dir 将/dir目录下所有文件和目录,设置为user1所有,组为user1。
-R递归到下面的每个文件和目录
6、chgrp命令
功能:
改变文件或目录的所有组
chgrpuser1/dir 将/dir目录设置为user1所有
7、chmod命令
功能:
改变用户的权限
chmoda+xfile 将file文件设置为可执行,脚本类文件一定要这样设置一个,否则得用bashfile才能执行
chmod666file 将文件file设置为可读写
chmod750file 将文件file设置为,所有者为完全权限,同组可以读和执行,其他无权限
8、id命令
功能:
显示用户的信息,包括uid、gid等
#idzhoulj
uid=500(zhoulj)gid=500(zhoulj)groups=500(zhoulj)
9、finger命令
功能:
显示用的信息
注意:
debian下没有该命令。
#fingerzhoulj
Login:
zhoulj Name:
Directory:
/home/zhoulj Shell:
/bin/bash
OnsinceSunMay2107:
59(CST)onpts/0from192.168.1.4
Nomail.
NoPlan.
七、压缩命令
1、gzip格式命令
功能:
压缩文件,gz格式的
注意:
生成的文件会把源文件覆盖
gzip -v 压缩文件,并且显示进度
-d 解压缩
gnuzip -f 解压缩
例如:
#gzipa.sh
#ll
-rwxr-xr-x 1root root 7112月1821:
08a.sh.gz
#gzip-da.sh.gz
#ll
-rwxr-xr-x 1root root 4812月1821:
08a.sh
2、zip格式命令
功能:
压缩和解压缩zip命令
zip
unzip
例如:
#zipa.sh.zipa.sh
adding:
a.sh(stored0%)
#ll
-rw-r--r-- 1root root 188 5月2110:
37a.sh.zip
#unzipa.sh.zip
Archive:
a.sh.zip
replacea.sh?
[y]es,[n]o,[A]ll,[N]one,[r]ename:
r
newname:
a1.sh
extracting:
a1.sh
#ll
-rwxr-xr-x 1root root 4812月1821:
08a1.sh
3、bzip2根式命令
功能:
bzip2格式压缩命令,
注意:
生成的文件会把源文件覆盖
bzip2
bunzip2
例如:
#bzip2a.sh
#ll
-rwxr-xr-x 1root root 8512月1821:
08a.sh.bz2
#bunzip2a.sh.bz2
#ll
-rwxr-xr-x 1root root 4812月1821:
08a.sh
4、tar命令
功能:
归档、压缩等,比较重要,会经常使用。
-cvf 压缩文件或目录
-xvf 解压缩文件或目录
-zcvf 压缩文件或,格式tar.gz
-zxvf 解压缩文件或,格式tar.gz
-zcvf 压缩文件或,格式tgz
-zxvf 解压缩文件或,格式tgz
举例:
#tarcvfabc.tar*.sh
#tarxvfabc.tar
#tarczvfabc.tar.gz*.sh
#ll
-rw-r--r-- 1root root 20480 5月2110:
50abc.tar
-rw-r--r-- 1root root 1223 5月2110:
53abc.tar.gz
#tarxzvfabc.tar.gz
八、网络相关命令
1、ifconfig命令
功能:
显示修改网卡的信息
ifconfig 显示网络信息
ifconfigeth0 显示eth0网络信息
修改网络信息:
ifconfigeth0192.168.1.1netmask255.255.255.0 设置网卡1的地址192.168.1.1,掩码为255.255.255.0
ifconfigeth0:
1192.168.1.2 捆绑网卡1的第二个地址为192.168.1.2
ifconfigeth0:
x192.168.1.n 捆绑网卡1的第n个地址为192.168.1.n
例如:
#ifconfigeth0:
1192.168.1.11
#ifconfig
eth0 Linkencap:
Ethernet HWaddr00:
0C:
29:
06:
9C:
24
inetaddr:
192.168.1.5 Bcast:
192.168.1.255 Mask:
255.255.255.0
UPBROADCASTRUNNINGMULTICAST MTU:
1500 Metric:
1
RXpackets:
4220errors:
0dropped:
0overruns:
0frame:
0
TXpackets:
3586errors:
0dropped:
0overruns:
0carrier:
0
collisions:
0txqueuelen:
1000
RXbytes:
342493(334.4Kb) TXbytes:
469020(458.0Kb)
Interrupt:
9Baseaddress:
0x1400
eth0:
1 Linkencap:
Ethernet HWaddr00:
0C:
29:
06:
9C:
24
inetaddr:
192.168.1.11 Bcast:
192.168.1.255 Mask:
255.255.255.0