Linux系统常用命令总结 1. 最关键的命令 2. 目录文件操作命令 3. 查看文件内容 4. 用户管理 5. 命令历史 6. 创建连接 7. 进程管理 8. 文件比较命令 9. 关机和重启 10. 网络命令 11. 系统集成管理菜单 12. RPM软件包管理 13. 实时通讯 14. 文件所有权或权限管理 15. 管道(pipe) 16. 重定向 17. 查找文件 18. 源程序的编译过程 19. 文件压缩命令 20. 通配符(wildcard character) 21. Linux目录架构 22. runlevel的级别 23. BASH常用变量

man
echo

2. 目录文件操作命令

ls: 查看目录下的文件信息或文件信息
dir:
pwd: 打印当前路径
cd:改变路径
mkdir:创建路径
rmdir:删除路径
cp:拷贝文件或目录
mv:移动文件或目录,或改名
rm: 删除文件或目录
tree:输出该目录下的文件目录树

3. 查看文件内容

cat:
more:
less:
head:
tail:
wc:统计文件的字符数、单词数和行数等信息

4. 用户管理

useradd:添加用户
groupadd:
userdel: 删除用户
groupdel
passwd: 为用户设置密码
usermod: 更改用户设置
su:用户切换
finger root:查看某用户资料
finger:查看所有用户资料
last:最近一个月用户登录情况
id:打印用户的UID和GID
users:
groups:
who:列出活跃用户
whoami:
who am i:
w:
/etc/default/useradd:添加用户时候的默认设置文件
/etc/profile
/etc/bashrc
~/.bashrc
~/.bash_profile

5. 命令历史

history
!!:执行最近一次命令

6. 创建连接

ln a b:为a创建硬连接(hard link)b
ln -s a b: 为a创建符号链接(symbolic link)b

7. 进程管理

top 查看后体进程,监控系统性能
top -d 2:每2秒刷新一次
top -d 2 -p 3690 查看某个PID
top -b -n 2 > /tmp/top.txt 将top的信息刷新两次的结果输出到/tmp/top.txt
ps 查看进程近况
free -m 查看系统内存使用情况
uptime:系统开机时间

8. 文件比较命令

diff
cmp

9. 关机和重启

shutdown [-t 秒数] [-rkhncf] 时间 [警告信息]
shutdown -h now 立即关机,相当于halt
shutdown -r now 立即重启,相当于reboot
dmesg | more 查看开机信息
clear 清屏

10. 网络命令

ifconfig 显示或查看网络设备
/etc/init.d/network restart:重启网络服务(网卡)
网络IP的配置文件是:/etc/sysconfig/network-script/ifcfg-eth0
ifdown eth0 关闭网卡
ifup eth0 开启网卡
route -n 查看路由表
routeadd -net 192.168.2.1 netmask 255.255.255.0 dev eth0
netstat: 查看网络连接状况
traceroute
hostname:显示主机名
hostname -i:显示当前主机名的IP

11. 系统集成管理菜单

setup:系统服务管理命令
ntsysv;设置系统服务

12. RPM软件包管理

rpm -ivh xxx.rpm 安装rpm包
rpm -qa --last | less 根据安装日期显示已经安装的包
rpm -qa |grep mysql -i 查询系统是否安装mysql包(-i,忽略大小写)
rpm -e 删除安装的软件包
rpm -e mysql* --nodpes
强制删除相关的软件包
rpm --test 测试安装
rpm -qi 查询mysql包的说明资料
rpm -qpl xxx.rpm 查看rpm包内含的内容.
rpm -qc[d] 设定档与说明档
rpm -Uvh 升级安装
rpmbuild --bb SPECS/xxx.spec 重新装将xxx.spec编译成rpm包.
rpmbuild --rebuild packagename.src.rpm 重新把.src.rpm编译成rpm包.

13. 实时通讯

write:给指定用户发信
write username
talk:
wall: 给所有人发信

14. 文件所有权或权限管理

chown:改变文件属主
chgrp:改变文件的属组
chmod:改变文件的读写、执行权限
umask:改变系统下文件、目录的默认权限

15. 管道(pipe)

管道:将前一个命令的输出作为另一个命令的输入
ls -la | more

16. 重定向

将一个命令的输出写入一个文件或者文件句柄
ls -la > filecontents.txt

17. 查找文件

locate:
find:
which:
whereis:

18. 源程序的编译过程

./configure检查系统信息
./configure --help | more 给出configure的帮助信息
make clean 清除之前留下的文件
make 编译
make install 安装
安装时多查看README/INSTALL文件的说明

19. 文件压缩命令

*.Z compress程序压缩的文件
*.bz2 bzip2程序压缩的文件
*.gz gzip程序压缩的文件
*.tar tar程序打包的文件,并没有压缩过
*.tar.gz tar程序打包的文件,并经过gzip的压缩处理
compress filename filename.Z 压缩文件
compress -d filename.Z 解压文件
gzip filename filename.gz 压缩文件
gzip -d filename.gz 解压文件
zcat filename.gz 查看压缩文件
bzip2 -z filename 压缩文件
bzip2 -d filename.bz2 解压文件
bzcat filename.bz2 查看压缩文件内容
tar -cvf filename.tar directory_name 文件归档
tar xvf filename.tar 把文件包解开
tar xzvf filename.tar.gz 解压并解包
tar xjvf filename.tar.bz2 解压并解包
tar ztvf filename.tar.gz 查看tar内容

20. 通配符(wildcard character)

?:表示该位置可以是任意单个字符
*:表示该位置可以是若干个任意字符
[charset]:可替代charset中的任意单个字符
例如
[Cc]h可以分别表示Ch和ch
[a-z]可以代替任意单个小写字母,[a-zA-Z]表示任意字母
rm a*.out表示删除所有以a开头的,扩展名为.out的文件
ls img-[1-5].jpg表示img1.jpg, img2.jpg, img3.jpg, img4.jpg, img5.jpg

21. Linux目录架构

/ 根目录
/bin 常用命令存放的目录,binary file
/boot 存放系统启动时必须读取的文件,包括内核在内
/boot/grub/menu.lst GRUB设置
/boot/vmlinuz 内核
/boot/initrd 内核解压所需要的RAM Disk
/dev 系统周边设备
/etc 系统相关配置文件和子目录,包括网络配置文件、文件系统、X系统配置文件、设备配置信息、用户信息等
/etc/DIR_COLORS 设定颜色
/etc/hostname 设定节点名称
/etc/networking 只有yes表明网络存在
/etc/host.conf 文件说明用户的系统如何查询节点名称
/etc/hosts 设定机器IP与名称的对应表


/etc/hosts.allow 设置允许使用inetd的机器列表
/etc/hosts.deny 设置不允许使用inetd的机器列表
/etc/hosts.equiv 设置不用密码访问的客户机名称

/etc/inetd.conf 设定系统网络守护进程inetd的配置
/etc/gateways 设定路由器的配置
/etc/protocols 设定系统支持的协议
/etc/named.conf 系统作为DNS服务器的配置文件
/etc/sysconfig/network/scripts/ifcfg-eth0 设置IP/MAC等信息
/etc/resolv.conf 设置DNS
/etc/X11 X Window的配置文件
/etc/fstab 记录开机要加载的文件系统

/etc/inittab 设定系统启动时init进程要进入什么样的runlevel

/etc/issue记录用户登录前显示的信息

/etc/group设定用户的组名和相关信息
/etc/passwd 设定用户帐号信息
/etc/shadow 用户密码信息

/etc/sudoers 可以sudo命令的配置文件
/etc/securetty 设定root用户可以登录的终端
/etc/login.defs 设定所有用户登录时的缺省配置

/etc/exports 设定NFS系统
/etc/init.d/ 存放预设的自动启动进程的启动脚本
/etc/xinetd.d/ 存放super daemon管理的各项服务的设置文件
/etc/modprobe.conf 内核模块额外参数设置
/etc/syslog.conf 系统日志设置文件

/home 普通用户家目录
/lib或/lib64 系统会用到的函数库,系统动态链接共享库
/lib/modules kernel相关模块
/var/lib/rpm rpm包安装处

/lost+found 系统不正常错误发生时,会将一些遗失的片段置于该目录下
/mnt 外部设备的挂载点
/media 与/mnt相类

/opt 主机额外安装的软件

/proc 虚拟目录,内存的映射,存储系统信息
/proc/version 内核版本
/proc/sys/kernel 系统内核功能

/root 系统管理员的家目录
/sbin 系统管理员才能执行的系统管理指令
/srv 一些服务启动后,这些服务所需的文件目录
/tmp 一般用户或正在执行的程序存放临时文件的地方
/usr 最大的目录,存放应用程序和文件
/usr/X11R6 X-window目录

/usr/src Linux源代码
/usr/include 系统头文件
/usr/openwin 存放SUN的OpenWin
/usr/share/man 在线使用手册
/usr/bin 用户执行的binary file目录
/usr/local/bin 用户执行的binary file目录
/usr/lib 系统使用的函数库
/usr/local/lib 系统使用的函数库
/usr/sbin 系统管理员才能执行的指令
/usr/local/sbin 系统管理员才能执行的指令

/var 日志文件等
/var/log/secure 记录登录系统存取文件的信息
/var/log/wtmp 记录登录用户的信息
/var/log/messages 系统发生的错误信息
/var/log/boot.log 记录开机或者是一些服务启动的时候,所显示的启动或关闭信息
/var/log/maillog 记录邮件存取或往来的用户记录
/var/log/cron 记录crontab服务的内容
/var/log/httpd, /var/log/news, /var/log/mysqld.log, /var/log/samba, /var/log/procmail.log 不同的网络服务信息

22. runlevel的级别

0:系统停机状态
1:单用户工作状态,root权限,用于系统维护,禁止远程登录
2:多用户状态(没有NFS)
3:完全的多用户状态(有NFS),登录后进入控制台命令行模式
4:系统未使用,保留
5:X11控制台,登录后进入GUI模式
6:系统正常关闭并重新启动,默认运行级别不能为6,否则不能正常启动

23. BASH常用变量

$HISTFILE: 用于存储历史命令的文件
$HISTSIZE:历史命令列表的大小
$HOME:当前用户的家目录
$OLDPWD:前一个目录
$PATH:bash寻找可执行文件的搜索路径
$PS1:命令行的一级提示符
$PS2:命令行的二级提示符
$PWD:当前工作目录
$SECONDS:当前shell开始后所经过的时间长度,单位为秒