2017-12-18 347 views
-1

如何创建一个服务器脚本来知道文件夹中是否存在文件?如果它检测到/存在所述文件夹中存在的文件,则它将创建具有以下细节的清单文件,然后压缩除清单文件之外的文件。 该脚本将在特定时间执行,并将及时执行上述操作。如何在shell脚本中创建服务器?

以下是详细信息:

清单文件格式

  • 文件扩展名:.manifest的

  • 舱单内容:文件名|文件大小|总记录| createddate |上次更改| MD5 |

其中:

  • 文件名= 文件名

  • 在字节大小作品尺寸= 文件大小没有逗号(例如34KB应 被写为34000和不是34,000)

  • 记录计数,而在Linux中使用的md5sum逗号

  • Createddate = YYYYMMDDHH24MISS

  • 的LastModified = YYYYMMDDHH24MISS

  • 的md5 = = 记录计数得到的MD5值。

一(1)对每个传送/批文件的清单文件。

  • 多个文件可以被存档到一(1)不包括 清单文件的文件。

任何帮助将不胜感激。谢谢!

编辑:

这是我迄今所做的:

#!/bin/bash 
clear 
echo "Filename: " 
read filename 
if 
    ls -l $filename 
then 
    echo "File found!" 
    manifest=$""batch_"$(date +%Y%m%d)."manifest"" 
    du -b $filename | awk '{printf "| " $2 " | "}' >> "$manifest" 
    du -b $filename | awk '{printf $1 " | "}' >> "$manifest" 
    wc -l $filename | awk '{printf $1 " | "}' >> "$manifest" 
    md5sum $filename | awk '{printf $1 " |"}' >> "$manifest" 
    zip -r "batch_"$(date +%Y%m%d%H%M%S).".zip" $filename 
fi 
echo "Done." 
+2

有什么你到目前为止尝试过? – Setop

+0

请编辑此问题以包含一些代码块或引号,以便于阅读。 –

+0

我已经编辑过这篇文章。 – Koko

回答

1

这是写在猛砸一个简单的Web服务器

#!/usr/bin/env bash 
RESPONSE="HTTP/1.1 200 OK\r\nConnection: keep-alive\r\n\r\n${2:-"OK"}\r\n" 
while { echo -en "$RESPONSE"; } | nc -l "${1:-8080}"; do 
echo "================================================" 
done 

GitHub/Shinatra

相关问题