一 Linux的文件系统
与Windows不同,Linux采用/ 为所有文件的入口,通过/ 建立挂载关系,进而访问数据。为了统一不同发行版的文件系统,进而linux有了LBS规范下的FHS(文件系统层级结构标准)。而/目录下的文件是按照特定机制组织的并且有特定含义。
/boot: 引导文件存放目录;
/bin: binary,供用户使用的基本的命令;开机就会用到的命令; /sbin:管理类命令; /lib: 基本共享库;内核模块; /lib64:x86_64系统的共享库; /etc:配置文件目录; /home/USERNAME: 普通用主目录的默认位置; /root: 管理员的主目录; /media:便携式移动设备; /mnt:临时文件系统挂载点; /opt: 可选目录,默认第三方软件的安装位置; /dev:devices,设备文件 b:块设备 c: 字符设备 /proc: 伪文件系统;用于输出内核与进程的相关信息; /sys: 伪文件系统; /srv:services,系统服务的中间数据; /tmp:临时文件目录; /usr:全局共享,只读文件; bin:保证系统提供基本功能; sbin lib lib64 include: C程序的头文件; share:结构化的独立数据 doc, man local:现在常用的第三方程序的安装位置; bin sbin lib lib64 etc share /var:可变数据存放 cache:应用程序缓存数据 lib:应用程序的状态信息数据 local:专用于为/usr/local下的应用程序存储可变数据; lock:锁文件 log:日志文件 opt:专用于/opt spool:应用程序的数据池; run:运行中的进程的相关数据;通常用守护进程 的pid文件;二 linux 文件类型
d: 目录文件
b: 块设备文件 c: 字符设备文件 l: 符号链接文件 p: 命名管道文件 s:套接字文件三 bash特性
(1) 命令历史
bash会记录此前用户执行的命令;history命令:
-c:清空命令历史; -d #: 删除历史中第#条的命令; history #: 显示最近执行的#条命令;调用过去执行过的命令:
!#:调用历史中的第#条命令; !!: 重复执行上一条命令(2) 命令补全
命令搜索机制: hash>内建命令路径>外检命令路径 按TAB 搜索与输入字母唯一匹配的命令(3) 路径补全
根据用户输入的路径在其上级目录搜索指定字符开头的文件 如果唯一:直接补全; 两次Tab,列出所有符合条件的文件;(4) 命令行展开的功能
~: 展开为当前用户的主目录; ~USERNAME:展开为指定用户的根目录; {}:可承载一个以逗号分隔的列表,并其展开为多个路径; /var/{log,cache,run} = /var/log /var/cache /var/run(5) 命令的执行结果状态,由bash追踪和保存
成功:0 失败:1-255(6) 命令别名
alias/unaliasalias: 查看所有已经定义别名;
alias NAME=COMMAND:定义别名;如果别名同原命令名,想直接执行原命令,则需使用\COMMAND
unalias NAME: 撤消别名;
(7) glob
文件名“通配” *:匹配任意长度的任意字符; ?:匹配任意单个字符; []: 匹配指定范围内的任意单个字符; [^]:匹配范围外的任意单个字符;字符集合:
[:lower:] [:upper:] [:alnum:] [:digit:] [:space:] [:punct:] [:alnum:] (8) 组合键Ctrl+l:清屏
Ctrl+a: 切换至命令行首 Ctrl+e:切换至命令行尾 Ctrl+c:取消命令执行Ctrl+u:删除光标所在处至行首的内容;
Ctrl+k: 删除光标所在处至行尾的内容;(9) IO重定向和管道
I/O重定向:
输入重定向 输出重定向: COMMAND > NEW_POS, COMMAND >> NEW_POS >:覆盖重定向; >>:追加重定向;错误重定向:
2>:覆盖 2>>:追加管道:
第一条命令的输出结果为第二条命令的输入四 文件处理命令
(1) wc:单词,字符统计
wc [OPTION]... FILE... -l: 显示行数 -w: 显示单词数(2) cut:剪切文本
cut OPTION... [FILE]... -d: 指明分隔符;-d' ', -d: -f:指明要显示的字段 #: #-#:1-3 #,#: 1,3,7(3)sort:排序
sort [OPTION]... [FILE]... -r: 逆序 -f: 忽略字符大小写 -u: 排序后去重 -t CHAR: 指明分隔符 -k #: 字段 -n: 表示以数值大小排序(4) uniq:区分
uniq [OPTION]... [FILE]... -c: 显示每行重复的次数; -d: 只显示重复过的行; -u: 只显示不曾重复的行; 常与sort结合使用管道