Linux基础知识学习笔记

本文深入解析Linux系统的基础知识,包括目录结构、关键命令的使用方法,如帮助命令、文件操作、文本查看、权限修改、文件搜索等。同时,详细介绍了grep、find、locate、whereis、which等命令的语法和示例,以及vi编辑器的使用。

linux目录结构

目录描述
/根目录
/bin系统的常用命令s目录. 包括控制台命令, 系统可执行文件, 系统的核心二进制文件等
/sbin存放系统管理常用命令
/etc发布目录, 相当于 windows 系统中的 windows 目录, 保存系统中的所有核心内容. 用于保存系统数据文件、启动文件和脚本等
/usr用户目录, 相当于windows系统中的program files目录. 常用于安装系统所有用户共 用的软件,资源的
/rootroot 根用户的用户目录. 相当于 windows 系统中的 C:/users/administrator 目录 称为用户主目录
/home保存其他用户主目录的目录 如: Linux系统中有oldlu用户. 那么一定有/home/oldlu目录存在. 代表用户的主目录
/var系统运行过程的数据目录
/boot存放系统核心文件
/dev存放与设备有关的文件
/lib存放用于编译某些程序时要用的函数库
/media用于系统自动挂载存储设备时(例如光驱、U盘)使用的目录

linux命令

1、帮助命令

2、文件目录相关

2.1 文件(夹)操作

2.2 查看文本内容命令

2.3 文件与目录权限修改

2.4 搜索文件或目录

2.4.1 grep
  • grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来
  • grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
语法:grep [-option]
常用参数: 
-c:只输出匹配行的计数。 
-I:不区分大小写(只适用于单字符)。
-h:查询多文件时不显示文件名。 
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及行号。 
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行

pattern正则表达式主要参数: 
\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。 
$: 匹配正则表达式的结束行。 
\<:从匹配正则表达式的行开始。 
\>:到匹配正则表达式的行结束。 
[ ]:单个字符,如[A]即A符合要求 。 
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 
。:所有的单个字符。 
* :有字符,长度可以为0。

示例:
打印testfile文件中所有以north开头的单词的行
grep '\<north' testfile

打印testfile文件所有包含单词north的行
grep '\<north\>' testfile

显示aa文件中,所有包含每个字符串至少有5个连续小写字符的字符串的行
grep[a-z]\{5\}’ aa

显示在aa,bb,cc文件中匹配test的行
grep 'test' aa bb cc

wc统计文件信息 
查看系统中有多少个用户 :
wc -l /etc/passwd
2.4.2 find
  • find命令可以对指定目录以及其所有子目录进行文件搜索

语法: find [path] [-option] filename
参数:
-name:按 
find /etc -name "*.conf"   查找/etc目录及其子目录下所有名字结尾为.conf 的文件

-user:按文件属主来查找文件 
find /etc -user root    查找/etc目录及其子目录下所有为root用户的文件夹和文件
2.4.3 locate
  • 由于find命令在查找数据时比较消耗硬盘(find命令直接查找硬盘数据),可以使用另一个locate命令
  • locate命令查找文件特别快,比find命令要快很多
语法: locate filename
示例:
locate passwd
  • 如果locate出现以下错误, 则先执行updatedb命令手动更新数据库,然后再执行locate命令:updatedb
    locate 错误
  • locate效率高的原因

locate的快速是因为从已建立的数据库/var/lib/mlocate中查找数据,而不是直接在硬盘上进行,所以自然很快。但是locate命令也有限制,比如,有时候我们可能会找到一些已经被删除的文件,或者刚刚新建的文件我们找不到。这是由数据库文件的更新机制导致的。基本上Linux每次启动会更新数据库文件,但是我们最新创建或者删除的文件并没有被数据库记录,导致查询结果有问题。针对此,我们也可以用updatedb命令手动更新数据库。

2.4.4 whereis
语法: whereis [-option] filename
参数:
-b   定位可执行文件。
-m   定位帮助文件。
-s   定位源代码文件。
-u   搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
-B   指定搜索可执行文件的路径。
-M   指定搜索帮助文件的路径。
-S   指定搜索源代码文件的路径。

示例:whereis passwd

whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。
但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新

2.4.5 which

which命令用于查找可执行文件的位置,该命令通过环境变量PATH所设置的路径进行搜索

语法: which filename
示例: which passwd

cd 这个常用的命令找不到。 为什么呢?这是因为 cd 是bash 内建的命令。 但是 which 默认是找 PATH 内所规范的目录,所以找不到。

vi编辑器

三级目录

打包压缩

三级目录

系统管理

关机重启

用户和组管理

进程管理

网络管理

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值