bash - 从文件创建文件夹到另一个文件夹(bash)
问题描述
我需要一些帮助来处理 linux 中的文件夹和文件。
path1/path2/file_1:
file_A.txt
file_B.txt
file_C.txt
file_D.txt
我想从中file_1
为每个文件夹创建一个文件夹file_X.txt
并将其放入相应的文件夹file_X.txt
中,因此对于此示例,我应该在大文件夹“ Project
”中获得 4 个新文件夹,其名称为file_X.txt
不带该.txt
部分的名称:
/Project/file_A
file_A.txt
/Project/file_B
file_B.txt
/Project/file_C
file_C.txt
/Project/file_D
file_D.txt
*请注意,该文件夹Project
尚不存在。
谢谢你的帮助。
解决方案
像下面这样的东西应该做你需要的:
for file in $(find /path/to/files/ -name "file_*.txt")
do
name=$(basename "$file" .txt)
mkdir -p /Project/$name
mv "$file" /Project/$name
done
推荐阅读
- python - 如果列中不存在值,则忽略条件
- mongodb - 将本地 mongodump 迁移到 docker 容器中
- javascript - Gatsby 首次加载未设置样式的网站(刷新后又看起来不错)
- apache - nginx 背后的 Apache 给出了错误的虚拟主机
- c# - 同一个表中的 nHibernate HasMany 导致 StackOverflowException
- sql - 可以告诉我创建用户的错误吗?
- java - Java BigInteger 返回不正确的值
- linux - 重命名 linux 功能未按预期工作
- nginx - 在 Nginx 中创建一个 301 重定向,从某些 URL 路径中删除“.html”结尾?
- php - Laravel:通过请求验证更新数据不是更新数据