### Linux基础总结 #### 文件操作基础 1. **文件与目录的基本操作** - `ls`: 列出目录内容。 - `ls -rtl`: 按时间倒叙列出所有目录和文件。 - `touch file`: 创建一个空白文件。 - `rm -rf 目录名`: 不提示删除非空目录。(`-r`: 递归删除;`-f`: 强制删除) - `dos2unix`: 将Windows文本格式转换为Linux文本格式。 - `unix2dos`: 将Linux文本格式转换为Windows文本格式。 - `enca filename`: 查看文件编码,并可以通过`yum install -y enca`安装该工具。 - `md5sum`: 计算文件的MD5校验值。 - `ln 源文件 目标文件`: 创建硬链接。 - `ln -s 源文件 目标文件`: 创建符号链接。 - `readlink -f /data`: 查看符号链接的真实目录路径。 2. **文件内容查看与编辑** - `cat file | nl | less`: 查看文件内容,并显示行号,支持上下翻页。使用`q`键退出。 - `head`: 查看文件开头的内容。 - `head -c 10m`: 截取文件中前10MB的内容。 - `split -C 10M`: 将文件切割成大小为10MB的新文件。(`-C`按字符数分割) - `tail -f file`: 实时查看文件尾部内容的变化。 - `tail -F file`: 监视日志文件,即使文件被移动也能继续追踪。 - `file`: 检查文件类型。 3. **文件权限管理** - `umask`: 更改文件的默认权限掩码。 - `chattr +i /etc/passwd`: 设置文件不可被修改或删除(`+i`: 加上锁定属性)。 - `chattr -i /etc/passwd`: 移除文件的不可修改或删除属性(`-i`: 移除锁定属性)。 4. **文件比较与处理** - `uniq`: 删除文本文件中的重复行。 - `uniq -c`: 显示重复行的出现次数。 - `uniq -u`: 只显示文本文件中不重复的行。 - `paste a b`: 将两个文件的内容并排放置,默认使用制表符分隔。 - `paste -d '+' a b`: 使用指定的字符(如`+`)作为分隔符。 - `paste -s a`: 将多行数据合并成一行,使用制表符分隔。 5. **文件搜索与信息提取** - `locate 字符串`: 快速搜索文件系统中的文件。 - `wc -l file`: 统计文件的行数。 - `cp filename {,.bak}`: 快速备份文件。 - `rev`: 将文件中每一行的字符顺序反转。 - `comm -12 23`: 比较两个已排序文件中的行,输出仅出现在第一个文件中的行。 - `iconv -f gbk -t utf8 原.txt > 新.txt`: 转换文件的编码格式。 - `rename '原模式' '目标模式' 文件`: 批量重命名文件,支持正则表达式。 6. **文件监控与动态变化检测** - `watch -d -n1 'df; ls -FlAt /path'`: 定期刷新并显示命令输出,实时监控指定目录下的文件变动情况。 - `cp -v /dev/dvd rhel4.6.iso9660`: 制作光盘镜像文件。 - `diff suzu.c suzu2.c > sz.patch`: 制作文件之间的补丁。 - `patch suzu.c < sz.patch`: 应用补丁。 7. **文件排序** - `sort`: 对文本文件进行排序。 - `sort -n`: 按数字大小排序。 - `sort -nr`: 按数字降序排序。 - `sort -u`: 排序同时去除重复行。 - `sort -m a.txt c.txt`: 合并多个排序好的文件。 - `sort -n -t ':' -k3ra.txt`: 以特定字符分隔字段,并根据指定字段排序(例如按第三字段降序排列)。 - `sort -k1.3 a.txt`: 从第三个字符开始进行排序。 8. **文件查找** - `find`: 在指定路径中查找文件。 - `find /etc -name "*http*"`: 按文件名查找。 - `find . -type f`: 查找某一类型的文件(如普通文件)。 - `find / -perm #`: 按照文件权限查找。 - `find / -user 用户名`: 按照文件属主查找。 - `find / -group 组名`: 按照文件所属的组来查找文件。 - `find / -atime +n`: 查找文件访问时间在N天之前的文件。 - `find / -mtime +n`: 查找文件内容修改时间在N天之前的文件。 - `find / -ctime +n`: 查找文件状态更改时间在N天之前的文件。 - `find / -mmin +30`: 按分钟查找文件内容的最后修改时间。 - `find /etc -name "*passwd*" -exec grep "xuesong" {} \;`: 按名字查找文件,并传递给后续命令执行。 通过以上命令的详细介绍,我们可以看到Linux系统提供了非常丰富的命令来处理文件和目录。这些命令不仅能够帮助我们高效地管理和操作文件系统,还能够实现对文件内容的深入分析和处理。熟练掌握这些命令对于Linux用户来说至关重要,尤其是在日常开发工作中经常需要进行文件管理与数据处理的情况下。
剩余63页未读,继续阅读
- 粉丝: 3821
- 资源: 14
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助