服务器内提取文件,linux命令如何提取文件夹内特定文件路径
linux命令如何提取文件夹内特定文件路径
发布时间:2020-07-20 16:35:25
来源:亿速云
阅读:102
作者:小猪
栏目:服务器
这篇文章主要为大家展示了linux命令如何提取文件夹内特定文件路径,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。
最近需要实现自动化搜寻特定文件夹下的特定文件,并且需要分别保存文件路径与文件名。算然使用python的walk能够实现,但是感觉复杂了些。于是想看看linux自带的命令是否能完成这项工作。
环境
需要查找的目录结构如下
. |____test | |____test2.txt | |____test.py | |____test.txt | |____regex.py |____MongoDB | |____.gitignore | |____cnt_fail.py | |____db
目标一:获取所有py文件名
如果只使用find . -name '*.py'进行查找,得出的结果是包含路劲的./test/test.py
./test/regex.py
./MongoDB/cnt_fail.py
我们只需要文件名的话可以使用linux提供的命令basename
利用basename将find的所有搜索结果进行处理我们需要使用find的参数-exec
最终的命令为:
find . -name '*.py' -exec basename {} \;
结果:test.py
regex.py
cnt_fail.py
其中{} 用于与-exec选项结合使用来匹配所有结果,然后支取其文件名。
目标二:获得所有py文件路径,去重复,删除开头的“./”字符
linux也有获取文件路径的命令dirname
略微修改之前的命令能够显示所有文件路径
find . -name '*.py' -exec dirname {} \;
搜索结果:./test
./test
./MongoDB
可以看到路径存在重复,linux去除重可以利用sort再添加-u参数,-u参数用于去除排序结果中的重复项
我们需要把上一个命令的输出传递给sort作为输入,很自然想到了管道
管道命令操作符是:|,它仅能处理经由前面一个指令传出的正确输出信息,也就是 standard output 的信息,对于 stdandard
error 信息没有直接处理能力。然后,传递给下一个命令,作为标准的输入 standard input.
添加sort之后的命令为
find . -name '*.py' -exec dirname {} \; | sort -u
运行结果结果为:./MongoDB
./test
最后我们再利用cut删除每一个路劲之前的./字符,参数-c3-意思提取字符串(起始位置为1)的第3个字符到最后的子串
最终命令为:
find . -name '*.py' -exec dirname {} \; | sort -u | cut -c3-
运行结果:MongoDB
test
以上就是关于linux命令如何提取文件夹内特定文件路径的内容,如果你们有学习到知识或者技能,可以把它分享出去让更多的人看到。
服务器内提取文件,linux命令如何提取文件夹内特定文件路径相关推荐
- 在linux命令行下载百度网盘中的文件
在linux命令行下载百度网盘中的文件 将想下载的文件创建一个公开链接, 然后在浏览器里输入链接地址,单击下载,之后浏览器会下载文件,此时取消下载,然后右键复制下载链接地址. linux命令行执行如下 ...
- linux命令中提取某一列,怎么用Linux命令提取表格文本中的某列
如何用Linux命令提取表格文本中的某列 文本文件x.txt内容如下: kaa a:\dkdkdk 123 dfdfdf b:\xxxxxxxxx 3234 j你好x c:\fdfdfv 打开 我现在 ...
- diff命令两个服务器文件,LINUX命令diff-文件管理-比较给定的两个文件的不同
diff命令 在最简单的情况下,比较给定的两个文件的不同.如果使用"-"代替"文件"参数,则要比较的内容将来自标准输入.diff命令是以逐行的方式,比较文本文件 ...
- Linux命令+shell脚本大全:处理数据文件
当你有大量数据时,通常很难处理这些信息及提取有用信息.正如在上节中学习的 du 命令, 系统命令很容易输出过量的信息. Linux系统提供了一些命令行工具来处理大量数据.本节将会介绍一些每个系统管理员 ...
- linux目录下多个文件行数比对函数 关键字遍历文件 linux命令写入C函数
人,一定要有勇气和踏实的态度面对改变和选择!开发,零经验起步! 文件行数比对函数: 输入参数:接口文件绝对路径,日期(格式YYYYMMDD:20150716) 根据路径和日期,分别获取这add.del ...
- 直接查看Z包文本linux,《工作效率篇》Linux命令行十种不解压查看压缩文件的方法...
一般来讲,我们如果想要查看压缩文件的内容的话,需要先将压缩文件解压,然后再进行查看. 今天本文就介绍在 Linux 系统命令行下直接查看压缩文件内容的 10 种方法,可以提高大家的工作效率. 本文所介 ...
- 【Linux】Linux命令大全——解压、目录、文件、搜索等
文件目录 1.常用命令 常用Linux命令的基本使用 2.查阅命令帮助信息 2.1 help 帮助信息 2.2 man 手册 3.目录常用命令 3.1创建文件夹的命令 3.2删除文件夹的命令(谨慎使用 ...
- linux打开图形化命令,在Linux命令行中以图形化窗口打开文件夹
快速Android开发系列网络篇之Retrofit Retrofit是一个不错的网络请求库,用官方自己的介绍就是: A type-safe REST client for Android and Ja ...
- linux将屏幕输出到文件,Linux命令执行的屏幕输出内容重定向到日志文件
摘要: 作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 快速mark一下这个命令细节,免得以后使用又忘记了 大家都知道可以用echo来输出内容到 ...
最新文章
- JVM 垃圾回收机制和常见算法
- 互联网人,天生就是送外卖的料!
- Atcoder Contest069F:Flag
- [转载] python类运算符的重载
- libvirt热迁移报Connection refused错误解决办法
- 一个自动在栈和堆上分配变长数组的实现方式
- 服务器维护 文档,ERP系统维护服务器维护管理文档.docx
- 532. 数组中的K-diff数对
- burpsuite工具抓取Https数据包
- 中行网银安全控件 v1.0 官方版
- 有限差分法下-一维中的显示有限差分(python)
- mouseenter、mouseleave、mouseover和mouseout的区别
- 什么是 Uptime TIER 数据中心等级认证体系?-孙长青
- 在局域网内互传文件的方法
- 输入起止坐标,返回途径网格。
- 无需花生壳,阿里云解析实现内网穿透
- html编写花,HTML5的花儿
- [CLI应用学习]实践使用GitHub CLI
- html中圆角的度,cssli圆角
- 机器学习中的隐变量和隐变量模型
热门文章
- 走近分形与混沌(part15)--有钱的人会愈来愈有钱,不一定是在于他们的能力,而是因为财富会产生财富
- 嵩天-Python语言程序设计程序题--第二周:基本图形绘制
- matlab第二次上机作业答案,第二次上机作业
- 在 CloudFoundry 环境下开发 multitenant 应用的一些基本概念
- SAP Spartacus 4.0 的技术变化
- SAP 电商云 Spartacus UI 路由事件监控
- SAP Spartacus 如何重定义登录 Login Component
- 谈谈无头电商 - headless commerce
- promise 和 Observable 的区别
- TypeScript Parameter Destructuring 语法 - 参数解构