Linux的目录结构与部分实用命令,轻松掌握Linux基础

1.Linux的目录结构

Linux目录结构如下:
/root :管理员的宿主(家)目录;
/home/ xxx:除root 用户之外的普通用户的家目录;
/bin:存放二进制文件,所有用户可执行的命令。实际是个软链接,链接到 /usr/bin;
/sbin:存放二进制文件,只有管理员可执行的管理命令。软链接到 /usr/sbin;
/boot:系统内核、启动文件自录;
/dev:存放设备文件(光驱、硬盘等);
/etc:存放系统程序和大部分应用程序(rpm、yum安装)的配置文件;
/var:存放可以变化的文件,包括各种日志文件;
/lib:存放系统程序的动态连接共享库文件(类似于Windows里的DLL文件)。软链接到 /usr/lib;
/usr:存放系统用户工具和程序;
/media:可拆卸的媒介挂载点,例如U盘、光驱等;
/proc:存放映射系统信息的文件;
/mnt :用于临时挂载储存设备的目录;
/opt:第三方应用程序安装所存放的目录;
/tmp:存放系统的临时文件。

2.查看文件内容

2.1cat命令

用途:直接显示出整个文件的内容(查看短小的文件内容)
用法:cat [选项] 文件名…

示例:
[[email protected] ~]# cat /etc/sysconfig/network 指查看网卡信息
[[email protected] ~]# cat /etc/redhat-release /proc/version 指查看系统版本和内核版本
常用选项及详解:
-n、-b、-s
-n:对所有输出的行数编号;
-b:对于空白行不编号;
-s:将所有的连续的多个空行替换为一个空行。

2.2more命令

用途:全屏方式分页显示文件内容(查看比较大或长的文件内容)
用法:more [选项] 文件名…

交互操作方法:
按Enter键向下逐行滚动
按空格键向下翻一屏
按b键向上翻一屏
按q键退出
特点:
下翻到最后一页后会自动退出;
结合管道操作使用时(例如:Is -R /etc | more)无法向上翻页。

2.3less命令

用途:与more命令相同,但扩展功能更多
用法:less [选项] 文件名…

交互操作方法:
Page Up向上翻页,Page Down向下翻页;
按“/”键查找内容,“n”下一个内容,“N”上一个内容;
通过上下方向键可以实现上下逐行滚动;
其他功能与more命令基本类似;
特点:
下翻到最后一页后不会自动退出;
结合管道操作使用时可以向上翻页。

2.4head命令与tail命令

2.4.1head命令

用途:查看文件开头的一部分内容(默认为10行);
用法:head -n 文件名… //n为行数

2.4.2tail命令

用途:查看文件结尾的少部分内容(默认为10行);
tail -n 文件名…
tail -f 文件名 //跟踪文件尾部内容的动态更新
示例:
tail -7f /var/log/magin

3.统计文件内容wc命令

wc命令用途:统计文件中的单词数量(Word Count)等信息
用法:wc [选项]… 目标文件…

常用命令选项:
-l:统计行数;
-w:统计单词个数;
-c:统计字节数;
注:不带任何选项的wc命令,默认同时使用-lwc三个选项

4.检索和过滤文件内容grep命令

4.1grep命令

用途:在文件中查找并显示包含指定字符串的行;
用法:grep [选项]… 查找条件 目标文件

4.2grep命令常用选项

常用命令选项:
-i、-v、-n、-c、-e
选项详解:
-i:查找时不区分大小写;
-v:显示不包含匹配文本的所有行(反向查询,反向匹配);
-c:只输出匹配到的总行数(不是匹配到的次数);
-n:显示匹配行及行号;
-e:实现可多个查找条件的匹配,逻辑or关系;
-E:支持使用扩展正则表达式,相当于使用egrep命令;
-o:精确匹配,即"仅匹配"之意。
查找条件设置:
要查找的字符串以双引号括起来;
“^…”表示以…开头,“…$ ”表示以…结尾;
“^ $ ”表示空行;
示例:
grep -ie “^NAME” -e "7$ " Centos-Vault.repo -->指将目标文件中以NAME(不区分大小写)开头,以7$ 结尾的内容检索出来;
cat CentOs-Vault.repo l grep -v “^$” -->指查看目标文件时不带空行;
注:| 表示管道命令,其作用是将左边得到的结果传递给右边再执行一次。

5.压缩命令gzip、bzip2命令

用途:制作压缩文件、解开压缩文件;
用法:

gzip [-9] 文件名…
bzip2 [-9] 文件名…
gzip -d .gz格式的压缩文件
bzip2 -d .bz2格式的压缩文件
常用命令选项:
-9、-d
特点:
gzip制作的压缩文件默认的扩展名为”.gz",原始文件不再保留;
bzip2制作的压缩文件默认的扩展名为".bz2",原始文件不再保留;
扩展:
使用"-9"选项可以提高压缩的比率;
-d:用于解压缩已经压缩过的文件,相当于使用gunzip、bunzip2命令;
gunzip文件名.gz;
gzip -d文件名.gz;
bunzip2文件名.bz2;
bzip2 -d文件名.bz2;

6.归档命令tar命令

用途:制作归档文件、释放归档文件;
用法:
tar [选项]… 归档文件名 源文件或目录;(制作归档文件)
tar「选项]… 归档文件名 「-C目标目录];(释放归档文件)
常用命令选项:
-c、-x、-v、-f、-p、-t、-C、-z、-j
tar的常用选项详解:
-c:创建.tar 格式的包文件;
-x:解开.tar 格式的包文件;
-c:解压时指定释放的目标文件夹;
-f:表示使用归档文件;
-p:打包时保留文件及目录的权限;
-P:打包时保留文件及目录的绝对路径;
-t:列表查看包内的文件;
-v:输出详细信息(Verbose);
-j:调用bzip2程序进行压宿或解压;
-z:调用gzip程序进行压缩或解压;
示例:
cd /etc/
tar-jcvf usershow.tar.bz2 passwd shadow

tar jxvf usershow.tar.bz2 -c /opt/

7.文本编辑器vi命令

7.1文本编辑器的作用

1.创建或修改文本文件;
2.维护Linux系统中的各种配置文件;

7.2Linux中最常用的文本编辑器

vi:类UNIX操作系统的默认文本编辑器;
vim: vim是vi文本编辑器(一般简称为vi编辑器)的增强;

7.3vi编辑器的工作模式

三种工作模式:
命令模式,输入模式,末行模式
不同模式间的切换:
Linux的目录结构与部分实用命令,轻松掌握Linux基础
用法:
vi 文件名
vim 文件名
! vim //返回上一次编辑的文件
工作模式详解:
1)命令模式:启动vi编辑器后默认进入命令模式,该模式中主要完成如光标移动、字符中查找,以及删除、复制、粘贴文件内容等相关操作;
2)输入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改、或者添加新的内容。处于输入模式时,vi编辑器的最后一行会出现“-- INSERT–“的状态提示信息;
3)末行模式:该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于未行模式时,vi编辑器的最后一行会出现冒号“:“提示符。

7.4输入模式的插入命令集合

a:往当前光切位置之后插入内容;
A:在所在行的行尾插入内容
i:在当将标位置之而插入内容;
I:在所在行的行音插入内容
o:在光标所在行之下插入个新行内容;
O:在光标所在行之上插入一个新行内容;

7.5命令模式中的命令与详解

1)翻页移动:
Page Down键 或 Ctrl+F -->表示向下翻动一整页内容;
Page Up键 或 ctrl+B -->表示向上翻动一整页内容;
2)行内快速跳转 :
Home键或 ^键、数字0键 -->跳转到本行的行首;
$ 键或End键 -->跳转到本行的行尾;
3)行间快速跳转:
1G或gg -->转到文件内容的第1行 ;
G -->跳转到文件的最后一行;
#G -->跳转到文件中的第#行(其中"#“号用具体数字替换);
M -->跳转至当前页的中间位置;
4)显示行号:
: set nu -->在编辑器中显示行号;
:set nonu -->取消行号显示;
5)删除:
x或Delete键 -->删除光标处的单个字符;
dd -->删除当前光标所在行(有剪切功能);
#dd -->删除从光标处开始的#行内容;
d^ -->删除当前光标之前到行首的所有字符;
d$ -->删除当前光标处到行尾的所有字符;
dw -->删除光标处的整个单词;
6)替换字符:
R 或 shift+r -->瞽换当前光标处字符
7)复制:
yy -->复制当前行整行的内容到剪贴板;
#yy -->复制从光标处开始的#行内容;
扩展示例:
:8,11 m 4 指将8-11行的内容剪切到第4行下面;
:8,11 co 4 指将8-11行的内容复制到第4行下面;
8)粘贴:
P -->粘贴到光标所在行之上;
p -->粘贴到光标所在行之下;
9)查找:
/word -->从当前光标处开始向后进行查找字符串"word”
?word -->从当前光标处开始向前进行查找
n -->定位下一个匹配的被查找字符串
N -->定位上一个匹配的被查找字符串
10)撤销:
u -->按一次取消最近的一次操作;重复u键,恢复多步操作
U -->用于取消对当前行所做的所有编辑
11)保存退出:
:w -->保存修改的内容
:w 新文件名 -->另存为其它文件
:q -->不保存退出
:q! -->强制不保存退出即放弃对文件内容的修改并退出
:wq! -->强制保存并退出
zz 或 :wg 或 :x -->保存当前的文件内容并退出vi编辑器
12)打开新文件:
:e 其它文件名 -->打开新的文件进行编辑
13)读入文件内容:
:r 其它文件名 -->在当前文件中读入其它文件内容
14)文件内容替换:
: s /old/new -->将当前行中查找到的第一个字符串"old”串替换为"new";
: s /old/new/g -->将当前行中查找到的所有字符串"old”替换为“new”;
: # ,# s/old/new/g -->在行号“# ,#“范围内替换所有的字符串"old”为"new”;
:% s/old/new/g -->在整个文件范围内替换所有的字符中"old”为"new”;
: s old/new/c -->在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认。