linux目录和文件管理1 linux 系统中/目录下的各个目录的概括1、/bin目录基础命令存放所有用户都能使用的基础命令程序文件例如ls、cp、mv、rm、cat、echo、pwd、mkdir...2、/sbin目录系统管理命令存放root专用的系统管理命令文件例如reboot、shutdown、poweroff、fdisk、ifconfig、iptables...3、★/etc目录配置文件全局配置文件都在这里是运维最常打交道的目录例如/passwd用户账号信息、/shadow用户密码、/hostname主机名、/hosts本地DNS解析、/network网络配置、/yum.repos.dyum软件源配置、/ssh/sshd_configssh服务配置、/crontab定时任务...4、/home目录普通用户的专属目录5、/root目录root用户的专属目录6、★/var目录可变数据存放经常变化的数据日志、缓存、数据库文件等例如/log系统日志排查问题必看、/log/messages系统通用日志、/log/secure安全/登录日志、/spool/cron用户定时任务、/www网站文件apache默认...7、/tmp目录临时文件程序运行时产生的临时文件重启后会自动清空8、/usr目录存放用户程序资源类似于windows系统的program files安装的软件大多都在这里例如/bin用户及命令、/sbin系统管理命令、/lib库文件、/local手动编译安装的软件建议放在这里、/share共享数据、文档、man手册...9、/lib目录系统库文件系统启动和基础命令所需的共享库.so文件类似于windows上的DLL。10、/dev目录硬件设备文件。例如/sda第一块硬盘、/sda1第一块硬盘的第一个分区、/null黑洞-丢弃所有写入、/zer0零源-持续输出0、/tty终端设备...11、/proc目录里面时内核进程信息虚拟文件系统不占磁盘空间内容由内核实时生成。例如/cpunifocpu信息、/meminfo内存信息、/1234pid为1234的进程信息...12、★/boot目录启动文件系统启动的相关文件包括内核镜像不能随便乱动否则系统可能无法正常运行。例如/vmlinuz-xxxlinux内核、/grub2引导程序配置...13、★/opt目录第三方软件或大型商业软件的推荐存放位置临时存放的目录。例如/mysql、/nginx...14、/mnt和/media目录挂载点各种盘的挂载点。如光盘、U盘、网络盘。2 linux中常用的文件查看命令2.1 cat命令cat是查看文件只能查看文件不能查看命令后面直接跟需要查看的文件。示例[rootpaopao etc]# cat shells /bin/sh /bin/bash /usr/bin/sh /usr/bin/bash /bin/tcsh /bin/csh ​2.2 more命令more是 Linux/Unix 系统的分页显示命令用于逐页查看文件内容适合大文件。基本操作Enter是下一行空格/f 翻页b是上一页显示当前行号q代表退出/关键词查找关键词常用有mor -n 选项表示从第n行开始显示。便于查看但是使用的频率不高。示例[rootpaopao etc]# more rwtab dirs /var/cache/man dirs /var/gdm dirs /var/lib/xkb dirs /var/log dirs /var/lib/puppet dirs /var/lib/dbus empty /tmp empty /var/cache/foomatic empty /var/cache/logwatch empty /var/cache/httpd/ssl empty /var/cache/httpd/proxy empty /var/cache/php-pear empty /var/cache/systemtap empty /var/db/nscd empty /var/lib/dav empty /var/lib/dhcpd empty /var/lib/dhclient empty /var/lib/php empty /var/lib/pulse empty /var/lib/systemd/timers empty /var/lib/ups empty /var/tmp --More--(48%) ​2.3 less命令less是 Linux 上一款双向分页查看器功能比more更强大是查看文件的首选工具。基本操作↑/k按键向上一行↓/j案件向下一行空格键/f/PageDown按键向翻页b/PageUp按键向上翻页g按键跳转第一行/关键词向下查找关键词关键词向上查找关键词n下一个匹配N上一个匹配q退出显示当前行号和信息h显示帮助v调用文本编辑器默认vi。2.4 head命令head用于查看文件的开头部分默认显示前10 行。常用 -n 行数表示显示前n行示例[rootpaopao etc]# head rwtab dirs /var/cache/man dirs /var/gdm dirs /var/lib/xkb dirs /var/log dirs /var/lib/puppet dirs /var/lib/dbus empty /tmp empty /var/cache/foomatic empty /var/cache/logwatch ​2.5 tail命令tail用于查看文件的结尾部分默认显示最后10 行。常用 -n 行数表示只显示最后n行用的最多常用 -f实时追踪文件变化监控日志。tail -f -n 行数 进行实时监控数据。示例[rootpaopao etc]# ^C [rootpaopao etc]# tail rwtab files /var/lib/iscsi files /var/lib/logrotate.status files /var/lib/ntp files /var/lib/xen files /var/empty/sshd/etc/localtime files /var/lib/systemd/random-seed files /var/spool files /var/lib/samba files /var/log/audit/audit.log files /var/lib/nfs2.6 wc命令wc是word count的缩写用于统计文件的行数、词数、字节数。常用 -l 只统计行数最常用、-w只统计单词数量、-c只统计字节数。示例[rootpaopao etc]# wc rwtab 45 86 966 rwtab [rootpaopao etc]# wc -l rwtab 45 rwtab2.7 grep命令grep是Global Regular Expression Print的缩写用于在文件中搜索文本。基本语法grep [选项] 搜索内容 文件名。2.7.1 常用选项-i选项忽略大小写、-v选项后跟 ^#剔除以#号开头的行反向匹配--不包含搜索内容、-r选项递归目录、-n选项显示行号、-i选项不分大小--color高亮显示匹配内容、2.7.2 正则表达式^…… 表示输出以……为开头的行。……$表示输出以……为结尾的行。^$表示空行。.表示任意一个字符。*表示零个或多个。[abc]表示匹配abc字符前面加^表示不含其中字符。egrep -v ^#|^$目录同时筛选以#开头的行还有空行同时过滤2个内容。3 常用的压缩和解压缩命令3.1 gzip命令gzip是 Linux 下最常用的文件压缩工具压缩效率高最常用速度快。基本语法gzip [选项] 文件名以 .gz 格式压缩文件目录 gzip -dgunzip 解压以 .gz 格式的压缩包压缩或者解压之后原包消失选项[-0~9]表示花费0~9不同级层的资源比例去压缩。3.2 bzip2命令bzip2是 Linux 下的高压缩率压缩工具比 gzip 压缩效果更好但速度稍慢。基本语法bzip2 [选项] 文件名以.bz格式压缩文件目录 bzip2 -dbunzip2 解压以 .bz2 格式的压缩包压缩或者解压之后原包消失3.3 tar命令tar是 Linux 下最常用的打包/归档工具可以将多个文件合并为一个归档文件。基本语法tar [选项] 归档文件名 源文件/目录文件格式为 .tar.gz/.tar.bz2 。常用的有zcvf/zxvf选项。z使用gzip压缩工具进行压缩/解压操作压缩之后的文件格式为.tar.gzc创建一个归档文件进行压缩打包动作v显示详细信息f进行归档操作指定文件名j使用bzip2压缩工具进行压缩/解压操作压缩之后的文件格式为.tar.bz2x表示进行解压缩动作示例tar -zcvf/jcvf进行压缩 tar -zxvf/jxvf进行解压-C 指定解压后的路径 使用格式为tar -zcvf 压缩包 -C路径4 vim编辑器的基础操作方法vim是 Linux 下最强大的文本编辑器是vi的增强版。学会 vim 几乎可以编辑任何文件。4.1 三种模式┌─────────────────────────────────────────────────────┐ │ NORMAL 模式 │ │ 默认按 i 进入 INSERT │ │ │ │ i ──▶ INSERT 编辑模式 ◀── ESC │ │ R ──▶ REPLACE 替换模式 ◀── ESC │ │ │ │ : ──▶ COMMANDLINE 命令模式 ◀── ESC, 然后 : │ └─────────────────────────────────────────────────────┘模式用途进入方式Normal浏览、移动、复制、粘贴默认模式Insert输入文字按i、a、oCommand保存、退出、搜索、替换按:4.2 基本操作启动与退出bash# 打开文件 vim filename.txt vim file1.txt file2.txt # 打开多个文件 # 退出命令在 Command 模式下 :q # 退出未修改 :q! # 强制退出不保存 :wq # 保存并退出 :x # 保存并退出等价 ZZ # 保存并退出无需按 :光标移动Normal 模式bash# 基本移动 h # 左 j # 下 k # 上 l # 右 # 快速移动 0 # 行首 $ # 行尾 ^ # 行首非空白 g_ # 行尾非空白 # 单词移动 w # 下一个单词开头 e # 下一个单词结尾 b # 上一个单词开头 # 页面移动 gg # 文件开头 G # 文件末尾 nG # 跳到第 n 行 Ctrl d # 下翻半页 Ctrl u # 上翻半页 Ctrl f # 下翻一页 Ctrl b # 上翻一页文本编辑bash# 进入编辑模式 i # 在光标前插入 a # 在光标后插入 o # 在下方插入新行 O # 在上方插入新行 I # 行首插入 A # 行尾插入 # 退出编辑模式 ESC # 返回 Normal 模式 # 删除 x # 删除光标处字符 dd # 删除整行 ndd # 删除 n 行 dw # 删除一个单词 d$ # 删除到行尾 d0 # 删除到行首 # 复制 粘贴 yy # 复制整行 nyy # 复制 n 行 yw # 复制一个单词 p # 粘贴到光标后 P # 粘贴到光标前 # 撤销 重做 u # 撤销 Ctrl r # 重做搜索 替换bash# 搜索 /关键词 # 向下搜索 ?关键词 # 向上搜索 n # 下一个匹配 N # 上一个匹配 * # 向下搜索光标所在词 # # 向上搜索光标所在词 # 替换Command 模式 :s/old/new/ # 替换当前行第一个 :s/old/new/g # 替换当前行所有 :%s/old/new/g # 替换文件中所有 :%s/old/new/gc # 替换时确认其他常用命令bash# 命令行常用 :set number # 显示行号 :set nonumber # 取消行号 :set hlsearch # 高亮搜索 :nohlsearch # 取消高亮 :set paste # 粘贴模式保留格式 :!command # 执行 shell 命令 # 多窗口 :sp filename # 水平分屏 :vsp filename # 垂直分屏 Ctrl w w # 切换窗口 :qa # 退出所有窗口vim 配置示例bash# ~/.vimrc 常用配置 set number # 显示行号 set tabstop4 # Tab 宽度 set expandtab # Tab 转空格 set autoindent # 自动缩进 set hlsearch # 搜索高亮 syntax on # 语法高亮键盘图简化版┌──────────────────────────────────────────────────────┐ │ i a o 插入文本 │ │ x dd dw 删除 │ │ yy p 复制粘贴 │ │ / ? 搜索 │ │ :w :q :wq 保存退出 │ │ u Ctrlr 撤销重做 │ │ gg G 文件头尾 │ │ :s/old/new 替换 │ └──────────────────────────────────────────────────────┘