linux
1.常用操作
1.1.查看 版本
uname -r
uname -a
cat /proc/version
cat /etc/redhat-release
1.2.常用操作
1.2.1.which 命令位置
which 指令
查看执行命令所在位置
**1.2.2.ls 目录查询
ls [路径]
用于列出用户有权访问的任何目录的内容
-a 显示指定目录下所有子目录与文件,包括隐文件
* -A 显示指定目录下所有子目录与文件,包括隐文件 ,但不列出”.”,”…”
-c 按文件的修改时间排列
-d 仅列出目录本身,而不是列出目录内的文件数据(没用)
-F 区分文件类型
目录名后面标记 “/”
可执行文件后面标记 “*”
符号连接后面标记 “@”
管道后面标记 “|”
socket文件后面标记 “=”
* -l 以列表格式来显示文件的详细信息
-L 若指定文件为一个符号链接文件,则显示链接所指向的文件
-o 与-l相同,只是不显示拥有者的信息
-r 按字母顺序或最早优先的顺序显示输出结果
-R 递归式的显示指定目录的各个子目录中的文件
-t 按修改时间顺序显示输出结果
-u 按文件上次存取的时间显示输出结果
-h 文件大小按k,M,G为单位显示.与-l一起使用
**1.2.3.cd 用于改变工作目录
cd 路径
**1.2.4.pwd 当前位置
pwd
用于显示用户在文件系统中的当前位置
1.2.5.清屏
clear
clear 或者 ctrl + /
清屏, 将光标定位到屏幕第一行
1.2.6.结束当前进程
操作 : ctrl + c
结束当前进程
1.2.7.写入内容
echo 字符串
写入内容, 也可以写入指定的文件
1.2.8.通配符
*表示所有 ls *zip
? 表示一个字符 ls ?a
[] 表示枚举
file_[357].txt
显示带3,5,7的文件
file_[^357].txt
显示不带3,5,7的文件
file_[1-9].txt
显示从1到9的文件
**1.2.9.whereis 查找应用相关文件位置
whereis 应用
1.3.目录结构
路径 | 说明 | |
---|---|---|
* | / | 根目录 |
~ | 表示用户主目录 | |
. | 当前目录 | |
* | … | 上一级目录 |
/bin | 存放系统中最常用的可执行文件(二进制) | |
/boot | 存放linux内核和系统的启动文件 | |
/dev | 存放所有设备文件 | |
* | /etc | 存放系统的所有配置文件 |
* | /home | 用户主目录的默认位置 |
/lib | 标准程序设计库,又叫动态链接共享库 | |
/mnt | 提供这个目录是让用户临时挂载其他的文件系统 | |
/opt | 第三方开发者安装和卸载它们的软件包 | |
* | /root | 系统管理员的主目录 |
/sbin | 类似于/bin,大部分是系统管理员使用的系统程序 | |
* | /usr | 所有程序安装在这里,本地安装的程序在/usr/local下 |
/var | 包含系统一般运行时要改变的数据. | |
/proc | 虚拟的目录,是系统内存的映射.可直接访问这个目录来获取系统信息 |
1.4.目录/文件操作
1.4.1.mkdir 创建一个目录
-m 配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色
-p 表示可以嵌套 创建子目录,即多层目录.
1.4.2.touch 创建一个新文件
1.4.3.file 判断文件类型
1.4.4.rm 删除一个或多个文件/目录
-i 交互模式的删除操作.在删除目标文件之前将给出提示,要求用户确认,回答 y 表示目标文件将被删除
-f 非交互模式的删除操作,忽略不存在的文件
-r 若源文件是一个目录,rm命令将递归地删除该目录下的所有子目录和文件
-v 显示详细的删除过程
1.4.5.rmdir 删除一个目录
1.4.6.cp 文件或目录拷贝到另一个文件或目录中
-a 该选项通常在拷贝目录时使用,保留链接,文件属性,并递归地拷贝目录,其作用等于dpr选项的组合
-d 拷贝时保留连接
-f 非交互模式的复制操作.覆盖已经存在的目标文件而不提示
-i 交互模式的复制操作,与-f选项相反.在覆盖目标文件之前将给出提示,要求用户确认,回答 y 表示目标文件将被覆盖.
-p 除复制源文件内容外,还将其修改时间和访问权限也同时复制
-r 若源文件是一个目录,cp命令将递归地复制该目录下的所有子目录和文件
-l 不做拷贝,只是连接文件
-v 显示详细的复制过程
1.4.7.mv 将文件/目录由源目录移动到目标目录中
-i 交互模式的移动.在覆盖目标文件之前将给出提示,要求用户确认,回答 y 表示目标文件将被覆盖
-f 非交互模式的移动操作.覆盖已经存在的目标文件而不提示
-v 显示详细的移动过程
1.4.8.grep 查找文件里符合条件的字符串
-n 显示匹配行及行号
-v 显示不包含匹配文本的所有行(相当于求反)
-i 忽略大小写
-c 统计满足条件的行数
^字符 行首,搜寻以 指定字符 开头的行
字符$ 行尾,搜寻以 指定字符 结束的行
1.4.9.find 在特定的目录下搜索符合条件的文件
-name 文件名
-type 文件类型
d: 目录
c: 字型装置文件
b: 区块装置文件
p: 具名贮列
f: 一般文件
l: 符号连结
s: socket
1.4.10.ln 创建链接
创建链接 (相当于windows中的快捷方式)
-s 表示创建软链接,缺省情况下,创建硬链接
1.5.文件读写操作
1.5.1.cat/tac 读取文件的内容
用于依次读取指定文件指定文件的内容,并在标准输出设备上显示
-v 用一种特殊形式显示控制字符(如: 换行 ^M), TAB除外
-T 将TAB显示为 ^I ,只与 -v 选项同时使用.
-E 在每行的末尾显示一个 $ ,只与 -v 选项同时使用
-u 输出不经过缓冲区
1.5.2.nl 与cat相同 , 但输出行号
1.5.3.more 分屏显示
按Ctrl+f(或空白键space) 就往下一页显示,
按Ctrl+b(b)键就会往回(back)上一页显示,
Enter键可以向下滚动显示n行,默认为1行
1.5.4.less 分屏显示
more命令相同
使用 pageUp键, pageDown键前后翻页
1.5.5.head/tail 显示文件的指定几行
显示文件的指定几行
head 从文件头开始显示
tail命令默认显示末尾的10行内容
1.5.6.wc 统计指定文件中的
统计指定文件中的字节数、字数、行数,并将统计结果显示输出
-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L 打印最长行的长度。
1.5.7.>追加
追加 echo hello>>test.txt
不换行追加 echo -n hello >>test.txt
输出重定向
<输入重定向
和>>的区别
>
清空后写入
>>
追加内容
将前一个命令得到的结果写入> 后面的文件的三种方式
1表示标准输出流 2表示标准错误输出流 0表示标准输入流
1> 正确信息写入文件 ls 1> test.txt
2> 错误信息写入文件 ls 2> test.txt
&> 不管正确还是错误都写入文件 ls &> test.txt
1.6.vi/vim编辑文件
1.6.1.命令模式(Command mode)
i,并不会输入一个字符,而是切换到输入模式,以输入字符。
x 删除当前光标所在处的字符。
: 切换到底线命令模式,以在最底一行输入命令。
/word 向光标之下寻找一个名称为 word 的字符串
n 下一个 满足条件的
?word 向光标之上寻找一个字符串名称为 word 的字符串。
:n1,n2s/word1/word2/g n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2
1.6.2.输入模式(Insert mode)
ENTER,回车键,换行
BACKSPACE,退格键,删除光标前一个字符
DEL,删除键,删除光标后一个字符
方向键,在文本中移动光标
HOME/END,移动光标到行首/行尾
Page Up/Page Down,上/下翻页
Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
ESC,退出输入模式,切换到命令模式
1.6.3.底线命令模式(Last line mode)
:q! 退出程序
:w 保存文件
按ESC键可随时退出底线命令模式。
:w [filename] 将编辑的数据储存成另一个档案(类似另存新档)
:r [filename] 在编辑的数据中,读入另一个档案的数据
:set nu 显示行号,设定之后,会在每一行的前缀显示该行的行号
:set nonu 与 set nu 相反,为取消行号!