您尚未登录。

#1 2024-12-25 15:50:48

hellowliu
会员
注册时间: 2022-12-31
帖子: 27

如何根据一个文件内容逐行批量创建文件?

我可能还是不太会一些命令行工具,请各位大佬赐教。
我的需求是这样的,我有一个文件,内容是

Alpha
Beta
Gamma
...

我想创建一个文件夹(目录),里面有根据上面文件每一行的内容而命名的 .txt 文件,像这样

.
..
Alpha.txt
Beta.txt
Gamma.txt
...

有什么命令可以快速做到这个吗?

离线

#2 2024-12-25 17:36:19

archblue
会员
注册时间: 2011-08-21
帖子: 77

Re: 如何根据一个文件内容逐行批量创建文件?

#!/bin/bash

# 读取文件内容并逐行处理
while IFS= read -r line; do
    # 创建以每行内容命名的 .txt 文件
    touch "${line}.txt"
done < your_file.txt

离线

#3 2024-12-25 17:51:12

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 9,024
个人网站

Re: 如何根据一个文件内容逐行批量创建文件?

最简单直观的办法:你把你的文件编辑成一系列 touch 命令,然后用 bash 运行它。

离线

#4 2024-12-25 19:29:04

tanloong
会员
注册时间: 2021-08-15
帖子: 29

Re: 如何根据一个文件内容逐行批量创建文件?

mkdir your_dir
cd your_dir
sed 's/^/touch/; s/$/.txt/; ' your_file.txt | bash

离线

#5 2024-12-26 10:07:15

zsrkmyn
lazy...
注册时间: 2013-05-05
帖子: 334

Re: 如何根据一个文件内容逐行批量创建文件?

for f in `cat list`; do touch $f.txt; done

离线

页脚