![检查文件是否存在并将结果打印到Excel文件](https://linux22.com/image/68743/%E6%A3%80%E6%9F%A5%E6%96%87%E4%BB%B6%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8%E5%B9%B6%E5%B0%86%E7%BB%93%E6%9E%9C%E6%89%93%E5%8D%B0%E5%88%B0Excel%E6%96%87%E4%BB%B6.png)
我想创建一个批处理文件,它从 Excel 文件中读取文件列表和相应的目录,并检查它们是否存在于 unix 位置,如果它们不存在,则创建一个标志(以某种颜色突出显示 excel 行)如果没有找到)。我有putty,我对unix中的这种代码很陌生,请帮忙。
谢谢 gkm
答案1
创建 .csv 文件要简单得多(也更便携)。您可以使用 " 作为文本限定符,或使用文本中未出现的任何字符(如制表符或竖线)作为分隔符。
添加标有“file_exists”的列,您可以在其中放置标记。将文件导入 Excel,根据需要进行排序和格式化。
如果我理解正确的话,我想这就是你正在寻找的。在构建 .csv 行时,调用此文件并向其传递文件名。
#!/bin/bash
FILE="$1"
if [ -f $FILE ];
then
echo -n "1"
else
echo -n "0";
fi;
假设它名为“file_exists.sh”
./file_exists.sh fu.txt # prints 1 to your csv row
./file_exists.sh nofile.txt # prints 0 to row
这只是无数方法中的一种。但它会起作用。
答案2
这种文件格式非常复杂,无法简单地读取/写入。而且它是二进制文件,这使得仅从 bash 进行编辑变得更加困难。切换到文本文件或任何易于编辑的文件是可能的,但在这种情况下,它不是或至少很难完成。