给Linux命令指定文件类型,用Linux命令行实现删除和复制指定类型的文件

(一)Linux 删除当前目录及子目录中所有某种类型的文件

方法1 : 此方法不能处理目录中带空格的那些。

rm -rf `find . -name "*.example"`

Linux的文件名(目录也是一种文件)不建议带空格,命令行中不好处理这个空格。

方法2:组合使用 find 及 xargs

find test2/ -name '*.example' |xargs rm -rf

(xargs 是给命令传递参数的一个过滤器,可以将前一个命令产生的输出作为后一个命令的参数。)

即将 find 产生的输出(test2 目录下的所有 example 类型文件),作为 rm 的参数,从而完全删除。

方法3: 组合使用 find 和 delete 命令

find . -name *.example -delete

此方法可以看作是对 方法2 的简化改进 。

(二)Linux 复制指定目录及子目录下特定类型的文件

首先建立一个用于测试的目录,目录中包含用于测试的 *.txt 文件和 *.tes 文件。

目标是保持当前的目录结构,只把 txt 文件复制出来。

方法1:当不需要的文件类型较为单一时,可以通过完全复制然后删除指定类型的文件完成

// Step1 使用如下命令,将测试目录 test 下所有内容完全复制到 test2

cp -r test/ test2

// Step2 组合使用find及xargs,将 *.tes 文件删除。

find test2/ -name '*.tes' |xargs rm -rf

适用场景举例:把项目文件备份,要去除其中的 .svn 文件,可以采用这种方式。

方法2:需要的文件为单一类型,带目录结构复制

这种情况下可以使用 tar 命令将指定类型的文件打包,然后解包。

// Step1 建立目录 test3

mkdir test3

// Step2 将指定类型文件带目录结构打包

find test/ -name '*.txt' |xargs tar czf test3.tgz

// Step3 解包到目录 test3

tar zxvf test3.tgz -C test3

适用场景:较为普遍,例如可以复制某个 Web 项目的所有 html/jsp/php 文件;或复制其他项目中特定类型的源文件。

linux命令(3):复制,剪切(文件和文件夹)

一:文件命令:cp,mv linux 怎么样复制文件夹内所有文件到另一个文件夹?   cp -Rf /home/user1/* /root/temp/ 将 /home/user1目录下的所有东西拷到/ ...

详解Linux命令行下常用svn命令

1.Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/do ...

Linux命令行下常用svn命令

1.Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/do ...

在 Linux 命令行中使用和执行 PHP 代码

PHP是一个开源服务器端脚本语言,最初这三个字母代表的是“Personal Home Page”,而现在则代表的是“PHP:Hypertext Preprocessor”,它是个递归首字母缩写.它是一 ...

在Linux主机使用命令行批量删除harbor镜像

在Linux主机使用命令行批量删除harbor镜像 脚本使用说明: 此脚本不是万能脚本,根据自身环境要调整很多 能用harbor的域名就不要用IP 脚本前半部分可以套用,后半部分需一步一步试错,结合 ...

十五个最常用Linux命令行 - imsoft.cnblogs

众多Linux管理员在使用Linux的时候会经常使用到很多Linux命令行,其中有绝大部分不是经常使用到的.在本文中主要为大家总结了经常使用的十五个最常用Linux命令行,希望对刚刚接触Linux命令 ...

Linux命令行下cp,rm,mv命令的使用

以下的内容来源于 Linux命令行下的复制.删除与移动:cp,rm,mv cp(copy)复制        cp这个命令的用途很多,除了单纯的复制之外,还可以创建链接文件 ...

给新手的 10 个有用 Linux 命令行技巧

我记得我第一次使用 Linux 的时候,我还习惯于 Windows 的图形界面,我真的很讨厌 Linux 终端.那时候我觉得命令难以记忆,不能正确使用它们.随着时间推移,我意识到了 Linux 终端的 ...

Linux命令行及Vim简单学习记录

Linux命令行 1.打开命令行 Ctrl+Alt+t 2.目录 显示当前目录的文件列表 ls 跳转至当前目录中的x文件夹 cd x 返回根目录 cd 3.文件 新建文件1.cpp touch ./1 ...

随机推荐

【LeetCode OJ】Validate Binary Search Tree

Problem Link: https://oj.leetcode.com/problems/validate-binary-search-tree/ We inorder-traverse the ...

poj1416 Shredding Company

Shredding Company Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5379   Accepted: 3023 ...

C++ Pirmer : 第十五章 : 面向对象程序设计之基类和派生的定义、类型转换与继承与虚函数

基类和派生类的定义以及虚函数 基类Quote的定义: classs Quote { public: Quote() = default; Quote(cosnt std::string& bo ...

Remote Desktop Connection Manager介绍

Remote Desktop Connection Manager (RDCMan) 是微软Windows Live体验团队的主要开发者 Julian Burger开发的一个远程桌面管理工具.简称为R ...

关于cnpm的一点小bug

在实际工作中,一个项目完成后,在上线前,常常需要把代码进行压缩,一般是用gulp或者 webpack 进行压缩.(小妹是用gulp) gulp是运行在node 环境下的. 所以首先,下载并安装了nod ...

MongoDB-GRIDFS大文件系统

gridfs 是一种在mongodb中存储大二进制文件的机制,使用gridfs的原因: 1.存储巨大的文件(视频图片). 2.利用GRIDFS可以简化需求. 3.GRIDFS 利用已经建立起来的复制以 ...

Struts2.5 伪静态的配置

伪静态 伪静态是相对真实静态来讲的,通常我们为了增强搜索引擎的友好面,都将文章内容生成静态页面,但是有的朋友为了实时的显示一些信息.或者还想运用动态脚本解决一些问题.不能用静态的方式来展示网站内容.但 ...

2019-01-29 VS Code创建自定义Python代码片段

续前文[日常]Beyond的歌里最多是"唏嘘"吗? - Python分词+词频最后的想法, 发现VS Code支持用户自定义代码片段: Creating your own snip ...

kibana 创建index pattern 索引模式时过慢导致无法创建成功 以及解决方案

下面我具体描述一下我遇到的问题. 在kibana上面创建索引点击创建时,一直显示下面的页面 就看到不停的在那转,始终创建不成功. 查看后台日志,看到状态码为403,报了如下的错误 由于我用的是es6版 ...

《Linux内核分析与设计实现》读书笔记一

第一章 Linux内核简介 1.1 Unix的历史 Unix的特点: Unix很简洁,仅仅提供几百个系统调用并且有一个非常明确的设计目的: 在Unix中,所有的东西都被当做文件对待. Unix的内核和 ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值