前言:整理了一份linux常用命令手册,与大家分享。这是一些比较常用的命令。
我已经整理成一份PDF带书签的手册,可以到CSDN免费下载。
下载地址:http://download.csdn.net/detail/lianggzone/6266467
第一章 注销、重启、关机
1、注销
输入“exit”命令或者使用Ctrl+D组合键
2、重启
输入“reboot”命令或“shutdown –r now”命令
3、关机
输入“halt”命令或“shutdown –h now”命令
4、shutdown
4.1、语法
shutdown [-akrhHPfnc] [-t secs] time[warning message]
4.2、参数
-a: use /etc/shutdown.allow
-k: don't really shutdown,only warn.
-r: reboot after shutdown.
-h: halt after shutdown.
-P: halt action is to turnoff power.
-H: halt action is to justhalt.
-f: do a 'fast' reboot (skipfsck).
-F: Force fsck on reboot.
-n: do not go through"init" but go down real fast.
-c: cancel a runningshutdown.
-tsecs: delay between warning and kill signal.
[时间] 设置多久时间后执行shutdown指令。
4.3、案例
l 10分钟后关键
shutdown -h 10
l 10分钟后重启
shutdown –r 10
5、init 转换运行级别
5.1、语法
init [0-6]
5.2、注意
init 0为关机,init 6为重启。
第二章 帮助类命令
1、man 显示指定命令的手册页帮助信息
1.1、语法
man 命令名
1.2、案例
l 用man命令和查看ls命令。
man ls
2、help 显示指定命令的帮助信息
2.1、语法
命令名 --help
2.2、案例
l 用help命令和查看ls命令
ls –help
第三章 文件目录操作命令
1、cat 显示文本文件的内容
1.1、语法
cat [选项] 文件列表
1.2、参数
n(number)在每一行前显示行号
1.3、案例
l 用cat命令显示/root/install.log文件,要求显示文件的每行必须有行号。
cat –n /root/install.log
2、head 、tail 显示文本文件的开头或结尾部分(默认10行)
2.1、语法
tail\head [选项] 文件
2.2、案例
l 显示/etc/inittab文件的前10行以及后15行
head –n 10 /ect/inittab
tail –n 15 /ect/inittab
3、more、less 分屏显示文本文件的内容
3.1、语法
more/less 文件
3.2、注意
显示下一行内容:按Enter键
显示下一屏的内容:按space(空格)键
退出命令:按q键
向前向后翻页:PgDn 、PgUp
less 命令和more命令唯一的不同是more命令只能向后翻页,而less命令可以向前向后翻页
3.3、案例
l 用more和less命令分屏显示/root/install.log文件。
more /root/install.log
less /root/install.log
4、clear 清除当前终端的屏幕内容
5、ls 显示指定目录中的文件和子目录信息
5.1、参数
-a(all) 显示所有的文件和子目录,包括隐藏文件和隐藏子目录
-l(list) 显示文件和子目录的列表信息
-d(directory) 如果参数是目录,只显示目录的信息
-t(time) 按照时间顺序显示文件
-R(recursive) 不仅显示指定目录下的文件和子目录信息,而且递归地显示子目录中的文件和子目录信息。
5.2、案例
l 查看当前目录下文件和子目录信息
ls
l 查看/home目录的详细信息(包括隐含文件和子文件夹下内容)
ls -al /home
6、tree 显示目录树
7、cp 复制文件或目录
7.1、案例
l 复制haproxy-1.4.24.tar.gz
cp haproxy-1.4.24.tar.gz /usr/src/
8、rm 删除文件或目录
8.1、参数
-d或--directory 直接把欲删除的目录的硬连接数据删成0,删除该目录。
-f或--force 强制删除文件或目录。
-r或-R或--recursive 递归处理,将指定目录下的所有文件及子目录一并处理。
-i或--interactive 删除既有文件或目录之前先询问用户。
-v或--verbose 显示指令执行过程。
8.2、案例
l 删除haproxy-1.4.24.tar.gz
rm haproxy-1.4.24.tar.gz
9、mv 移动或更名现有的文件或目录
9.1、案例
l 移动haproxy-1.4.24.tar.gz
mv haproxy-1.4.24.tar.gz
10、cd 改变工作目录
10.1、注意
cd~:切换到用户的主目录。(用户的主目录:/root)
cd:切换到用户的主目录。(用户的主目录:/root)
cd ..: 切换到父目录。
10.2、案例
l 打开usr/src目录
cd /usr/src
11、mkdir 建立目录
11.1、语法
mkdir [-p][--help][--version][-m <目录属性>][目录名称]
11.2、案例
l 创建目录
mkdir /usr/src/liang
12、rmdir 删除空目录
13、pwd 显示当前目录的绝对路径
13.1、注意
l 绝对路径:指从根目录(/)开始到到当前目录(文件)的路径
l 相对路径:指从当前目录到其下子目录(文件)的路径。
13.2、案例
l 查询当前目录的绝对路径
pwd
14、wc显示文本文件的行数、字数和字符数
14.1、语法
wc [选项] 文件
14.2、案例
l 显示dd文件的统计信息
wc dd
15、grep 查找指定字符串
15.1、语法
grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]
15.2、案例
l 查找/var/log/messages中的kernel字符串
grep kernel /var/log/messages
16、touch 改变文件或目录时间
16.1、语法
touch [-acfm][-d <日期时间>][-r<参考文件或目录>][-t <日期时间>][--help] [--version][文件或目录...] 或 touch [-acfm][--help][--version][日期时间][文件或目录...]
16.2、参数
l -a或--time=atime或--time=access或--time=use 只更改存取时间。
l -c或--no-create 不建立任何文件。
l -d<时间日期> 使用指定的日期时间,而非现在的时间。
l -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
l -m或--time=mtime或--time=modify 只更改变动时间。
l -r<参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同。
l -t<日期时间> 使用指定的日期时间,而非现在的时间。
l --help 在线帮助。
l --version 显示版本信息。
16.3、注意
使用touch指令可更改文件或目录的日期时间,包括存取时间和更改时间。若touch后跟新文件,也可以创建这个新文件。
16.4、案例
l 创建新文件
touch bed.txt
17、ln 建立软链接
17.1、参数
-s 创建软链接,而不是硬链接
-b 若存在同名文件,则覆盖前备份的原来文件
17.2、案例
l 建立快捷方式
ln -s /home/itcast/familyA/house/roomB/home/roomB
第四章 系统管理命令
1、date 查看或修改系统时间
1.1、语法
date [MMDDhhmm[YYYY]]
1.2、案例
l 查看系统时间
date
l 设置系统时间为2013年4月16日14:00
date 041614002013
2、cal显示日历
2.1、语法
cal 月份 年份
2.2、案例
l 显示本月的日历
cal
l 用cal命令查询你出生日期是星期几
cal 7 1991
3、who 显示在线登录用户
4、whoami 显示用户自己的身份
5、hostname 显示主机名称
5.1、案例
l 显示主机名字
hostname
l 显示主机IP
hostname -i
6、uname 显示系统信息
6.1、参数
-a 显示全部信息 (内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称)
6.2、案例
l 显示全部信息
uname –a
7、top 显示管理执行中的程序
7.1、注意
执行top指令可显示目前正在系统中执行的程序,并通过它所提供的互动式界面,用热键加以管理。
8、du 显示指定的文件(目录)已使用的磁盘空间的总量
9、df 显示文件系统磁盘空间的使用情况
10、free 显示当前内存和交换空间的使用情况
11、stat 显示指定文件的相关信息
11.1、案例
l 显示kernels相关信息
stat kernels
12、ifconfig 显示网络接口信息
13、ping 测试网络的连通性
14、netstat 显示网络状态信息
15、history 查看Shell命令的历史记录
15.1、语法
history [数字]
15.2、注意
再次执行已经执行过的shell命令的方法:!序号。(“!!”命令可执行刚执行过的那个Shell命令)
16、su 变更用户身份
16.1、注意
su可让用户暂时变更登入的身份。变更时须输入所要变更的用户帐号与密码。
第五章 挂载管理命令
1、mount 将磁盘设备挂载到指定的目录
1.1、语法
mount [选项] [设备名] [目录]
1.2、参数
–t 文件系统类型
1.3、案例
l 挂载U盘
fdisk -l
mkdir /mnt/usb
mount –t vfat /dev/sdb1 /mnt/usb
2、umount 卸载指定的设备
2.1、语法
umount 设备|目录
2.2、注意
可使用设备名也可以使用挂载目录名。
2.3、案例
l 卸载U盘
umount /dev/sdb1
或umount /mnt/usb
第六章 归档压缩命令
1、tar
1.1、参数
-c 创建
-x 解包
-u 更新
-r 添加
-t 查看
-z 使用gz压缩格式
-j 使用bz2压缩格式
-v 显示过程
-f <文件名> 归档文件的文件名
-d 比较压缩包内文件和文件
-A 将tar文件添加到归档文件中
-C <解压路径> 将压缩包中的文件解压到指定目录
1.2、案例
l 多个待打包文件以空格分隔
tar -zcvf xxx.tar.gz xxx/ xxx1 xxx2 xxx3
l 使用绝对路径打包,解包也使用绝对路径
tar -zcvf xxx.tar.gz /home/user/xxx/
l 按相对路径解包到当前目录下,或按绝对路径解包
tar -zxvf xxx.tar.gz
l 打包后以gzip压缩
tar -zcvf /home/itcast/familyA.tar.gz/home/itcast/familyA
l 打包后,以bzip2压缩
tar -jcvf /home/itcast/familyA.tar.bz2/home/itcast/familyA
2、gzip
2.1、参数
-c --stdout write on standard output, keep originalfiles unchanged
-d --decompress decompress
-f --force force overwrite of output file andcompress links
-h --help give this help
-l --list list compressed file contents
-L --license display software license
-n --no-name do not save or restore the original nameand time stamp
-N --name save or restore the original name andtime stamp
-q --quiet suppress all warnings
-r --recursive operate recursively on directories
-S .suf --suffix .suf use suffix .sufon compressed files
-t --test test compressed file integrity
-v --verbose verbose mode
-V --version display version number
-1 --fast compress faster
-9 --best compress better
2.2、案例
l 采用gzip格式压缩当前目录的所有文件
gzip *
l 解压.gz文件
gzip -d *
3、bzip2
4、unzip
5、zip
6、rpm 软件包管理
6.1、语法
l 安装 rpm –i[选项] 软件包文件
l 升级 rpm –U[选项] 软件包文件
l 查询 rpm –q[选项] 软件包文件
l 删除 rpm –e软件包文件
l
6.2、参数
-h 使用符号#显示安装进度
-v 报告每一步操作的情况
-a 查询已安装的所包含的所有文件
-i 查询已安装软件包的详细信息
6.3、案例
l 安装vsftpd软件包
rpm –ivh vsftpd-2.0.rpm
l 查询系统中是否安装samba软件包
rpm –qa|grep samba
第七章 用户和组群命令
1、useadd 添加用户
1.1、语法
useradd [-u UID] [-g 初始化群组] [-G 次要群组] [-mM][-c 帐号说明栏] [-d 家目录绝对路径] [-s shell] 帐号名称
1.2、参数
-u 指定UID(省略该选项, 系统会自动分配一个UID)
-g 初始化群组, (默认创建新的群组, 群组名与帐号名称相同)
-G 次要的群组, 可以指定该帐号的所属的其它群组,多个用,分开, 如-G g1,g2,g3
-c 用户的注释信息
-d 该用户的home目录
-s shell脚本环境, 默认为/bin/bash
1.3、案例
l 创建用户tom
useradd tom
l 创建chf用户,并指定其主要组群为czn,用户ID为600。
答案:usseradd -g czn –u 600 chf
2、usermod 修改用户
2.1、参数
-l 新的帐号名称, 意思是修改帐号名称
2.2、案例
l 修改chf用户,使其用户名为chen,UID为601.
usermod –l chen –u 601 chf
3、userdel 删除用户
3.1、参数
-r 连同用户的HOME目录一同删除
3.2、案例
l 删除用户
userdel test1
4、passwd 设置或修改用户口令
4.1、语法
passwd [选项][用户]
4.2、参数
-d:删除使用者的密码, 只有具备超级用户权限的使用者方可使用
-l:暂时锁定指定用户的账号
-u:解锁,linux不允许创建密码为空的用户,-f可以解除这种保护
-n mindays:修改密码的最小天数,也就是mindays内不能再次修改密码
-x maxdays:修改密码的最大天数,也就是maxdays天之后必须修改密码
-i inactivedays:密码有效期
-w warndays:密码过期警告时间
4.3、案例
l 删除chf用户密码
passwd –d chf
5、groupadd 新建组群
5.1、语法
groupadd [选项] 组群名
5.2、参数
-g gid:指定组群id
6、groupmod 修改组群
6.1、语法
groupmod [选项] 组群名
6.2、参数
-g gid:指定id
-n group_name:修改用户组名为group_name
7、groupdel 删除组群
第八章 权限管理命令
1、chmod 修改文件的访问权限
1.1、语法
chmod 数字模式 文件
chmod 功能模式 文件
1.2、注意
l 数字模式
--- 0 , --x 1, -w- 2, -wx 3
r-- 4 , r-x 5, rw- 6, rwx 7
l 功能模式
对象 |
操作 |
权限 |
u 文件所有者 |
+ 增加权限 |
r 读取权限 |
g 同组用户 |
- 删除权限 |
w 写入权限 |
o 其它用户 |
= 重新分配权限 |
x 执行权限 |
a 所有用户(默认) |
||
1.3、案例
功能模式下修改权限
l 增加同组用户写入
chmod g+w /root/install.log
l 设置权限666
chmod 666 /root/install.log
2、chgrp 改变文件的所属组群
3、chown 改变文件的所有者
第九章 进程管理命令
1、kill 终止正在进行的进程或作业
1.1、参数
-9 强制终止
2、killall 终止正在进行的进程或作业
3、ps 报告程序状况
3.1、语法
3.2、案例
l 显示所有瞬间进程状态
ps –aux
第十章 一些技巧
1、通配符(* ? [] - !)
1.1、含义
l 通配符“*”代表:任意长度的任何字符
l 通配符“?”代表:任何一个字符
l 通配符“[ ]”代表:指定的一个字符范围,“[ ]”内的任意一个字符都用于匹配。
l 通配符“-” 代表:在“[ ]”内表示连接符。
l 通配符“!”代表:不在这个范围之内的其他字符
2、自动补全 (Tab键)
2.1、概念
用户输入不完整命令时,系统会自动找出匹配的文件或命令的功能
3、重定向
3.1、概念
l 输出重定向:命令执行的结果不在标准输出(屏幕)上显示,而是保存到某一文件的操作。
l 附加输出重定向:将输出内容添加在原来文件已有内容的后面,而不会覆盖其内容。
l 错误输出重定:程序的执行结果显示在屏幕上,而错误信息重定向到指定文件,使用“2>”符号。程序的执行结果和错误信息都重定向到同一文件,使用“&>”符号。
l 输入重定向:不从标准输入(键盘)读入数据,而是从文件读入数据,用“<”符号来实现。
3.2、案例
l 将当前目录下所有文件和子目录的详细信息保存到list文件。
ls –al >list
l 向f1文件添加内容。
cat >>f1
l 查看/temp目录的文件和子目录信息,如果有错误信息,则保存到err文件。
ls /temp 2>err