欢迎您的光临,本博所发布之文章皆为作者亲测通过,如有错误,欢迎通过各种方式指正。

文摘  ​Linux Shell常用shell命令集锦

Shell 网络 1155 0评论

一、文件、目录操作命令


1、ls命令

功能:显示文件和目录的信息

ls 以默认方式显示当前目录文件列表

ls -a 显示所有文件包括隐藏文件

ls -l 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行

ls -lh 显示文件的大小,以容易理解的格式印出文件大小 (例如 1K 234M2G)

ls -lt 显示文件,按照修改时间排序


2、cd命令

功能:改名目录

cd dir 切换到当前目录下的dir目录

cd / 切换到根目录

cd .. 切换到到上一级目录

cd ../.. 切换到上二级目录

cd ~ 切换到用户目录,比如是root用户,则切换到/root下


3、cp命令

功能:copy文件

cp source target 将文件source复制为target

cp /root /source. 将/root下的文件source复制到当前目录

cp –av soure_dir target_dir 将整个目录复制,两目录完全一样


4、rm命令

功能:删除文件或目录

rm file 删除某一个文件

rm -f file 删除时候不进行提示。可以于r参数配合使用

rm -rf dir 删除当前目录下叫dir的整个目录


5、mv命令

功能:将文件移动走,或者改名,在uinx下面没有改名的命令,如果想改名,可以使用该命令

mv source target 将文件source更名为target


6、diff

功能:比较文件内容

diff dir1 dir2 比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出

diff file1 file2 比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的

comm file1 file2 比较文件,显示两个文件不相同的内容


7、ln命令

功能:建立链接。windows的快捷方式就是根据链接的原理来做的

ln source_path target_path 硬连接

ln -s source_path target_path 软连接


二、查看文件内容命令


1、cat命令

显示文件的内容,和DOS的type相同

cat file 


2、more命令

功能:分页显示命令

more file

more命令也可以通过管道符(|)与其他的命令一起使用,例如:

ps ux|more

ls|more


3、tail 命令

功能:显示文件的最后几行

tail -n 100 aaa.txt 显示文件aaa.txt文件的最后100行


4、vi命令

vi file 编辑文件file

vi 原基本使用及命令:

输入命令的方式为先按[ESC]键,然后输入:w(写入文件), 

:w!(不询问方式写入文件), 

:wq保存并退出, 

:q退出, 

q!不保存退出


5、touch命令

功能:创建一个空文件

touch aaa.txt  创建一个空文件,文件名为aaa.txt


三、基本系统命令


1、man命令

功能:查看某个命令的帮助,如果你不知道某个命令的用法不懂,可以问他,他知道就回告诉你

例如:

man ls 显示ls命令的帮助内容


2、w命令

功能:显示登录用户的详细信息

例如:

Sarge:~# w
22:06:51 up 43 min,  1 user,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
zhoulj   pts/0    10.140.0.109     21:24    0.00s  0.85s  0.09s sshd: zhoulj [priv]


3、who命令

功能:显示登录用户

例如:

Sarge:~# who
zhoulj   pts/0        Mar 13 21:24 (10.140.0.109)


4、last命令

功能:查看最近那些用户登录系统

例如:

Sarge:~# last
zhoulj   pts/0        10.140.0.109     Mon Mar 13 21:24   still logged in
reboot   system boot  2.6.8-2-386      Mon Mar 13 21:23          (00:43)
zhoulj   pts/0        10.140.0.105     Sun Mar 12 22:51 - down   (00:00)
zhoulj   pts/0        10.140.0.105     Sun Mar 12 22:51 - 22:51  (00:00)
root     tty1                          Sun Mar 12 22:50 - down   (00:01)
root     tty1                          Sun Mar 12 22:46 - 22:48  (00:02)
root     tty1                          Sun Mar 12 22:43 - 22:46  (00:02)
reboot   system boot  2.6.8-2-386      Mon Mar 13 06:34          (-7:-41)
wtmp begins Mon Mar 13 06:34:11 2006


5、date命令

功能:系统日期设定

date 显示当前日期时间

date -s 20:30:30 设置系统时间为20:30:30

date -s 2002-3-5 设置系统时期为2003-3-5

date -s "060520 06:00:00" 设置系统时期为2006年5月20日6点整。


6、clock命令

功能:时钟设置

clock –r 对系统Bios中读取时间参数

clock –w 将系统时间(如由date设置的时间)写入Bios


7、uname命令

功能:查看系统版本

uname -R 显示操作系统内核的version

例如:

Sarge:~# uname -a
Linux Sarge 2.6.8-2-386 #1 Tue Aug 16 12:46:35 UTC 2005 i686 GNU/Linux


8、关闭和重新启动系统命令

reboot   重新启动计算机

shutdown -r now  重新启动计算机,停止服务后重新启动计算机

shutdown -h now  关闭计算机,停止服务后再关闭系统

halt   关闭计算机

一般用shutdown -r now,在重启系统是,关闭相关服务,shutdown -h now也是如此。


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:46 up 31 min,  1 user,  load average: 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    cs us sy id wa
1  0      0  63704   8100  32272    0    0     8     3  103    17  0  1 98  1


5、ps命令

功能:显示进程信息

ps ux 显示当前用户的进程

ps uxwww 显示当前用户的进程的详细信息

ps aux 显示所有用户的进程

ps ef 显示系统所有进程信息


6、kill命令

功能:干掉某个进程,进程号可以通过ps命令得到

kill -9 1001 将进程编号为1001的程序干掉

kill all -9 apache 将所有名字为apapche的程序杀死,kill不是万能的,对僵死的程序则无效。


五、磁盘操作命令


1、df命令

功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

参数 功能

-a 列出全部目录

-Ta 列出全部目录,并且显示文件类型

-B 显示块信息

-i 以i节点列出全部目录

-h 按照日常习惯显示(如:1K、100M、20G)

-x [filesystype] 不显示[filesystype]

例如:

# df -Th
Filesystem    Type    Size  Used Avail Use% Mounted on
/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 -t vfat /dev/hda  /mnt/fatfile

mount -t ntfs /dev/hda  /mnt/ntfsfile

mount -t iso9660 /dev/cdrom  /mnt/cdrom

mount -o  设备名 挂载点


(2)、使用usb设备

modprobe usb-storage

mkdir /mnt/usb

mount -t auto /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.ext3 options /dev/xxx

格式2:mkfs -t ext2 options /dev/xxx

参数   功能

-b  块大小

-i   节点大写

-m   预留管理空间大小

例如:

debian:~#mkfs.ext3 /dev/sdb1


7、e2fsck命令

功能:磁盘检测

e2fsck /dev/hda1 检查/dev/hd