tr 字符转换
tr 'a' 'A' <1.txt
cut
-d
wc 文本统计
-l 行数
-w 单词数
-c 字符数
sort 文本排序
-r 按字符排序
-n 按数值排序
-t 指定字段分隔符
-k 指定排序字段
BASH
/etc
profile profile.d
~/.bash_profile .bashrc
shell 外壳
bsh ksh
bash:
文件名匹配 命令补全 命令历史 命令行编辑 命令行展开 管道
Ctrl +a行首
ctrl+e行尾
ctrl+u删除
ctrl+k删除
ctrl+l清屏 clear
ctrl+c取消命令不在执行
echo $PATH
hash 显示命令缓冲
hash -d 移除名字所对应缓冲
-r 移除所有缓冲
命令历史:
echo $HISTFILE 历史命令保存在文件中,非正常退出则没有
echo $HISTSIZE HISTFILE HISTFILESIZE
!24 表示执行命令历史中第24条命令
!n 表示执行history中第n条命令
!!表示执行上一条命令
!-n 表示执行倒数第n条命令
!string 找倒数history中离string最近的命令
调用上一条命令的最后一个参数
按Esc后松开按 .
按Alt不松按 .
新的命令+!$
echo $HISTCONTROL
ignorespace以空格开头的命令不记录到历史命令中
ignoredups不记录重复命令
history -c 清空历史命令
-w 保存缓冲中的历史命令之历史文件
-d number +n 删除第几条命令并删除n条
文件名调配
glob 特殊字符,元字符
*:任意长度的任意字符 a*b (匹配以a开头以b结尾的所有字符)
?:任意单个字符 a?b
[]:匹配指定范围内任意单个字符a[axy].a[a-zA-Z]b
[a-z][A-Z][0-9]
[[:alpha:]]=[a-zA-Z]
[[:digit:]]=[0-9]
[[:lower:]]=[a-z]
[[:upper:]]=[A-Z]
[[:alnum:]]=`a-zA-Z0-9`
[[:space:]]=空格
[[:punct:]]=字符
ls a[''][a-zA-Z]=ls a[[:space:]][[:alpha:]]
[^a-z]=[^[:lower:]]除了a-z范围之外的任意单个字符
[^]指定范围之外的任意单个字符
cut -d: -f 1,5 /etc/passwd 显示passwd中前五个字段
cut -d ' ' -f2 test 指定空格为分隔符
tr 'a-z' 'A-Z' <test 将test中所以小写字母改为大写
tr -d 'a'<test 将test中所以a删除