首先,我们需要定义两个文件夹的路径。在 Shell 脚本中,这可以通过设置变量来完成:
dir1=/path/to/folder1
dir2=/path/to/folder2
然后,我们可以使用 cd
命令进入第一个文件夹并打开文件进行读取。使用 sed
命令查找和复制特定行:
cd $dir1
file1=somefile.txt
line=$(sed -n '10p' $file1) # 在第10行处查找并复制行(这里是示例)
接下来,我们再次使用 cd
命令进入第二个文件夹,并打开同名文件进行编辑。可以使用 $()
来替换变量并写入特定行:
cd $dir2
file2=$file1
sed -i "10s/.*/$line/" $file2 # 将第10行替换为从第一个文件复制的行
最后,将整个代码放在一个 .sh 文件中并运行即可。完整示例代码如下:
#!/bin/bash
dir1=/path/to/folder1
dir2=/path/to/folder2
cd $dir1
file1=somefile.txt
line=$(sed -n '10p' $file1)
cd $dir2
file2=$file1
sed -i "10s/.*/$line/" $file2