记录一段Shell脚本,文件/文件夹清空复制内容修改和创建

前几年写过一段shell脚本,大致的功能是完成制定目录下的文件夹/文件自动清空和复制工作,同时针对不同目录下复制的文件进行一些内容修改。并在另外一个文件中进行记录。主要涉及 if-then-fi, for, sed 等基本操作,这里记录下这段shell脚本以备查阅使用。 #!/bin/bash    #auther:Jacob Xu 20130811, create for Solr master indexing    echo “====================== choose the configure for user! ====================”   solrToolPath=/home/jacoxu/solrProject/solrTools/    creatIndexFolder=1    replaceSchame=0    replaceMasterConf=1    replaceSlaveConf=0    generateCoreMap=0    generateSolrXml=1       ################## configure the index folder for user!###################    rawFolder=$solrToolPath“collection1970_01_1″   destFolder=/home/jacoxu/solrProject/solrHome_NormSMS/multicore/    startDate=201001    endDate=201412    coreChildren=( 1 2 3 )    conf=conf    prefixPath=collection    … 继续阅读

Shell-vi替换指定文件中的内容-自动修改SolrLRU

【需求】:利用Shell脚本替换指定文件中的一段数字内容,需要进行模糊匹配。 【具体场景】:自动修改Solr下的LRU参数,并自动重启检索服务 #!/bin/bash    #auther:Jacob Xu 20141102, create for up LRU parameter of Solr    echo “====================== set the configure for solr! ====================”   solrPath=/var/solr/apache-tomcat-7.0.39_ubuntu_29.2_analysis_7080/    echo “solrPath=”$solrPath   newLRU_Num=250    echo “newLRU_Num=”$newLRU_Num      ################## configure solr.xml for solr!###################    rawSolrHome_norm=$solrPath“webapps/analysisNorm001/solrHome/”   rawSolrHome_spam=$solrPath“webapps/analysisSpam001/solrHome/”      ##################################################################    if [ -d "/var/solr/apache-tomcat-7.0.39_ubuntu_29.2_analysis_7080" ]     then            echo “begin to shutdown solr …”           echo $solrPath“bin/shutdown.sh”           bash $solrPath“bin/shutdown.sh”           sleepTime=20            for((;sleepTime>0;sleepTime–))            do                   printf “\rplease waiting ${sleepTime} seconds…”                   sleep 1s            done            kill -9 $(pgrep ${solrPath} -f)    … 继续阅读

数据分发shell小脚本

在Linux系统下,当一个文件夹下的文件过多,则文件列表读取会很慢,而且不利于进行cp 或mv 操作,应对与此,我们通过一个分发脚本程序对指定文件夹的数据进行分发,重新分配到多个文件夹下。 #! /bin/sh       ###########################################    scrDir=/data/path/    splitNum=3       count=1    while true; do       FileList =`ls $scrDir|grep txt`        if [ -z "$FileList" ]        then            #The filelist is empty, sleep 10s            sleep 10s        else           #The folder has files, so mv it            for FILE in $FileList           do               if [ $count -gt $splitNum ]                then                    count=1                fi                mkdir -p $scrDir$count‘/’ … 继续阅读

Shell脚本文件/文件夹及内容操作范例

前段时间Solr项目写了一个shell脚本进行文件/文件夹以及其中内容的匹配和替换操作。目前已全改为java执行了,这段代码被弃用,不过值得留下为以后其他shell脚本开发是参考: #!/bin/bash    #auther:Jacob Xu 20130811, create for Solr master indexing    echo “====================== choose the configure for user! ====================”   solrToolPath=/home/jacoxu/solrProject/solrTools/    creatIndexFolder=1    replaceSchame=0    replaceMasterConf=1    replaceSlaveConf=0    generateCoreMap=0    generateSolrXml=1       ################## configure the index folder for user!###################    rawFolder=$solrToolPath“collection1970_01_1″   destFolder=/home/jacoxu/solrProject/solrHome_NormSMS/multicore/    startDate=201001    endDate=201412    coreChildren=( 1 2 3 )    conf=conf    prefixPath=collection    ########## configure the path of replaced schame.xml for user!###########    schema=schema.xml    … 继续阅读