linux基础命令

一、Linux目录结构

蓝色:表示目录

青色:表示链接

黑色:表示文件


1、/- 根

每一个文件和目录从根目录开始。

只有root用户具有该目录下的写权限。请注意,/root是root用户的主目录,这与/.不一样

2、/bin中 - 用户二进制文件

包含二进制可执行文件。

在单用户模式下,你需要使用的常见Linux命令都位于此目录下。系统的所有用户使用的命令都设在这里。

例如:ps、ls、ping、grep、cp

3、/sbin目录 - 系统二进制文件

就像/bin,/sbin同样也包含二进制可执行文件。

但是,在这个目录下的linux命令通常由系统管理员使用,对系统进行维护。例如:iptables、reboot、fdisk、ifconfig、swapon命令

4、/etc - 配置文件

包含所有程序所需的配置文件。

也包含了用于启动/停止单个程序的启动和关闭shell脚本。例如:/etc/resolv.conf、/etc/logrotate.con

5、/dev - 设备文件

包含设备文件。

这些包括终端设备、USB或连接到系统的任何设备。例如:/dev/tty1、/dev/usbmon0

6、/proc - 进程信息

包含系统进程的相关信息。

这是一个虚拟的文件系统,包含有关正在运行的进程的信息。例如:/proc/{pid}目录中包含的与特定pid相关的信息。

这是一个虚拟的文件系统,系统资源以文本信息形式存在。例如:/proc/uptime

7、/var - 变量文件

var代表变量文件。

这个目录下可以找到内容可能增长的文件。

这包括 - 系统日志文件(/var/log);包和数据库文件(/var/lib);电子邮件(/var/mail);打印队列(/var/spool);锁文件(/var/lock);多次重新启动需要的临时文件(/var/tmp);

8、/tmp - 临时文件

包含系统和用户创建的临时文件。

当系统重新启动时,这个目录下的文件都将被删除。

9、/usr - 用户程序

包含二进制文件、库文件、文档和二级程序的源代码。

/usr/bin中包含用户程序的二进制文件。如果你在/bin中找不到用户二进制文件,到/usr/bin目录看看。例如:at、awk、cc、less、scp。

/usr/sbin中包含系统管理员的二进制文件。如果你在/sbin中找不到系统二进制文件,到/usr/sbin

10、/home - HOME目录

所有用户用home目录来存储他们的个人档案。

例如:/home/john、/home/nikita

11、/boot - 引导加载程序文件

包含引导加载程序相关的文件。

内核的initrd、vmlinux、grub文件位于/boot下。

例如:initrd.img-2.6.32-24-generic、vmlinuz-2.6.32-24-generic

12、/lib - 系统库

包含支持位于/bin和/sbin下的二进制文件的库文件.

库文件名为 ld*或lib*.so.*

例如:ld-2.11.1.so,libncurses.so.5.7

13、/opt - 可选的附加应用程序

opt代表可选的。

包含从个别厂商的附加应用程序。

附加应用程序应该安装在/opt/或者/opt/的子目录下。

14、/mnt - 挂载目录

临时安装目录,系统管理员可以挂载文件系统。

15、/media - 可移动媒体设备

用于挂载可移动设备的临时目录。

举例来说,挂载CD-ROM的/media/cdrom,挂载软盘驱动器的/media/floppy;

16、/srv - 服务数据

srv代表服务。

包含服务器特定服务相关的数据。

例如,/srv/cvs包含cvs相关的数据。


二、常用命令

1、命令帮助

[root@localhost ~]#man ps

2、用户

$finger username  显示用户username的信息

$who              显示当前登陆用户

$who am I

$su                成为root用户

$sudo command      以root用户身份执行

$passwd            更改密码

3、SHELL

$history                  显示在当前shell下命令历史

$alias                      显示所有的命令别称

$alias new_command='command'    将命令command别称为new_command

$env                      显示所有的环境变量

$export var=value    设置环境变量var为value

4、显示硬盘、分区、CPU、内存信息

$df -lh                            显示所有硬盘的使用状况

$du -sh *                      显示当前目录下各个目录和文件的大小

$mount                          显示所有的硬盘分区挂载

$mount partition path      挂在partition到路径path

$umount partition            卸载partition

$sudo fdisk -l                  显示所有的分区

$sudo fdisk device            为device(比如/dev/sdc)创建分区表。 进入后选择n, p, w

$sudo mkfs -t ext3 partition  格式化分区patition(比如/dev/sdc1)

修改 /etc/fstab,以自动挂载分区。增加行:

/dev/sdc1  path(mount point) ext3 defaults 0 0

$arch                            显示架构

$cat /proc/cpuinfo          显示CPU信息

$cat /proc/meminfo        显示内存信息

$free                            显示内存使用状

5、网络

$ifconfig      显示网络接口以及相应的IP地址。ifconfig可用于设置网络接口

$ifup eth0    运行eth0接口

$ifdown eth0  关闭eth0接口

$iwconfig      显示无线网络接口

$route        显示路由表。route还可以用于修改路由表

$netstat      显示当前的网络连接状态

$ping IP      发送ping包到地址IP

$traceroute IP 探测前往地址IP的路由路径

$dhclient      向DHCP主机发送DHCP请求,以获得IP地址以及其他设置信息。

$host domain  DNS查询,寻找域名domain对应的IP

$host IP      反向DNS查询

$wget url      使用wget下载url指向的资源

$wget -m url  镜像下载

6、进程

$top              显示进程信息,并实时更新

$ps                显示当前shell下的进程

$ps -lu username  显示用户username的进程

$ps -ajx          以比较完整的格式显示所有的进程

$kill PID          杀死PID进程 (PID为Process ID)

7、文件

$touch filename    如果文件不存在,创建一个空白文件;如果文件存在,更新文件读取和修改时间。

$rm filename      删除文件

$cp file1 file2    复制file1为file2

$ls -l path        显示文件和文件相关信息

$mkdir dir        创建dir文件夹

$mkdir -p path    递归创建路径path上的所有文件夹

$rmdir dir        删除dir文件夹,dir必须为空文件夹。

$rm -r dir        删除dir文件夹,以及其包含的所有文件

$file filename    文件filename的类型描述

$chown username:groupname filename    更改文件的拥有者为owner,拥有组为group

$chmod 755 filename更改文件的权限为755: owner r+w+x, group: r+x, others: r+x

$od -c filename    以ASCII字符显示文件

$cat filename      显示文件

$cat file1 file2  连接显示file1和file2

$head -1 filename  显示文件第一行

$tail -5 filename  显示文件倒数第五行

$diff file1 file2  显示file1和file2的差别

$sort filename    对文件中的行排序,并显示

$sort -f filename  排序时,不考虑大小写

$sort -u filename  排序,并去掉重复的行

$uniq filename    显示文件filename中不重复的行 (内容相同,但不相邻的行,不算做重复)

$wc filename      统计文件中的字符、词和行数

$wc -l filename    统计文件中的行数

推荐阅读更多精彩内容