Bash 用于验证 SVN 项目有效性的脚本
Bash script to verify validity of SVN projects
我想编写一个每周运行的 bash 脚本,基本上对存储在服务器上的所有项目执行 svnadmin 验证脚本。这应该很容易做到,但我没有足够的知识 bash 来编写这个脚本,任何帮助将不胜感激。
项目存储在服务器上的一个目录中,所以我想输出标准的 ls -la 命令并在每个目录名称(项目)的末尾说明项目是否正常(验证命令是否已在所述项目上完成 运行。
感谢任何能提供帮助的人。
您可以在一个循环中测试 svnadmin verify
的退出状态,该循环遍历给定父级的所有目录(使用目录 glob 运算符 */
),例如svndir
:
#!/bin/bash
svndir=/home/subversion/repositories
for dir in "$svndir"/*/
do
if svnadmin verify "$dir" &>/dev/null
then
echo -n "OK "
else
echo -n "NOK "
fi
ls -lad "$dir"
done
此示例将丢弃 svnadmin verify
的进度输出。请注意,如果 svnadmin verify
被中断(例如 ^C
),它也可能打印 OK
,并且它会在不是存储库的子目录上打印 NOK
。
我想编写一个每周运行的 bash 脚本,基本上对存储在服务器上的所有项目执行 svnadmin 验证脚本。这应该很容易做到,但我没有足够的知识 bash 来编写这个脚本,任何帮助将不胜感激。
项目存储在服务器上的一个目录中,所以我想输出标准的 ls -la 命令并在每个目录名称(项目)的末尾说明项目是否正常(验证命令是否已在所述项目上完成 运行。
感谢任何能提供帮助的人。
您可以在一个循环中测试 svnadmin verify
的退出状态,该循环遍历给定父级的所有目录(使用目录 glob 运算符 */
),例如svndir
:
#!/bin/bash
svndir=/home/subversion/repositories
for dir in "$svndir"/*/
do
if svnadmin verify "$dir" &>/dev/null
then
echo -n "OK "
else
echo -n "NOK "
fi
ls -lad "$dir"
done
此示例将丢弃 svnadmin verify
的进度输出。请注意,如果 svnadmin verify
被中断(例如 ^C
),它也可能打印 OK
,并且它会在不是存储库的子目录上打印 NOK
。