文本处理:
cut join sed(功能强大,难) awk(更难)
cut -d :(指定字段分隔符冒号,默认是空格) -f1(标识字段) /etc/passwd
-d 指定字段分隔符冒号,默认是空格
-f 指定要显示的字段
-f 1,3
-f 1-3(取范围1到3)
文本排序:sort(影响显示次序,不影响源文件)默认排序是ASCII码升序
-n 按照数值大小排序
-r 降序(不联合-n,按ASCII码降序)
-n -r(联合使用按数值大小)降序
-t 字段分隔符 sort -t: -k3 /etc/passwd
-k 以哪个字段为关键字进行排序
-u (uniq):排序后相同的行只显示一次
-f :排序时忽略字符大小写
uniq(linux中不相邻重复的行不是重复的行)
-d 只显示重复的行(比较常用)
-D 显示重复的行
-c 显示文件中行重复的次数(比较常用)
文本统计:wc(word count) 行数 字节数 单词数
wc /etc/fstab
-l 行数
-w 单词数
-c(-m) byte(字节)
-L 最长的一行包含多少个字符
tr 字符处理命令,转换或删除字符(结合输入重定向),逐个字符进行处理,
不是处理单词的
tr [OPTION] ... SET1 [SET2]
tr 'ab' 'AB'
tr 'a-z' 'A-Z' < /etc/passwd
-d 删除出现在字符集中的所有字符
bash及其特性
shell:外壳
GUI:Gnome,KDE,Xfce
CLI:sh,csh,ksh,bash,tcsh,zsh
程序:进程(是程序的副本),允许一个账号重复登录多次
进程:在每个进程看了,当前主机上只存在内核和当前进程
进程是程序的副本,进程是程序执行的实例
用户工作环境:
bash:
# 管理员
$ 普通用户
shell,子shell
pstree(以后再说) exit(退出一层shell)
bash:
1 、命令历史,命令补全
2、管道、重定向
3 、命令别名
4 、命令行编辑
5、命令行展开
6、文件名通配
7、变量
8、编程
命令行编辑:
光标跳转:
Ctrl + a:跳到命令行首
Ctrl + e:跳到命令行尾
Ctrl + u:删除光标至命令行首的内容
Ctrl + k:删除光标至命令行尾的内容
Ctrl + (左右箭头):图形下打开的终端支持,一次跳转一个单词(模拟终端)
Ctrl + l:清屏
命令历史:
history 命令查看命令历史
-c:清空命令历史
-d OFFSET [n]: 删除指定位置的命令
-w 保存命令历史至历史文件
history -d 500 删除第500个
history -d 500 3 删除500开始的3个
环境变量:
PATH:命令搜索路径
HISTSIZE:命令历史缓冲区大小,默认1000
查看: echo $HISTSIZE
命令历史的使用技巧
!n :执行命令历史中的第n条命令
!-n :执行命令历史中的倒数第n条命令
!!:执行上一条命令
!string:执行命令历史中最近一个以指定字符串开头的命令
!$:引用前一个命令的最后一个参数
ESC,. : 引用前一个命令的最后一个参数
Alt + . : 引用前一个命令的最后一个参数
命令补全:
tab键 :搜索PATH环境变量所指定的每个路径下以我们给出的字符
串开头的可执行文件,如果多于一个,两次tab,可以给出
列表,否则直接补全
路径补全:
tab键 :搜索我们给出的起始路径下的每个文件名,并试图补全
database:数据库
关系型数据库:
表:二维表
文本文件: