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删除