Linux 基本命令
Linux系统的组成:
1、Linux内核
2、shell
3、文件系统
4、第三方应用软件
shell:我们常用(默认)的就是bash
功能:
1、命令行解释(这是用得最多的!)
2、命令的多种执行顺序
3、通配符( wild-card characters )
4、命令补全、别名机制、命令历史
5、I/O重定向( Input/output redirection )
6、管道( pipes )
7、命令替换( 或$( ) )
8、Shell编程语言( Shell Script )
Linux的目录结构:
1、bin 存放二进制可执行文件(ls,cat,mkdir等)
2、boot 存放用于系统引导时使用的各种文件
3、dev 用于存放设备文件
4、etc 存放系统配置文件
5、home 存放所有用户文件的根目录
6、lib 存放跟文件系统中的程序运行所需要的共享库及内核模块
7、mnt 系统管理员安装临时文件系统的安装点
8、opt 额外安装的可选应用程序包所放置的位置
9、proc 虚拟文件系统,存放当前内存的映射
10、root 超级用户目录
11、sbin 存放二进制可执行文件,只有root才能访问
12、tmp 用于存放各种临时文件
13、usr 用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录
14、var 用于存放运行时需要改变数据的文件
基本命令格式:
cmd [options] [arguments]
,options称为选项,arguments称为参数
通配符:
1、*:匹配任何字符和任何数目的字符
2、?:匹配单一数目的任何字符
3、[]:匹配[ ]之内的任意一个字符
4、[! ]:匹配除了[! ]之外的任意一个字符,!表示非的意思
文件的类型:
1、普通文件:-
2、目录:d
3、符号链接:l
1、硬链接:与普通文件没什么不同,inode 都指向同一个文件在硬盘中的区块;不允许给目录创建硬链接,硬链接只有在同一个文件系统中才能创。
2、软连接:保存了其代表的文件的绝对路径,是另外一种文件,在硬盘上有独立的区块,访问时替换自身路径(简单地理解为 Windows 中常见的快捷方式)。跨文件系统 ,硬链接不可以;软链接可以对一个不存在的文件名或者目录进行链接
4、字符设备文件: c
5、块设备文件 :b
6、套接字:c
7、命名管道:p
基础命令:
绝对路径:以斜线(/)开头 ,描述到文件位置的完整说明 ,任何时候你想指定文件名的时候都可以使用
相对路径:不以斜线(/)开头 ,指定相对于你的当前工作目录而言的位置 ,可以被用作指定文件名的简捷方式
pwd:用户当前的目录
cd:切换目录
. :表示当前目录
..:表示当前目录的上一级目录(父目录)
-:表示用 cd 命令切换目录前所在的目录,即切换到上次的目录
~:表示用户主目录的绝对路径名
ls、ll:显示文件和目录信息
mkdir 目录名:当前目录下创建一个空目录
rmdir 目录名:删除目录,要求当前目录为空
touch 文件名:生成一个空文件或者更改文件的时间
cp 旧路径 新路径:复制文件和目录
mv 旧路径 新路径:移动文件或目录、文件或目录改名
rm 目录或文件名:删除文件或者目录
ln [-s] 被链接的文件 文件名:建立链接文件,-s是软连接,默认是硬链接
find 路径 选项 条件:查找某路径下符合条件的文件
-mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
-amin n : 在过去 n 分钟内被读取过
-anewer file : 比文件 file 更晚被读取过的文件
-atime n : 在过去n天内被读取过的文件
-cmin n : 在过去 n 分钟内被修改过
-cnewer file :比文件 file 更新的文件
-ctime n : 在过去n天内被修改过的文件
-empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name
-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写
-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
stat:查看文件类型或文件属性信息
cat:查看文本文件内容
more:可以分页看;空格键:下一屏;b:上一屏;entry:下一行;q:退出
less:不仅可以分页还可以方便的搜索、回翻等操作,/name 来查找;空格键:下一屏;b 向上翻一页;entry:下一行;Q:退出
tail -10 文件名:查看文件的尾部的10行
head -20 文件名:查看文件的头部20行
echo:把内容输出到指定文件中,有则打开,无则创建
管道命令 | :将前面的结果给后面的命令,
重定向:> 是覆盖模式,>>是追加模式。x
文件打包和压缩命令:
gzip:不保留原文件,直接在原文件上加.gz后缀(压缩)或者去掉.gz后缀(解压)
压缩:gzip 文件名 gzip -r 目录(对目录下的文件递归压缩)
解压:gzip -d 文件名 gzip -rd 目录名
bzip2 -参数 -文件名:可保留原文件,不能压缩目录
-k:保留原文件
-d:解压
tar -参数 -打包压缩解压后文件名 -原文件名:打包压缩解压
-c:建立备份文件
-z:以gzip压缩或ungzip解压
-v:显示详细信息
-f:指定压缩文件
-x:从备份文件中还原文件
例子:
打包:tar -cvf test.tar test1.log test2.log #归档多个文件
压缩:tar -czvf test.tar test1.log test2.log #归档多个文件
解压到当前目录:tar -xzvf test.tar.gz
解压到指定目录:tar -xzvf test.tar.gz -C 指定目录名
grep [options] PATTERN [FILE...]:使用正则表达式搜索文本,并把匹配的行打印出来。
PATTERN :查找条件,可以是普通字符串或者是正则表达式
FILE:查找的文件
例:grep -lr root /etc/* 列出/etc目录(包括子目录)下所有文件内容中包含字符串“root”的文件名
Vi编辑器:
3种模式:
1、普通模式
2、插入模式
3、命令行模式
普通模式:
G:用于直接跳转到文件尾
ZZ:用于存盘退出Vi
ZQ:用于不存盘退出Vi
/、?:用于查找字符串
n:继续查找下一个
yy:复制一行
p:粘贴在下一行
P:粘贴在上一行
dd:删除一行文本
x:删除光标所在的字符
u:取消上一次编辑操作
插入模式:在普通模式下输入插入命令 i、 a 、 o
进入insert模式。用户输入的任何字符都被vim当做文件内容保存起来,并将其显示在屏幕上。
命令行模式:
w:保存当前编辑文件,但并不退出
wq:用于存盘退出Vi
q!:用于不存盘退出Vi
q:用于直接退出Vi (未做修改)
grep:它能使用正则表达式搜索文本,并把匹配的行打印出来。
常用命令: 在文件中搜索一个单词,命令会返回一个包含“match_pattern”的文本行: grep match_pattern file_name grep "match_pattern" file_name 在多个文件中查找: grep "match_pattern" file_1 file_2 file_3 ... 输出除之外的所有行 -v 选项: grep -v "match_pattern" file_name 标记匹配颜色 --color=auto 选项: grep "match_pattern" file_name --color=auto 使用正则表达式 -E 选项: grep -E "[1-9]+"