Linux 如何在shell脚本中创建服务器?
如何创建一个服务器脚本来知道文件夹中是否存在文件?如果它检测到上述文件夹中存在文件,它将创建一个清单文件,详细信息如下,然后压缩该文件(不包括清单文件)。该脚本将在特定时间执行,并将及时执行上述操作 详情如下: 清单文件格式Linux 如何在shell脚本中创建服务器?,linux,bash,shell,command-line,scripting,Linux,Bash,Shell,Command Line,Scripting,如何创建一个服务器脚本来知道文件夹中是否存在文件?如果它检测到上述文件夹中存在文件,它将创建一个清单文件,详细信息如下,然后压缩该文件(不包括清单文件)。该脚本将在特定时间执行,并将及时执行上述操作 详情如下: 清单文件格式 文件扩展名:。清单 清单内容:文件名|文件大小|记录计数| createddate | lastmodified | md5| 其中: Filename=文件名 Filesize=文件大小(以字节大小为单位,不带逗号)(例如,应为34KB 写为34000,而不是340
- 文件扩展名:。清单
- 清单内容:文件名|文件大小|记录计数| createddate | lastmodified | md5|
- Filename=文件名
- Filesize=文件大小(以字节大小为单位,不带逗号)(例如,应为34KB 写为34000,而不是34000)
- 记录计数=不带逗号的记录计数
- Createddate=yyyymmddhh24miss
- Lastmodified=yyyyymmddhh24miss
- md5=在linux中使用md5sum获取md5值
- 可以将多个文件归档到一(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."
下面是一个用Bash编写的简单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
从中,请编辑此问题,使其包含一些代码块或引号,以便于阅读。我已经编辑了这篇文章。当您不断重复相同的代码时,这将是维护的噩梦-如果您要执行多次操作,请将其放入变量中,例如,
OUT=$(日期+'batch_%Y%m%d%H%m%s.manifest')
然后执行echo>“$OUT”
。如何优化我的shell脚本?还有,我如何才能在一个清单中放置多个属性?