macos - Bash:遍历文本文件中列出的文件并 move 它们

标签 macos bash file for-loop move

我有一个目录(目录 A),里面有 10,000 个文件。我想将其中一些 move 到目录 B,将其他 move 到目录 C。我制作了一个文本文件,其中包含我要 move 到目录 B 的所有文件的名称,另一个文件包含我想要的所有文件的名称 move 到目录 C。如何编写 bash for 循环以将这些文件 move 到新目录。

伪代码:

对于文本文件B中的文件:
将文件从A目录 move 到B目录

对于textfileC中的文件:
将文件从A目录 move 到C目录

如果有人在其他地方问到这个问题,我很抱歉,但我花了几个小时试图学习 bash,但我就是不明白。我无法在另一个我能理解的线程中找到足够相似的内容(也许我只是不知道正确的搜索词)。

我有这样的东西,但我无法让它工作:

FILES=[dont' know what goes here? An array? A list?  

我可以只说明文本文件名吗?如果可以,文件必须是什么格式? name1.ext、name2.ext 或 name1.ext name2.ext]

for f in $FILES; do mv $f /B/$f [not sure about the second argument for mv]; done

谢谢

顺便说一句 Mac OSX 10.6.8(雪豹) 苹果终端 v. 2.1.2/273.1 bash 3.2

最佳答案

cat file-list.txt | while read i; do
   # TODO: your "mv" command here.  "$i" will be a line from
   # the text file.
done

关于macos - Bash:遍历文本文件中列出的文件并 move 它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6566591/

相关文章:

c - os x 内核中图像加载的通知

linux - 从 VPS 备份所有网页文件

iphone - 在 iPhone 模拟器上读取本地文件会崩溃,但在真实设备上不会崩溃

macos - 无法在 Mac 上运行 Google Coder

mysql - Xampp 不适用于 Mac X

c - Mac OS X 中 C 变量的奇怪地址

django - 如何在启动时可靠地启动多个 DJango FCGI 服务器?

linux - 使用脚本外壳创建多个文件

C++ 二进制写入/读取 32 位到/从 64 位

java - List.Add 在 Java 中意外多次添加相同的内容