百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 优雅编程 > 正文

如何轻松地在命令行上同时移动多种类型的文件?

sinye56 2024-11-13 12:34 2 浏览 0 评论

本文译自: How To Move Multiple File Types Simultaneously From Commandline

译者:EmuLab

校对:OpenView

原文及本文遵循: [CC BY-NC 4.0协议]

BY SK · JANUARY 14, 2019

有一天,我想要知道我如何能够从一个目录将多种类型的文件拷贝到另一个目录。在这之前,我已经知道如何将某一个特定类型的文件从一个目录拷贝到另一个地方。但是,我不知道如何同时拷贝多个类型的文件。如果你也曾遇到过这个问题,我知道一个通过使用命令行的容易的方法。

同时移动多个类型的文件

想象一下这个情景。你在dir1目录下,有多个类型的文件,例如.pdf,.doc,.mp3,.mp4,.txt等。让我们看一下 dir1下面都有些什么内容:

$ ls dir1
file.txt image.jpg mydoc.doc personal.pdf song.mp3 video.mp4

你想要移动其中的一些文件类型到不同的位置。例如,我们假设你想要一次性将doc,pdf和txt文件移动到另一个叫做dir2的目录。

要将.doc,.pdf,和.txt同时从dir1移动到dir2,命令如下:

$ mv dir1/*.{doc,pdf,txt} dir2/

这很简单,不是吗?

现在,我们来查看一下dir2的内容:

$ ls dir2/
file.txt mydoc.doc personal.pdf

看见了?只有.doc,.pdf和.txt格式的文件被从dir1移动到了dir2.

你可以在上面的花括号中加入许多类型的文件来实现仅仅在不同路径下移动它们。上面的命令在Bash上运行良好。另一个方法可能会是:

$ cd ~/dir1

然后,将你选择的文件类型移动到目的地:

$ mv *.doc *.txt *.pdf /home/sk/dir2/

要移动所有的具有特定扩展的文件,例如.doc,运行:

$ mv dir1/*.doc dir2/

欲知更多细节,参见manpage。

$ man mv

移动一些不同类型的文件是很容易的!你可以在GUI模式下通过点击和移动鼠标来完成,也可以在命令行模式下仅通过一条命令来实现。然而,如果你在某个目录下有成千上万的不同类型的文件,并想要一次性将它们移动到不同的路径,那将是一个繁重的工作。对于我来说,上面的命令行方法能够轻松解决这个问题!如果你知道任何其它的一次性将多种文件类型的文件进行移动的方法,请在下面的留言中告诉我。我将会相应的检查和更新这个教程。

好了,那就是所有的内容了。希望这个对你有帮助。

译者补充

本文内容不多,也非常基础简单,对于稍微使用过Linux或者甚至Windows的CLI的朋友来说,可以说是灌水了。但是它向我们展示了一个命令行在某些工作情境下的便利之处。

想象一下当某个路径下有着成千上完的不同文件类型,要通过鼠标去移动还是很费力的。而命令行中可以通过一条简单的命令来利用模式匹配等实现快速的文件分类移动操作。

当然,也不是就说GUI的模式就不如CLI模式。只是两个模式各有优势,不同的场景用不同的角度和手段来解决问题才是我们应当掌握的,而不是一昧推崇某种模式。

关于这里的命令行模式下的工作,小编以后会更多整理一些可以提升工作效率的常见的shell脚本或命令技巧来与大家分享、交流。欢迎支持。

推荐阅读(点击跳转)

查询Linux发行版名字、版本和内核信息

如何迅速方便地在Ubuntu 18.04中配置IP地址

如何方便地在Linux上查询硬件信息并生成报告

如何机智地在Linux上知道你最常用到的命令

"隐写术":在Linux上实现将文件隐藏到图像中(上)

"隐写术":在Linux上实现将文件隐藏到图像中(下)

如何轻松地在Linux上使用gocryptfs工具对文件进行加密

3个重启Linux系统的命令(以及4个安全实现的方式)

喜欢使用Linux办公、学习、hack的朋友们可以点击关注小编,小编将竭力提供更多内容给大家交流~

相关推荐

RHEL8和CentOS8怎么重启网络

本文主要讲解如何重启RHEL8或者CentOS8网络以及如何解决RHEL8和CentOS8系统的网络管理服务报错,当我们安装好RHEL8或者CentOS8,重启启动网络时,会出现以下报错:...

Linux 内、外网双网卡路由配置

1.路由信息的影响Linux系统中如果有多张网卡的情况下,如果路由信息配置不正确,...

Linux——centos7修改网卡名

修改网卡名这个操作可能平时用不太上,可作为了解。修改网卡默认名从ens33改成eth01.首先修改网卡配置文件名(建议将原配置文件进行备份)...

CentOS7下修改网卡名称为ethX的操作方法

?Linux操作系统的网卡设备的传统命名方式是eth0、eth1、eth2等,而CentOS7提供了不同的命名规则,默认是基于固件、拓扑、位置信息来分配。这样做的优点是命名全自动的、可预知的...

Linux 网卡名称enss33修改为eth0

一、CentOS修改/etc/sysconfig/grub文件(修改前先备份)为GRUB_CMDLINE_LINUX变量增加2个参数(net.ifnames=0biosdevname=0),修改完成...

CentOS下双网卡绑定,实现带宽飞速

方式一1.新建/etc/sysconfig/network-scripts/ifcfg-bond0文件DEVICE=bond0IPADDR=191.3.60.1NETMASK=255.255.2...

linux 双网卡双网段设置路由转发

背景网络情况linux双网卡:网卡A(ens3)和网卡B(...

Linux-VMware设置网卡保持激活

Linux系统只有在激活网卡的状态下才能去连接网络,进行网络通讯。修改配置文件(永久激活网卡)...

VMware虚拟机三种网络模式

01.VMware虚拟机三种网络模式由于linux目前很热门,越来越多的人在学习linux,但是买一台服务放家里来学习,实在是很浪费。那么如何解决这个问题?虚拟机软件是很好的选择,常用的虚拟机软件有v...

Rocky Linux 9/CentOS Stream 9修改网卡配置/自动修改主机名(实操)

推荐...

2023年最新版 linux克隆虚拟机 解决网卡uuid重复问题

问题描述1、克隆了虚拟机,两台虚拟机里面的ip以及网卡的uuid都是一样的2、ip好改,但是uuid如何改呢?解决问题1、每台主机应该保证网卡的UUID是唯一的,避免后面网络通信有问题...

Linux网卡的Vlan配置,你可能不了解的玩法

如果服务器上连的交换机端口已经预先设置了TRUNK,并允许特定的VLAN可以通过,那么服务器的网卡在配置时就必须指定所属的VLAN,否则就不通了,这种情形在虚拟化部署时较常见。例如在一个办公环境中,办...

Centos7 网卡绑定

1、切换到指定目录#备份网卡数据cd/etc/sysconfig/network-scriptscpifcfg-enp5s0f0ifcfg-enp5s0f0.bak...

Linux搭建nginx+keepalived 高可用(主备+双主模式)

一:keepalived简介反向代理及负载均衡参考:...

Linux下Route 路由指令使用详解

linuxroute命令用于显示和操作IP路由表。要实现两个不同子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。在Linux系统中,设置路由通常是为了解决以下问题:该...

取消回复欢迎 发表评论: