我正在尝试制作一个脚本,该脚本允许我在对这些文件的特定列执行命令的同时逐行读取目录中的所有文件。我正在处理的文件是具有用逗号分隔的值的.txt文件。我可以通过将文本文件输入到脚本,然后输出值而不是多个文件来执行单个文件的代码,这是我的目标。我希望文件按目录中的顺序读取。这是我到目前为止。在一个目录中逐行读取所有文件,并在它们上执行一条命令
directory=$(/dos2unix/*.txt)
file=$(*.txt")
IFS=","
for "$file" in "$directory";
do
while read -ra line;
do
if [ "${line[1]}" != "" ]; then
echo -n "${line[*]}, Hash Value:"; echo "${line[1]}" | openssl dgst -sha1 | sed 's/^.* //'
else
if [ "${line[1]}" == "" ]; then
echo "${line[*]}, Hash Value:None";
fi
fi
done
done
一些我收到的错误是:
$ ./orange2.sh
/dos2unix/test1.txt: line 1: hello: command not found
/dos2unix/test1.txt: line 2: goodbye: command not found
/dos2unix/test1.txt: line 4: last: command not found
./orange2.sh: line 28: unexpected EOF while looking for matching `"'
./orange2.sh: line 33: syntax error: unexpected end of file
任何提示,建议或例子吗?
感谢所有
UPDATE
我也期待复制所有文件的最终包含您在第一次看到if语句,所以我想一个命令。)把我的文件分开和b。)创建一个包含更新值的副本。
为谷歌找到'型的F -execdir CMD {} \;' – hek2mgl