写你的shell,其实很简单 - 等你归去来 - 博客园



写你的shell,其实很简单 - 等你归去来 - 博客园

没有写过shell? 没关系了,其实需求确定之后,你显然已经知道,这太简单了。不就是语法问题吗? 你别告诉我你不会谷歌,不会百度! 我就先抛几个需要考虑的点,后面直接给代码吧! 2、怎样防止同时多次运行同一个内容? 关键词: lock 4、怎样指定运行时间段,counter或者起始日期? 关键词: while, let, expr 5、附加:怎样知道当前的运行状态如何了? 关键词: echo ,  progress 把这些问题考虑好了,你就一步步去写吧,不知道语法的,直接谷歌、百度,代码参考如下: #/bin/bash # @author: youge # @date: 2015-12-22 startDate="2015-11-24" # when to start startDateTimestamp=`date -d "$startDate" +%s` endDate="2015-12-14" # when to end endDateTimestamp=`date -d "$endDate" +%s` sleepTime=25 # to take a break haveSthUndo=0 # check if there is something undo , if not , exit the program rootDir='/cygdrive/d/wamp/ppi/' dir=$rootDir"cron/" itemArr=("itemA" "itemB" "itemC") # the items you want to run there for item in ${itemArr[@]} do runFile=$rootDir$item".run"; if [ ! -f "$runFile" ] ; then haveSthUndo=1; echo $item" runs on me" $runFile " touched"; echo -e "script startTime: "`date "+%Y-%m-%d %H:%M:%S"` "\nbeginDate:" $startDate "\nendDate:" $endDate "\npath:" $dir >> $runFile touch "$runFile"; break;

Read full article from 写你的shell,其实很简单 - 等你归去来 - 博客园


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts