我在一个文件夹中有一堆文件。它们都以文件头开头。我想将所有文件的内容复制到一个文件中。我不想复制文件头。我编写了以下bash脚本
#!/bin/sh
FILES=$1
DESTINATION=$2
files=(${FILES})
echo $files
for f in $files
do
echo 'File '$f
awk 'NR>=2' $f >> $DESTINATION
done
我用./copy.sh ./folder/*.csv newfile.csv
调用这个文件。但是结果它只复制了第一个文件。特别是,我可以看到列表只包含一个文件。有什么建议吗?
2条答案
按热度按时间wnavrhmk1#
不需要在bash中循环,因为awk可以处理多个文件,只需使用以下简化的脚本:
并将脚本调用为:
sf6xfgos2#