文件管理常用命令详解: 目录结构: /boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)放于此目录 /bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序 /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序 /lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules) /lib64:专用于x86_64系统上的辅助共享库文件存放位置 /etc:配置文件目录 /home/USERNAME:普通用户家目录 /root:管理员的家目录 /media:便携式移动设备挂载点 /mnt:临时文件系统挂载点 /dev:设备文件及特殊文件存储位置 /opt:第三方应用程序的安装位置 /srv:系统上运行的服务用到的数据 /tmp:临时文件存储位置 /usr: 这个目录中包含了命令库文件和在通常操作中不会修改的文件 /var:所有服务的登录的文件或错误信息文件 /proc: 用于输出内核与进程信息相关的虚拟文件系统 /sys:用于输出当前系统上硬件设备相关信息虚拟文件系统 /selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置 文件类型: - 普通文件 d 目录文件 b 块设备 c 字符设备 l 符号链接文件 p 管道文件pipe s 套接字文件socket 常用命令: Pwd: -P 显示真实物理路径 -L 显示链接路径(默认) Cd:改变目录 ls: ls -a 包含隐藏文件 ls -l 显示额外的信息 ls -R 目录递归通过 ls -ld 目录和符号链接信息 ls -1 文件分行显示 ls –S 按从大到小排序 ls –t 按mtime排序 ls –u 配合-t选项,显示并按atime从新到旧排序 ls –U 按目录存放顺序显示 ls –X 按文件后缀排序 Stat: 查看文件状态 Touch:创建文件 Cp: 复制文件或目录 Mv: 移动或重命名文件 Rm: 删除 -i 交互式 -f 强制删除 -r 递归 Tree: 显示目录树 -d: 只显示目录 -L level:指定显示的层级数目 -P pattern: 只显示由指定pattern匹配到的路径 mkdir 创建目录 -p: 存在于不报错,且可自动创建所需的各目录 -v: 显示详细信息 -m MODE: 创建目录时直接指定权限 rmdir 删除空目录 -p: 递归删除父空目录 -v: 显示详细信息 标准IO和管道:
把标准输出重定向到文件(覆盖追加)
原有内容基础上,追加内容 2> 把标准错误重定向到文件 &> 把所有输出重定向到文件 tr: 转换和删除字符 -c –C --complement:取字符集的补集 -d --delete:删除所有属于第一字符集的字符 -s --squeeze-repeats:把连续重复的字符以单独一个字符表示 -t --truncate-set1:将第一个字符集对应字符转化为第二字符集对应的字符 less :一页一页地查看输入 ls -l /etc | less mail: 通过电子邮件发送输入 echo "test email" | mail -s "test" wang@example.com bc:算术运算 echo "2^3" |bc 用户组和权限管理: Linux用户和组的主要配置文件: /etc/passwd:用户及其属性信息(名称、UID、主组ID等) /etc/group:组及其属性信息 /etc/shadow:用户密码及其相关属性 /etc/gshadow:组密码及其相关属性 /etc/skel/* (创建用户时家目录模板) 用户管理命令 useradd 创建用户 usermod 修改用户 userdel 删除用户 Passwd 修改用户密码 组帐号维护命令 groupadd 创建用户组 groupmod 修改组 groupdel 删除组
Linux用户和组的主要配置文件: /etc/passwd:用户及其属性信息(名称、UID、主组ID等) /etc/group:组及其属性信息 /etc/shadow:用户密码及其相关属性 /etc/gshadow:组密码及其相关属性 文件权限: 文件: r 可使用文件查看类工具获取其内容 w 可修改其内容 x 可以把此文件提请内核启动为一个进程 目录: r 可以使用ls查看此目录中文件列表 w 可在此目录中创建文件,也可删除此目录中的文件 x 可以使用ls -l查看此目录中文件元数据(须配合r),可以cd进入此目录 X 只给目录x权限,不给文件x权限权限: 文件权限操作: Chmod 对文件或目录进行权限设置 chmod o+t 设置目录下只有文件的所有者或root才能删除文件 文本查看工具和正则表达式: 文件查看命令: Cat 查看文件 More 分页查看文件 less 一页一页的查看文件 head -n 显示文件前几行,默认前10行 tail -n 显示文件后几行,默认后10行 -f 跟踪显示文件内容,常用用于日志监控 cut 抽取列 -d 指明分隔符 -f 指定第几字节 例:cut -d: -f1 以:号为分隔符显示第一列 wc -l 统计行数 sort -n 按数字大小排序 文本处理工具: grep: 文本过滤工具 -m # 匹配#次后停止 -v 显示不被pattern匹配到的行 -I 忽略字符大小写 -n 显示匹配的行号 -c 统计匹配的行数 -o 仅显示匹配到的字符串 -q 静默模式,不输出任何信息 -A # after, 后#行 -B # before, 前#行 -C # context, 前后各#行 -e 实现多个选项间的逻辑or关系 grep –e ‘cat ’ -e ‘dog’ file -w 匹配整个单词 -E 使用ERE -F 相当于fgrep,不支持正则表达式 -f file 根据模式文件处理 正则表达式: 匹配次数:用在要指定次数的字符后面,用于指定前面的字符要出现的次数
- 匹配前面的字符任意次,包括0 贪婪模式:尽可能长的匹配 .* 任意长度的任意字符 ? 匹配其前面的字符0或1次 + 匹配其前面的字符至少1次 {n} 匹配前面的字符n次 {m,n} 匹配前面的字符至少m次,至多n次 {,n} 匹配前面的字符至多n次 {n,} 匹配前面的字符至少n次 位置锚定:定位出现的位置 ^ 行首锚定,用于模式的最左侧 $ 行尾锚定,用于模式的最右侧 ^PATTERN$ 用于模式匹配整行 ^$ 空行 ^[[:space:]]*$ 空白行 < 或 \b 词首锚定,用于单词模式的左侧 > 或 \b 词尾锚定,用于单词模式的右侧 <PATTERN> 匹配整个单词 文本编辑器:vim 三种主要模式: 命令模式 插入模式 扩展模式 命令模式 --> 插入模式 i insert, 在光标所在处输入 I 在当前光标所在行的行首输入 a append, 在光标所在处后面输入 A 在当前光标所在行的行尾输入 o 在当前光标所在行的下方打开一个新行 O 在当前光标所在行的上方打开一个新行 插入模式 --------> 命令模式 ESC 命令模式 --------> 扩展命令模式 : 扩展命令模式 --------> 命令模式 ESC,enter 扩展命令模式: : q 退出 :q! 强制退出,丢弃做出的修改 :wq 保存退出 :x 保存退出