1、glob 通配字符
*多个任意字符
?一个任意字符
[]匹配指定范围内的任意单个字符
[^]匹配范围外的任意单个字符
[:lower:]小写字母 #中括号为字符集的一部分,使用时还要加中括号
[:upper:]大写字母
[:alnum:]所有字母
[:digit:]数字
[:space:]空白字符
[:punct:]标点符号
2、组合键
Ctrl+a:切换至命令行首
Ctrl+l:清屏
Ctrl+e切换至命令行尾
Ctrl+c 取消
Ctrl+u:删除光标所在处至行首内容
Ctrl+k: 删除光标所在处至行尾内容
3、IO重定向和管道
程序:指令+数据
读入数据:Input
输出数据:Output
打开的文件都一个fd:file descriptor
标准输入:keyboard, 0, /dev/stdin
标准输出:monitor, 1, /dev/stdout
标准错误输出:monitor, 2, /dev/stderr
#标准错误输出流和错误输出流是两种不同的流
I/O重定向:
输入重定向
输出重定向:
COMMAND > NEW_POS, COMMAND >> NEW_POS
>:覆盖重定向;
>>:追加重定向;
set �CC
如果覆盖重定向目标文件存在,则禁止执行;
>|: 确认要覆盖
set +C
允许覆盖
错误重定向:#标准输出流和错误输出流是两种不同的数据流
2>:覆盖
2>>:追加
同时重定向标准输出流和错误输出流:
COMMAND > /path/to/file.out 2> /path/to/file.err 分别重定向
COMMAND > /path/to/file.out 2>&1 错误输出重定向到标准输出
COMMAND &> /path/to/file.out 重定向到同一个文件
输入重定向:
<
管道:
COMMAND1 | COMMAND2 | ……:前一个命令的输出结果作为后一个命令的输入
tr :
tr [OPTION]... SET1 [SET2]
-d: 删除字符
cat >> /path/to/somefile <<EOF #EOF结束符 #可以简单新建一个文本文佳
mkdir 创建目录
mkdir -pv :创建父目录并显示创建过程#父目录不存在时使用-p选项
rmdir 删除空目录
rmdir /PATH/TO/SOMEWHERE
cat more less head tail
cat :在屏幕输出文本所有内容,并退出进程 #不常用
head 显示文件头部 #查看大文本文件非常有效
tail 显示文件尾部内容
-f 监视文件内容 # 实时输出文本新添加内容
less
文本搜索
/KEYWORD 向后查找相关字符
?KEYWORD 向前查找相关字符
n 向后搜索
N 向前搜索
时间戳管理工具touch
每个文件都有三个时间戳:
atime: 文件最近一次被访问的时间;
mtime: 文件最近一次被“修改”的时间;
ctime:文件最近一次被“改变”的时间;
-a 更新attime
-m 更新mtime
-c 更新ctime #a b改变会促成c改变
-t 指定时间 [[CC]YY]MMDDhhmm[.ss]
-c 不创建空文件
cp ,mv,rm
cp = copy
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE..
cp SOURCE DEST
cp -r 递归复制,复制目录#默认不复制非空文件
cp -d 不跟踪符号链接,复制原有链接文件
cp --preserve[=ATTR_LIST]
cp -a -dR --preserve=all
cp -i :interactive #一种安全选项,有提示,root 自带,普通用户没有
cp -f 强制
cp -v 显示过程
mv:移动文件
-f:强制
-i:交互删除
rm:删除文件
-r 删除目录
-f:强制
-i:交互删除
文本编辑器
nano 简单易用的文本编辑器#不常用。
1、wc
-l 显示行数
-w:显示单词数
2、cut
-d: 指明分隔符;-d' ', -d:
-f:指明要显示的字段
#:
#-#:1-3
#,#: 1,3,7
3、sort 排序
-r 逆序显示
-f 忽略字母大小写
-u 排序后去重
-t CHAR 指明分隔符
-k # :字段
-n :表示以数值大小排序
4、uniq
-c: 显示每行重复的次数;
-d: 只显示重复过的行;
-u: 只显示不曾重复的行;
附图:组合应用
根据马哥课程记录整理