⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 removevovida.pl

📁 SIP(Session Initiation Protocol)是由IETF定义
💻 PL
字号:
#!/usr/bin/perl# ====================================================================# The Vovida Software License, Version 1.0 # # Copyright (c) 2000 Vovida Networks, Inc.  All rights reserved.# # Redistribution and use in source and binary forms, with or without# modification, are permitted provided that the following conditions# are met:# # 1. Redistributions of source code must retain the above copyright#    notice, this list of conditions and the following disclaimer.# # 2. Redistributions in binary form must reproduce the above copyright#    notice, this list of conditions and the following disclaimer in#    the documentation and/or other materials provided with the#    distribution.# # 3. The names "VOCAL", "Vovida Open Communication Application Library",#    and "Vovida Open Communication Application Library (VOCAL)" must#    not be used to endorse or promote products derived from this#    software without prior written permission. For written#    permission, please contact vocal\@vovida.org.# # 4. Products derived from this software may not be called "VOCAL", nor#    may "VOCAL" appear in their name, without prior written#    permission of Vovida Networks, Inc.# # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND# NON-INFRINGEMENT ARE DISCLAIMED.  IN NO EVENT SHALL VOVIDA# NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES# IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL,# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH# DAMAGE.# # ====================================================================# # This software consists of voluntary contributions made by Vovida# Networks, Inc. and many individuals on behalf of Vovida Networks,# Inc.  For more information on Vovida Networks, Inc., please see# <http://www.vovida.org/>.# This script is for converting a set of users referenced by the domain# vovida.com to have no domain references. It finds all files with# @vovida.com in the name and removes that string from the filename.# It also finds all files with @vovida.com in the content and removes# that string, leaving the content otherwise untouched.## Please use this script only after you have copied your provisioning data# to a safe backup, just in case something goes horribly wrong.# Before running the script, it is a good idea to delete any invalid# bins. A bin is invalid if it does not have all the same subdirectories# as the first bin, ie AAA. This happens because people have in the past# run provisioning with different arguments for the number of users or# number of bins.## Author: Barbara Samson, Vovida Networksdie "Usage: removeVovida.pl <number of bins> <pserver root> <full pathname of FileDataStoreWrapper>\n" unless $#ARGV == 2;$numBins = $ARGV[0];$psRoot = $ARGV[1];$wrapper = $ARGV[2];die "${psRoot} is not a valid directory\n" unless -d $psRoot;die "${wrapper} does not exist\n" unless -e $wrapper;$fileList = `find $psRoot`;@files = split "\n", $fileList;foreach $file (@files){  # file needs replacement if the name or content contain @vovida.com  $needsReplacement = 0;  @fileComponents =  split "\/", $file;  # we count backward from the end because we don't know what is at the start  $filename = $fileComponents[$#fileComponents];  $group = $fileComponents[$#fileComponents - 1];  $bin = $fileComponents[$#fileComponents - 2];  if ($filename =~ /\@vovida.com/)  {    $needsReplacement = 1;    # strip @vovida.com from filename    $filename =~ s/\@vovida.com//;  }  # strip .xml from filename in case we need to use it  $filename =~ s/.xml$//;  $content = "";  open (INPUT, $file);  while (<INPUT>)  {    $line = $_;    if ($line =~ /\@vovida.com/)    {      $needsReplacement = 1;      $line =~ s/\@vovida.com//;    }    $content .= $line;  }  # do nothing unless file needs replacement  if ($needsReplacement)  {    print "removing ${file}\n";    unlink ${file};    system ($wrapper, "-b", $numBins, "-r", $psRoot, "-d", $group, "-f", $filename, "-c", qq($content));  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -