Macos 如何将文本添加到文件夹中所有文件的开头?
我有一个包含1000个小文本文件的文件夹,我需要修改这些文件,并在每个文件的开头添加7个零。在我这样做之后,我就可以把它们都放在一起了。在终端中是否有一种简单的方法来执行此操作?查找当前目录中的所有文件,并使用Macos 如何将文本添加到文件夹中所有文件的开头?,macos,unix,terminal,Macos,Unix,Terminal,我有一个包含1000个小文本文件的文件夹,我需要修改这些文件,并在每个文件的开头添加7个零。在我这样做之后,我就可以把它们都放在一起了。在终端中是否有一种简单的方法来执行此操作?查找当前目录中的所有文件,并使用sed在文件开头插入0000000: find . -maxdepth 1 -type f -exec sed -i.bk '1i \ 0000000' {} \; 这还将为目录中的每个文件创建.bk文件。如果您对结果满意,只需rm*.bk删除备份文件即可 查找当前目录中的所有文件,并使
sed
在文件开头插入0000000
:
find . -maxdepth 1 -type f -exec sed -i.bk '1i \
0000000' {} \;
这还将为目录中的每个文件创建
.bk
文件。如果您对结果满意,只需rm*.bk
删除备份文件即可 查找当前目录中的所有文件,并使用sed
在文件开头插入0000000
:
find . -maxdepth 1 -type f -exec sed -i.bk '1i \
0000000' {} \;
这还将为目录中的每个文件创建
.bk
文件。如果您对结果满意,只需rm*.bk
删除备份文件即可 将其粘贴到.sh文件中并执行。将路径放在文件目录而不是示例目录
#!/bin/bash
FILES="./files/*"
for f in $FILES
do
echo '0000000' | cat - $f > temp && mv temp $f
done
将其粘贴到.sh文件中并执行。将路径放在文件目录而不是示例目录
#!/bin/bash
FILES="./files/*"
for f in $FILES
do
echo '0000000' | cat - $f > temp && mv temp $f
done
是你要找的吗?@Snow镰刀不,我不需要更改名称,只需要更改内容。该文件夹中还有其他文件吗?@Beta除了需要编辑的文本文件外,没有其他文件。相关(甚至重复):是你要找的吗?@Snow镰刀不,我不需要更改名称,只有内容。该文件夹中还有其他文件吗?@Beta除了需要编辑的文本文件外,没有其他文件。相关(甚至重复):不起作用;给出了“无效的命令代码”。不是
-i
,而是-e
,或者最好是什么都没有(只是sed'1i'
)在Linux上测试,而不是在Mac上,经过编辑使Mac友好@GoZoner否,-i
@sudo\u O要将零与文本放在同一行吗?对不起,我有点不知所措:)没用;给出了“无效的命令代码”。不是-i
,而是-e
,或者最好是什么都没有(只是sed'1i'
)在Linux上测试,而不是在Mac上,经过编辑使Mac友好@GoZoner否,-i
@sudo\u O要将零与文本放在同一行吗?对不起,这里有点过头了:)