Linux
于1991年由芬兰大学生开发,是一个类Unix开源版操作系统。
特点:
·强大的硬件支持
·安全性高、稳定性强(开源稳定漏洞少)
·Linux使用范围广(应用服务、效率要比微软高)
Shell
·Linux系统中运行的一种特殊程序
·在用户和内核之间充当“翻译官”
·用户登录Linux系统时,自动加载一个Shell程序
·Bash是Linux系统中默认使用的Shell程序
流程:接收用户输入的命令→解释命令→传递给系统内核执行
Linux命令分类
内部命令和外部命令的区别:
内部命令:继承于Shell解释器程序内部的一些特殊指令,属于Shell的一部分,没有单独对应的系统文件,自动载入内存可以直接使用。
外部命令:Linux系统中能够完成特定功能的脚本文件或二进制程序,属于Shell解释器程序之外的命令,每个外部命令对应了系统中的一个文件,必须知道其对应的文件位置,由Shell加载后才能执行。
编辑Linux命令行的辅助操作
Tab键:自动补齐
反斜杠”\”:强制换行
Ctrl+U:清空至行首
Ctrl+K:清空至行尾
Ctrl+L:清屏
Ctrl+C:取消本次命令编辑
Ctrl+J:回车
Ctrl+H:删除
获得命令帮助:
help (查看Shell内部命令的帮助信息)
命令的“–help”选项 (适用于大多数Linux外部命令)
col
col是一个命令程序,用于过滤文本中的一些特殊控制字符;另外还使用了“|”和“>”符号,这是Shell环境中的两种特殊运用。
例:man ls | col -b > lshelp.txt
附:>(保存,会覆盖)
附:>>(在原有基础上追加)
更改主机名:set-hostname 主机名 (命令+改成XX主机名)
切换工作目录 cd
将用户的工作目录更改到其他位置
pwd (显示用户当前所在工作目录位置)
cd 目标位置 (切换到目标位置)
cd … (回到上一层目录)
cd ~ (回到当前的家目录,cd后面可以什么都不加)
cd – (回到上次的目录)
**绝对路径:**以根目录“/”作为起点。在Linux系统中根目录只有一个,无论当前处于哪个目录中,都可以通过绝对路径非常准确地表示一个目录或文件所在位置。但如果路径较长,输入的时候就会变得繁琐。
**相对路径:**一般以当前工作目录作为起点,不以“/”为开头,使用更加简短、便捷。比如直接使用目录名或文件名表示当前工作目录中的子目录、文件的位置。比如,“public.conf”可表示当前目录下的public.conf文件,使用一个点号“.”开头可以明确表示以当前的工作目录作为起点。 “./public。conf”也可表示当前目录下的public.conf文件。使用两个点号开头表示以上一级目录作为起点。
列表显示目录 ls
ls 【选项】 【文件或目录】
-d 查询当前路径下的所有目录
-a 显示带“.”的文件,这是隐藏文件
-c 按文件修改时间排序
-i 在输出首位显示文件|节点号
-l 以长格式显示文件的详细信息
-r 按逆序显示ls命令的输出结果
-R 递归的显示指定目录的各个目录中的文件
结合通配符:
“?” (文件名中的一个未知字符)
“*” (文件名中的任意多个字符)
设置别名alias
通过别名机制简化常用的、比较长的命令
alias 命令别名=命令
例:alias myls = ‘ ls-alh’←(这条命令的别名就是myls)
统计指定目录及文件空间占用情况 du
统计指定目录或文件所占用磁盘空间的大小
du 【选项】 【文件或目录】
-a 统计磁盘空间占用时包括所有的文件
-h 以更人性化的方式(默认以KB计数,但不显示单位)显示统计结果
-s 只统计所占用空间大小,而不是每个子目录、文件的大小
创建新目录
mkdir 【选项】 目录位置及名称
在当前目录下创建名为abc的子目录
mkdir abc
在创建的目录下创建子目录,创建目录/abc,在/aa/bb下创建子目录cc
mkdir -p /abc/aa/bb/cc
创建空文件 touch命令
touch a (a是文件名)
touch a b c (同时创建多个文件,a、b、c都是文件名)
创建连接文件 ln
为文件或目录建立链接文件,类似于windows系统的快捷方式
链接文件类型
软链接:ln 【-s】 源文件或目录 链接文件或目标位置
硬链接:ln 源文件
软链接可以创建文件或目录,硬链接只能创建文件。
删除文件或目录 rm
rm 【选项】 要删除的文件或目录
-f 不提示,直接强制删除
-i 提示,询问是否删除,Yes/NO
-r 递归删除子目录和子目录中的文件
rm -rf * 删除所有文件
(高危命令,一定要注意,在生产环境中一旦不小心把所有数据删除了,是有很大可能要负刑事责任的)
rm -rf a* 删除开头为a的文件
注意:
在修改文件之前,一定要备份!
备份命令格式: copy 文件名abk年月日
例:copy 123abk20200707
复制文件或目录
将需要复制的文件或目录重建一份,并保存为新的文件或目录
cp 【选项】 源文件或目录 目标文件或目录
-f 覆盖目标同名文件或目录时不进行提醒,直接强制复制
-i 覆盖目标同名文件或目录时提醒用户确认(YES/NO)
-p 复制时保持源文件的权限、属主及时间标记等属性不变
-r 复制目录时必须使用此选项,表示递归复制所有文件及子目录
移动文件或目录 mv
将指定文件或目录转移位置,如果目标位置与源位置相同,则相当于执行重命名操作
查找命令/文件存放的目录 which
搜索范围由环境变量PATH决定(echo $PATH)
which 命令|程序名 或 which -a 命令|程序名
例:which ls
查找文件或目录 find
采用递归的方式,根据目标的名称、类型、大小等不同属性进行精细查找
find 【查找范围】(查找文件或子目录位置) 【查找条件表达式】(查找条件类型)
常用查找条件类型:
按名称查找: -name 根据目标文件的名称进行查找,允许“*”及“?”通配符。
按文件大小查找: -size 根据目标文件的大小进行查找。一般使用“+”“-”号设置超过或小于指定的大小作为查找条件。常用容量单位包括kB(k小写)、MB、GB。
按文件属主查找: -user 根据文件是否属于目标用户查找。
按文件类型查找: -type 根据文件的类型进行查找,文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等。
使用find命令实现多个查找条件
”-a“表示 and (可以理解为逻辑关系中的与)
”-o“表示 or (可以理解为逻辑关系中的或)
例:find /boot -size +1024k -a -name “ab*”
find/boot -size +1024k -o -name“a*c”
VI编辑器
(可以对如txt的文件内容进行编辑)
vi 123.txt (编辑文本)
方向键 (控制光标位置)
i (插入命令)
backspace键 (删除内容)
esc (退出编辑模式)
shift : wq (保存并退出)
q! (不保存退出)