Linux 基础-文件及目录管理
本文大部分内容参看 《Linux基础》一书,根据自己的工程经验和理解加以修改、拓展和优化形成了本篇博客,不适合 Linux 纯小白,适合有一定基础的开发者阅读。
一,概述
在 Linux 中一切皆文件。文件管理主要是涉及文件/目录的创建、删除、移动、复制和查询,有mkdir/rm/mv/cp/find 等命令。其中 find 文件查询命令较为复杂,参数丰富,功能十分强大;查看文件内容是一个比较大的话题,文本处理也有很多工具供我们使用,本文涉及到这两部分的内容只是点到为止,没有详细讲解。另外给文件创建一个别名,我们需要用到 ln,使用这个别名和使用原文件是相同的效果。
二,文件及目录常见操作
2.1,创建、删除、移动和复制
创建和删除命令的常用用法如下:
- 创建目录:
mkdir - 删除文件:
rm file(删除目录 rm -r) - 移动指定文件到目标目录中:
mv source_file(文件) dest_directory(目录) - 复制:
cp(复制目录 cp -r)
这些命令的常用和复杂例子程序如下
$ find ./ | wc -l # 查看当前目录下所有文件个数(包括子目录)
14995
$ cp –r test/ newtest # 使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下
$ mv test.txt demo.txt # 将文件 test.txt 改名为 demo.txt
2.2,目录切换
- 切换到上一个工作目录:
cd - - 切换到 home 目录:
cd or cd ~ - 显示当前路径:
pwd - 更改当前工作路径为 path:
$ cd path
2.3,列出目录内容
- 显示当前目录下的文件及文件属性:
ls - 按时间排序,以列表的方式显示目录项:
ls -lrt
ls 命令部分参数解释如下:
-a:显示所有文件及目录 (. 开头的隐藏文件也会列出)-l:除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出-r:将文件以相反次序显示(原定依英文字母次序)-t: 将文件依建立时间之先后次序列出
常用例子如下:
$ pwd
/
$ ls -al # 列出根目录下所有的文件及文件类型、大小等资讯
total 104
drwxr-xr-x 1 root root 4096 Dec 24 01:24 .
drwxr-xr-x 1 root root 4096 Dec 24 01:24 ..
drwxrwxrwx 11 1019 1002 4096 Jan 13 09:34 data
drwxr-xr-x 15 root root 4600 Dec 24 01:24 dev
drwxr-xr-x 1 root root 4096 Jan 8 03:15 etc
drwxr-xr-x 1 root root 4096 Jan 11 05:49 home
drwxr-xr-x 1 root root 4096 Dec 23 01:15 lib
drwxr-xr-x 2 root root 4096 Dec 23 01:15 lib32
... 省略
2.4,查找目录或者文件 find/locate
1,查找文件或目录
$ find ./ -name "cali_bin*" | xargs file # 查找当前目录下文件名含有 cali_bin 字符串的文件
./classifynet_calib_set/cali_bin.txt: ASCII text
./calib_set/cali_bin.txt: ASCII text
./cali_bin.txt: ASCII text
2,查找目标文件夹中是否含有 obj 文件:
$ find ./ -name '*.o'
find 是实时查找,如果需要更快的查询,可试试 locate;locate 会为文件系统建立索引数据库,如果有文件更新,需要定期执行更新命令来更新索引库。
$ locate string # 寻找包含有 string 的路径
2.5,查看及搜索文件内容
1,查看文件内容命令:cat vi head tail more。
$ cat -n # 显示时同时显示行号
$ ls -al | more # 按页显示列表内容
$ head -1 filename # 显示文件内容第一行
$ diff file1 file1 # 比较两个文件间的差别
2,使用 egrep 查询文件内容:
$ egrep "ls" log.txt # 查找 log.txt 文件中包含 ls 字符串的行内容
-rw-r--r-- 1 root root 2009 Jan 13 06:56 ls.txt
三,总结
利用 ls -al 命令查看文件属性及权限,已知了 Linux 系统内文件的三种身份(文件拥有者、文件所属群组与其他用户),每种身份都有四种权限(rwxs)。可以使用 chown, chgrp, chmod 去修改这些权限与属性。文件是实际含有数据的地方,包括一般文本文件、数据库内容文件、二进制可执行文件(binary program)等等。
- 文件管理,目录的创建、删除、查询、管理:
mkdirrmmvcp - 文件的查询和检索命令:
findlocate - 查看文件内容命令:
catvitail more - 管道和重定向命令:
;|&&>
四,参考资料
Linux 基础-文件及目录管理的更多相关文章
- Linux基础--文件与目录管理
1.目录与路径 1)特殊目录 . 代表此层目录 .. 代表上一层目录 - 代表前一个工作目录 ~ 代表『目前使用者身份』所在的家目录 ~account 代表account这个使用者的 ...
- (五)Linux之文件与目录管理以及文本处理
Linux之文件与目录管理 目录 Linux之文件与目录管理 前言 绝对路径与相对路径说明: 一.目录常用命令 常用处理目录的命令: 切换目录 cd 显示当前路径 pwd 查看目录下文件 ls 创建目 ...
- Linux命令——文件和目录管理
Linux命令--文件和目录管理 基本命令 命令ls 作用:显示目录下的文件和文件夹 说明:默认显示当前目录,可跟路径参数 参数:-a,显示隐藏目录 参数:-l,显示文件权限 参数:-d,显示文件最后 ...
- Linux学习-文件和目录管理
Linux文件和目录管理 文件系统架构 1.Linux文件系统具有层级性 1)文件或者目录起始于根目录"/"成为树状结构 2)最顶层由/开始 2 ...
- linux——(3)文件与目录管理
文件与目录管理相关指令 ls [-adlR] 目录 #查看目录与文件的命令. -a #连同隐藏文件一起列出来. -d #只列出目录. -l #列出相关属性和权限等数据. -R #连同子目录内容一起列出 ...
- Linux 的文件和目录管理类命令
文件和目录管理类的命令 目录: cd ~[username] ~:指定用户的家目录 cd -:回到上一次所在的目录 路径: 相对路径中: .:当前目录 ..:父目录 pwd: print workin ...
- Linux基础 文件和目录
文件和目录 前言 本章讨论文件属性和文件系统内容.除了上一章讨论的普通文件,Linux的文件概念还包括:目录.设备等.在Linux系统中,文件的种类包括:普通文件.目录.符号链接.块设备.字符设备.管 ...
- linux(2)文件和目录管理(新增,删除,复制,移动,文件和目录权限,文件查找)
一.目录与路径 1.相对路径与绝对路径绝对路径:/开头, cd /usr相对路径:cd ../..2.目录操作(cd:change directory).:当前目录..:上一层目录-:上一个目录~:当 ...
- Linux的 文件 和 目录 管理
包括了文件和目录的创建.删除.修改,权限.压缩.搜索.分区.挂载 简单的一些命令: [ pwd ]查看当前所在目录 [ cd .. ]上级目录 [ cd ~ ]当前用户的家目录 [cd -]上次打开目 ...
- Linux之文件与目录管理
加油!
随机推荐
- Structures, unions, enumerations, and bitfields in ARM C and C++
Structures, unions, enumerations, and bitfields in ARM C and C++ Non-Confidential ARM DUI0375E ARM ...
- 使用 prefetchComponents 进行组件预取
title: 使用 prefetchComponents 进行组件预取 date: 2024/8/17 updated: 2024/8/17 author: cmdragon excerpt: 摘要: ...
- ZABBIX Maps(拓扑图) 数据可视化
本篇文章将介绍如何利用zabbix内置 Maps模块展示主机数据指标以及如何关联触发器 构建业务地图让异常指标更加直观呈现 下面我将从网络设备.服务器和vmware esxi和IP主机去为大家解析za ...
- 浅谈Integer缓存机制原理
面试题引入 这里引申出一个经典问题,看下面代码 Integer a = 100; Integer b = 100; System.out.println(a == b);//true Integer ...
- 低版本安卓home assistant网页浏览器
试了很久 一直有问题的一点 , 使用普通浏览器加载不出来登录界面 只能加载出icon 然后就没反应了 考虑到了webview的问题 但是没想到安卓5.0之前是固定且不可升级的webview 从 And ...
- Jenkins 运行pipeline 报错:A Jenkins administrator will need to approve this script before it can be us
之前没有注意过这个问题,是因为之前运行pipeline时,默认勾选了"使用 Groovy 沙盒" 这次不小心取消了勾选导致,重新加上勾选即可
- 将workbench 导出的sql数据修改为 oracle 的sql版本
将导出的文件内容复制到 dd1.txt,或其它文件,修改path的值即可 修改后的sql文件为 dd1.sql : 替换的内容: 1. 全局替换了一些字符串,如` 2. workbench导出的sql ...
- C++ : 仅添加一个引用& 就直接导致程序崩溃
问题描述 在项目某次开发中,测试过程中出现了coredump问题.经过asan工具检测,报了heap-use-after-free内存错误,最终定位到竟是无意中添加了一个引用&导致的! 开发时 ...
- 【SpringBoot Demo】MySQL + JPA + Hibernate + Springboot + Maven Demo
主要包含:springboot+jpa+hibernate+mysql+lombok (两年前写过一个,现在重新记录一个) 1. 目录结构: 2. pom 文件 1 <?xml version= ...
- 免费在线OCR识别工具TextIn Tools,开启智能学习新时代
传统的学习方式,笔记必须手写摘抄:带字照片只能插入文档:PDF转换要花钱买会员-- 而在线OCR识别工具tools.textin.com,既好用又免费,它不仅仅具有文字和表格识别工具,还包含PDF转文 ...