https://stackoverflow.com/questions/12076326/how-to-install-maven2-on-redhat-linux

#!/bin/bash

# Target installation location
MAVEN_HOME="/your/path/here" # Link to binary tar.gz archive
# See https://maven.apache.org/download.cgi?html_a_name#Files
MAVEN_BINARY_TAR_GZ_ARCHIVE="http://www.trieuvan.com/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz" # Configuration parameters used to start up the JVM running Maven, i.e. "-Xms256m -Xmx512m"
# See https://maven.apache.org/configure.html
MAVEN_OPTS="" # Optional (not needed) if [[ ! -d $MAVEN_HOME ]]; then
# Create nonexistent subdirectories recursively
mkdir -p $MAVEN_HOME # Curl location of tar.gz archive & extract without first directory
curl -L $MAVEN_BINARY_TAR_GZ_ARCHIVE | tar -xzf - -C $MAVEN_HOME --strip 1 # Creating a symbolic/soft link to Maven in the primary directory of executable commands on the system
ln -s $MAVEN_HOME/bin/mvn /usr/bin/mvn # Permanently set environmental variable (if not null)
if [[ -n $MAVEN_OPTS ]]; then
echo "export MAVEN_OPTS=$MAVEN_OPTS" >> ~/.bashrc
fi # Using MAVEN_HOME, MVN_HOME, or M2 as your env var is irrelevant, what counts
# is your $PATH environment.
# See http://stackoverflow.com/questions/26609922/maven-home-mvn-home-or-m2-home
echo "export PATH=$MAVEN_HOME/bin:$PATH" >> ~/.bashrc
else
# Do nothing if target installation directory already exists
echo "'$MAVEN_HOME' already exists, please uninstall existing maven first."
fi

  

#!/usr/bin/env bash

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License. # Stop all yarn daemons. Run this on master node. echo "stopping yarn daemons" bin=`dirname "${BASH_SOURCE-$0}"`
bin=`cd "$bin"; pwd` DEFAULT_LIBEXEC_DIR="$bin"/../libexec
HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR}
. $HADOOP_LIBEXEC_DIR/yarn-config.sh # stop resourceManager
"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR stop resourcemanager
# stop nodeManager
"$bin"/yarn-daemons.sh --config $YARN_CONF_DIR stop nodemanager
# stop proxy server
"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR stop proxyserver
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"stop-yarn.sh" 35L, 1340C
[root@hadoop1 sbin]# cat yarn-daemon.sh
#!/usr/bin/env bash # Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License. # Runs a yarn command as a daemon.
#
# Environment Variables
#
# YARN_CONF_DIR Alternate conf dir. Default is ${HADOOP_YARN_HOME}/conf.
# YARN_LOG_DIR Where log files are stored. PWD by default.
# YARN_MASTER host:path where hadoop code should be rsync'd from
# YARN_PID_DIR The pid files are stored. /tmp by default.
# YARN_IDENT_STRING A string representing this instance of hadoop. $USER by default
# YARN_NICENESS The scheduling priority for daemons. Defaults to 0.
## usage="Usage: yarn-daemon.sh [--config <conf-dir>] [--hosts hostlistfile] (start|stop) <yarn-command> " # if no args specified, show usage
if [ $# -le 1 ]; then
echo $usage
exit 1
fi bin=`dirname "${BASH_SOURCE-$0}"`
bin=`cd "$bin"; pwd` DEFAULT_LIBEXEC_DIR="$bin"/../libexec
HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR}
. $HADOOP_LIBEXEC_DIR/yarn-config.sh # get arguments
startStop=$1
shift
command=$1
shift hadoop_rotate_log ()
{
log=$1;
num=5;
if [ -n "$2" ]; then
num=$2
fi
if [ -f "$log" ]; then # rotate logs
while [ $num -gt 1 ]; do
prev=`expr $num - 1`
[ -f "$log.$prev" ] && mv "$log.$prev" "$log.$num"
num=$prev
done
mv "$log" "$log.$num";
fi
} if [ -f "${YARN_CONF_DIR}/yarn-env.sh" ]; then
. "${YARN_CONF_DIR}/yarn-env.sh"
fi if [ "$YARN_IDENT_STRING" = "" ]; then
export YARN_IDENT_STRING="$USER"
fi # get log directory
if [ "$YARN_LOG_DIR" = "" ]; then
export YARN_LOG_DIR="$HADOOP_YARN_HOME/logs"
fi if [ ! -w "$YARN_LOG_DIR" ] ; then
mkdir -p "$YARN_LOG_DIR"
chown $YARN_IDENT_STRING $YARN_LOG_DIR
fi if [ "$YARN_PID_DIR" = "" ]; then
YARN_PID_DIR=/tmp
fi # some variables
export YARN_LOGFILE=yarn-$YARN_IDENT_STRING-$command-$HOSTNAME.log
export YARN_ROOT_LOGGER=${YARN_ROOT_LOGGER:-INFO,RFA}
log=$YARN_LOG_DIR/yarn-$YARN_IDENT_STRING-$command-$HOSTNAME.out
pid=$YARN_PID_DIR/yarn-$YARN_IDENT_STRING-$command.pid
YARN_STOP_TIMEOUT=${YARN_STOP_TIMEOUT:-5} # Set default scheduling priority
if [ "$YARN_NICENESS" = "" ]; then
export YARN_NICENESS=0
fi case $startStop in (start) [ -w "$YARN_PID_DIR" ] || mkdir -p "$YARN_PID_DIR" if [ -f $pid ]; then
if kill -0 `cat $pid` > /dev/null 2>&1; then
echo $command running as process `cat $pid`. Stop it first.
exit 1
fi
fi if [ "$YARN_MASTER" != "" ]; then
echo rsync from $YARN_MASTER
rsync -a -e ssh --delete --exclude=.svn --exclude='logs/*' --exclude='contrib/hod/logs/*' $YARN_MASTER/ "$HADOOP_YARN_HOME"
fi hadoop_rotate_log $log
echo starting $command, logging to $log
cd "$HADOOP_YARN_HOME"
nohup nice -n $YARN_NICENESS "$HADOOP_YARN_HOME"/bin/yarn --config $YARN_CONF_DIR $command "$@" > "$log" 2>&1 < /dev/null &
echo $! > $pid
sleep 1
head "$log"
# capture the ulimit output
echo "ulimit -a" >> $log
ulimit -a >> $log 2>&1
;; (stop) if [ -f $pid ]; then
TARGET_PID=`cat $pid`
if kill -0 $TARGET_PID > /dev/null 2>&1; then
echo stopping $command
kill $TARGET_PID
sleep $YARN_STOP_TIMEOUT
if kill -0 $TARGET_PID > /dev/null 2>&1; then
echo "$command did not stop gracefully after $YARN_STOP_TIMEOUT seconds: killing with kill -9"
kill -9 $TARGET_PID
fi
else
echo no $command to stop
fi
rm -f $pid
else
echo no $command to stop
fi
;; (*)
echo $usage
exit 1
;; esac [root@hadoop1 sbin]#

  

yarn 打日志

kill -9

#/bin/bash
#输出 年-月-日
today=`date +%Y-%m-%d` echo $today
my_array=( 'a' 'b' 'c' )
# 'ssh {} "scp /data/visitlog/{} root@d:/data/mapReduceVisitorLog/{}/"'
# 遍历数组
for i in ${my_array[*]}
do
echo $i
s="ssh ${i} 'scp /data/visitlog/*${today} root@d:/data/mapReduceVisitorLog/${i}/'"
echo $s
eval $s
s="ssh ${i} 'scp /data/unionlog/*${today} root@d:/data/mapReduceYunMengLog/${i}/'"
echo $s
eval $s
done

shell 处理时间

$ date
Thu Jan 21 11:43:00 CST 2016

(1) 获取当前时间

$ date +%Y-%m-%d
2016-01-27 $ date "+%Y-%m-%d %H:%M:%S"
2016-01-27 17:37:31

(2) 一年中的第几天,第几周,一周中的第几天。。。

$ date +%j #一年中的第几天
027 $ date +%d #一个月中的第几天
27 $ date +%w #一周中的第几天(0(周日) --> 6(周六))
3 $ date +%U #一年中的第几周
04

(3) 前后时间,加ago就是前,没有ago就是后

$date -d '1 years ago' "+%Y-%m-%d %H:%M:%S"
2015-01-27 17:54:39 $date -d '1 months ago' "+%Y-%m-%d %H:%M:%S"
2015-12-27 17:54:45 $ date -d '1 days ago' "+%Y-%m-%d %H:%M:%S"
2016-01-26 17:51:45 $date -d '1 hours ago' "+%Y-%m-%d %H:%M:%S"
2016-01-27 16:52:29 $date -d '1 minutes ago' "+%Y-%m-%d %H:%M:%S"
2016-01-27 17:51:45 $date -d '1 seconds ago' "+%Y-%m-%d %H:%M:%S"
2016-01-27 17:52:59

(4) 比较时间

#!/bin/bash

date1="2008-4-09 12:00:00"
date2="2008-4-10 15:00:00" t1=`date -d "$date1" +%s`
t2=`date -d "$date2" +%s` if [ $t1 -gt $t2 ]; then
echo "$date1 > $date2"
elif [ $t1 -eq $t2 ]; then
echo "$date1 == $date2"
else
echo "$date1 < $date2"
fi
 
 
 

#/bin/bash
#输出 年-月-日
yesterday=`date -d '1 days ago' "+%Y-%m-%d"`
echo $yesterday
my_array=( 'a' 'b' 'c' )
# 'ssh {} "scp /data/visitlog/{} root@d:/data/mapReduceVisitorLog/{}/"'
# 遍历数组
for i in ${my_array[*]}
do
echo $i
s="ssh ${i} 'scp /data/visitlog/*${yesterday} root@d:/data/mapReduceVisitorLog/${i}/'"
echo $s
eval $s
s="ssh ${i} 'scp /data/unionlog/*${yesterday} root@d:/data/mapReduceYunMengLog/${i}/'"
echo $s
eval $s
done

无限循环

while true;do echo $(date +%Y%m%d-%H:%M:%S);done;

无限打印当前时间

获得当天的日期

date +%Y-%m-%d

输出: 2011-07-28

将当前日期赋值给DATE变量
DATE=$(date +%Y%m%d)

有时候我们需要使用今天之前或者往后的日期,这时可以使用date的 -d参数

获取明天的日期

date -d next-day +%Y%m%d

获取昨天的日期

date -d last-day +%Y%m%d

获取上个月的年和月

date -d last-month +%Y%m

获取下个月的年和月
date -d next-month +%Y%m

获取明年的年份
date -d next-year +%Y

下面是一些date参数的说明和一些例子

名称 : date 
使用权限 : 所有使用者 
使用方式 : date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]] 
说明 : date 能用来显示或设定系统的日期和时间,在显示方面,使用者能设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下 : 
时间方面 : 
% : 印出 
% %n : 下一行 
%t : 跳格 
%H : 小时(00..23) 
%I : 小时(01..12) 
%k : 小时(0..23) 
%l : 小时(1..12) 
%M : 分钟(00..59) 
%p : 显示本地 AM 或 PM 
%r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M) 
%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数 %S : 秒(00..61) 
%T : 直接显示时间 (24 小时制) 
%X : 相当于 %H:%M:%S 
%Z : 显示时区 
日期方面 : 
%a : 星期几 (Sun..Sat) 
%A : 星期几 (Sunday..Saturday) 
%b : 月份 (Jan..Dec) 
%B : 月份 (January..December) 
%c : 直接显示日期和时间 
%d : 日 (01..31) 
%D : 直接显示日期 (mm/dd/yy) 
%h : 同 %b 
%j : 一年中的第几天 (001..366) 
%m : 月份 (01..12) 
%U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形) 
%w : 一周中的第几天 (0..6) 
%W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形) 
%x : 直接显示日期 (mm/dd/yy) 
%y : 年份的最后两位数字 (00.99) 
%Y : 完整年份 (0000..9999) 
若是不以加号作为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][.ss], 
其中 MM 为月份, 
DD 为日, 
hh 为小时, 
mm 为分钟, 
CC 为年份前两位数字, 
YY 为年份后两位数字, 
ss 为秒数 
把计 : 
-d datestr : 显示 datestr 中所设定的时间 (非系统时间) 
--help : 显示辅助讯息 
-s datestr : 将系统时间设为 datestr 中所设定的时间 
-u : 显示目前的格林威治时间 
--version : 显示版本编号 
例子 : 
显示时间后跳行,再显示目前日期 : date +%T%n%D 
显示月份和日数 : date +%B %d 
显示日期和设定时间(12:34:56) : date --date 12:34:56 
设置系统当前时间(12:34:56):date --s 12:34:56 
注 意 : 当你不希望出现无意义的 0 时(比如说 1999/03/07),则能在标记中插入 - 符号,比如说 date +%-H:%-M:%-S 会把时分秒中无意义的 0 给去掉,像是原本的 08:09:04 会变为 8:9:4。另外,只有取得权限者(比如说 root)才能设定系统时间。 当你以 root 身分更改了系统时间之后,请记得以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续抱持最新的正确值。 
ntp时间同步 
linux系统下默认安装了ntp服务,手动进行ntp同步如下 
ntpdate ntp1.nl.net 
当然,也能指定其他的ntp服务器 
------------------------------------------------------------------- 
扩展功能 
date 工具可以完成更多的工作,不仅仅只是打印出当前的系统日期。您可以使用它来得到给定的日期究竟是星期几,并得到相对于当前日期的相对日期。了解某一天是星期几 
GNU 对 date 命令的另一个扩展是 -d 选项,当您的桌上没有日历表时(UNIX 用户不需要日历表),该选项非常有用。使用这个功能强大的选项,通过将日期作为引号括起来的参数提供,您可以快速地查明一个特定的日期究竟是星期几: 
date−d"nov22"WedNov2200:00:00EST2006date−d"nov22"WedNov2200:00:00EST2006 
在本示例中,您可以看到今年的 11 月 22 日是星期三。 
所以,假设在 11 月 22 日召开一个重大的会议,您可以立即了解到这一天是星期三,而这一天您将赶到驻地办公室。 
获得相对日期 
d 选项还可以告诉您,相对于 当前日期若干天的究竟是哪一天,从现在开始的若干天或若干星期以后,或者以前(过去)。通过将这个相对偏移使用引号括起来,作为 -d 选项的参数,就可以完成这项任务。 
例如,您需要了解两星期以后的日期。如果您处于 Shell 提示符处,那么可以迅速地得到答案: 
date−d′2weeks′关于使用该命令,还有其他一些重要的方法。使用next/last指令,您可以得到以后的星期几是哪一天:date−d′2weeks′关于使用该命令,还有其他一些重要的方法。使用next/last指令,您可以得到以后的星期几是哪一天: date -d ’next monday’ (下周一的日期) 
date−dnext−day+date−dnext−day+ date -d last-day +%Y%m%d(昨天的日期) 或者:date -d yesterday +%Y%m%d 
date−dlast−month+date−dlast−month+ date -d next-month +%Y%m(下个月是几月) 
使用 ago 指令,您可以得到过去的日期: 
date−d′30daysago′(30天前的日期)您可以使用负数以得到相反的日期:date−d′30daysago′(30天前的日期)您可以使用负数以得到相反的日期: date -d ’dec 14 -2 weeks’ (相对:dec 14这个日期的两周前的日期) 
date−d′−100days′(100天以前的日期)date−d′−100days′(100天以前的日期) date -d ’50 days’(50天后的日期) 
这个技巧非常有用,它可以根据将来的日期为自己设置提醒,可能是在脚本或 Shell 启动文件中,如下所示: 
DAY=`date -d ’2 weeks’ +"%b %d"` 
if test "`echo DAY`" = "Aug 16"; then echo ’Product launch is now two weeks away!’; fi   ##############################   unix shell中的日期格式转换DAY`" = "Aug 16"; then echo ’Product launch is now two weeks away!’; fi   ##############################   unix shell中的日期格式转换 t_t="Jul  1 21:29" 
date"+date"+t_t" # tt的格式是比较随意的2008−07−0121:29:00tt的格式是比较随意的2008−07−0121:29:00 date +%b/%d/%G -d "2008-07-01" 
Jul/01/2008

unix shell中的日期之间间隔的天数 
expr′(′expr′(′(date +%s -d "2008-07-02") - (date+(date+ a=`date +%Y-%m-%d` 
b=‘date+b=‘date+a +36 hours"` 
10天前: 
date−d"date−d"a -10 days" 
Sun Jun 22 00:00:00 CST 2008

以指定格式显示文件更改后最后日期,如yyyy-mm-dd hh24:mi:ss 
$ date "+%Y-%m-%d %H:%M:%S" -r test.bak 
2008-07-01 21:28:55

date命令的帮助信息
 [root@localhost source]# date --help
用法:date [选项]... [+格式]
 或:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
以给定的格式显示当前时间,或是设置系统日期。

-d,--date=字符串              显示指定字符串所描述的时间,而非当前时间
  -f,--file=日期文件            类似--date,从日期文件中按行读入时间描述
  -r, --reference=文件          显示文件指定文件的最后修改时间
  -R, --rfc-2822                以RFC 2822格式输出日期和时间
                                例如:2006年8月7日,星期一 12:34:56 -0600
      --rfc-3339=TIMESPEC      以RFC 3339 格式输出日期和时间。
                                TIMESPEC=`date',`seconds',或 `ns' 
                                表示日期和时间的显示精度。
                                日期和时间单元由单个的空格分开:
                                2006-08-07 12:34:56-06:00
  -s, --set=字符串              设置指定字符串来分开时间
  -u, --utc, --universal        输出或者设置协调的通用时间
      --help            显示此帮助信息并退出
      --version        显示版本信息并退出

给定的格式FORMAT 控制着输出,解释序列如下:

%%    一个文字的 %
  %a    当前locale 的星期名缩写(例如: 日,代表星期日)
  %A    当前locale 的星期名全称 (如:星期日)
  %b    当前locale 的月名缩写 (如:一,代表一月)
  %B    当前locale 的月名全称 (如:一月)
  %c    当前locale 的日期和时间 (如:2005年3月3日 星期四 23:05:25)
  %C    世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20)
  %d    按月计的日期(例如:01)
  %D    按月计的日期;等于%m/%d/%y
  %e    按月计的日期,添加空格,等于%_d
  %F    完整日期格式,等价于 %Y-%m-%d
  %g    ISO-8601 格式年份的最后两位 (参见%G)
  %G    ISO-8601 格式年份 (参见%V),一般只和 %V 结合使用
  %h    等于%b
  %H    小时(00-23)
  %I    小时(00-12)
  %c    按年计的日期(001-366)
  %k    时(0-23)
  %l    时(1-12)
  %m    月份(01-12)
  %M    分(00-59)
  %n    换行
  %N    纳秒(000000000-999999999)
  %p    当前locale 下的"上午"或者"下午",未知时输出为空
  %P    与%p 类似,但是输出小写字母
  %r    当前locale 下的 12 小时时钟时间 (如:11:11:04 下午)
  %R    24 小时时间的时和分,等价于 %H:%M
  %s    自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数
  %S    秒(00-60)
  %t    输出制表符 Tab
  %T    时间,等于%H:%M:%S
  %u    星期,1 代表星期一
  %U    一年中的第几周,以周日为每星期第一天(00-53)
  %V    ISO-8601 格式规范下的一年中第几周,以周一为每星期第一天(01-53)
  %w    一星期中的第几日(0-6),0 代表周一
  %W    一年中的第几周,以周一为每星期第一天(00-53)
  %x    当前locale 下的日期描述 (如:12/31/99)
  %X    当前locale 下的时间描述 (如:23:13:48)
  %y    年份最后两位数位 (00-99)
  %Y    年份
  %z +hhmm              数字时区(例如,-0400)
  %:z +hh:mm            数字时区(例如,-04:00)
  %::z +hh:mm:ss        数字时区(例如,-04:00:00)
  %:::z                数字时区带有必要的精度 (例如,-04,+05:30)
  %Z                    按字母表排序的时区缩写 (例如,EDT)

参考:

http://www.cnblogs.com/try-better-tomorrow/p/5030640.html

http://www.linuxidc.com/Linux/2013-03/81039.htm

https://www.cnblogs.com/lonelywolfmoutain/p/6165426.html

bash  传参

mkdir -p /testxiaole/test-cmd-`date '+%Y-%m-%d-%H-%M-%S'`
mkdir -p ~/testxiaole/test-cmd-`date '+%Y-%m-%d-%H-%M-%S'`
文件头
total 22500
4 drwxr-xr-x 3 root root 4096 Oct 30 22:24 .
4 dr-xr-x---. 8 root root 4096 Oct 30 22:24 ..
4 -rwxr-xr-x 1 root root 200 Oct 30 22:24 gdb_time_random_once
4 -rwxr-xr-x 1 root root 175 Oct 30 22:24 gdb_time_random_once_nh.py
4 -rwxr-xr-x 1 root root 200 Oct 30 22:23 gdb_time_random_once.py
4 -rw-r--r-- 1 root root 165 Oct 30 20:16 gdb_time_random.py
4 drwxr-xr-x 18 501 test 4096 Oct 30 20:02 Python-3.6.8
22472 -rw-r--r-- 1 root root 23010188 Oct 30 17:10 Python-3.6.8.tgz
[root@gateway test]# ./gdb_time_random_once_nh.py
./gdb_time_random_once_nh.py: line 1: import: command not found
./gdb_time_random_once_nh.py: line 3: syntax error near unexpected token `('
./gdb_time_random_once_nh.py: line 3: `def ftime():'
[root@gateway test]# cat gdb_time_random_once_nh.py
import time,random def ftime():
print(1)
print(time.time()) def frandom():
print(1)
print(random.random()) #while True:
if True:
ftime()
frandom()
[root@gateway test]# cat gdb_time_random_once
#!/usr/local/bin/python3
import time,random

  

#!/usr/local/bin/python3 执行文件的路径
#!/bin/bash
# 参数个数 文件名 第一个参数
# 1 ./myQuick.sh test_hex
echo $# $0 $1
# 输出原始字符串
# gcc -c $1.c -o $1
cmd='gcc -c $1.c -o $1'
echo $cmd
# 输入含有代表变量的字符串
# gcc -c test_hex.c -o test_hex
cmd="gcc -c $1.c -o $1"
echo $cmd # 执行
cmd=`gcc $1.c -o $1;chmod +x $1;./$1`
echo $cmd

  

#!/bin/bash
hostset=('hadoop-name' 'hadoop-data-a' 'hadoop-data-b')
for i in ${hostset[@]}; do
cmd=`ssh $i "mkdir -p ~/test/hadoop/;ls;"`;
echo $i $cmd;
done

  

#!/bin/bash
hostset=('hadoop-name' 'hadoop-data-a' 'hadoop-data-b')
for i in ${hostset[@]}; do
cmd=`ssh $i "mkdir -p ~/test1/hadoop/;ls;"`;
echo $i $cmd;
done
# 函数传入参数
dataNodes(){
echo $1;
}
dataNodes `echo 3` dataNodesSet=('hadoop-data-a' 'hadoop-data-b')
cmd='mkdir -p ~/testa0/hadoop/;'
dataNodesSsh(){
for i in ${dataNodesSet[@]}; do
eval `ssh $i $cmd`
done
}
dataNodesSsh
# '.` 形成.
cmd='mkdir -p ~/testb'`date '+%Y-%m-%d-%H-%M-%S'`'/hadoop/;'
dataNodesSsh

  

在bash中加入时间变量

*/1 * * * * cd /root/Shawn/load_balance_app1/5000/app1; git pull >> /root/Shawn/log/app1/git/5000;

# app1

## pull log
10 2 * * * cd /root/Shawn/log/app1/git/;bzip2 --small --best 5000; mv 5000.bz2 `date '+%Y-%m-%d-%H-%M-%S'`5000.bz2;

mysql命令行连接 导入文件

mysql -h rm-wz96uncs.com -u root--password="4fbb" < db_schema/links-db-schema.sql

bash_action的更多相关文章

随机推荐

  1. OsCache MemCached EhCache

    Memcache:分布式内存对象缓存系统,占用其他机子的内存.很多互联网,负载均衡三台(以三台为例)web服务器可以共享一台Memcache的资源.传递的信息以键值对的形式存储.传递的数据要实现序列化 ...

  2. The Closest M Points BZOJ 3053

    The Closest M Points [问题描述] 软工学院的课程很讨厌!ZLC同志遇到了一个头疼的问题:在K维空间里面有许多的点,对于某些给定的点,ZLC需要找到和它最近的m个点. (这里的距离 ...

  3. MySQL 中 key, primary key ,unique key,index的区别

    一.key与primary key区别 CREATE TABLE wh_logrecord ( logrecord_id int(11) NOT NULL auto_increment, user_n ...

  4. Spring 3.0 注解

    原文 :http://www.blogjava.net/ashutc/archive/2011/04/14/348270.html 另两 参考博客 : http://kingtai168.iteye. ...

  5. 三国武将查询系统 //Java 访问 数据库

    import java.awt.*; import javax.swing.*; import java.awt.event.ActionListener; import java.awt.event ...

  6. WEB学习-HTML的基本语法特性

    HTML对换行不敏感,对tab不敏感 HTML只在乎标签的嵌套结构,嵌套的关系.谁嵌套了谁,谁被谁嵌套了,和换行.tab无关. 换不换行.tab不tab,都不影响页面的结构. 所以: • <di ...

  7. mysql date_add日期函数的使用

    select date_add(CURRENT_DATE()-day(CURRENT_DATE())+1,interval 3 month);##my sql 获取三个月之后的第一天日期select  ...

  8. AC日记——最大子段和 洛谷 P1115

    题目描述 给出一段序列,选出其中连续且非空的一段使得这段和最大. 输入输出格式 输入格式: 输入文件maxsum1.in的第一行是一个正整数N,表示了序列的长度. 第2行包含N个绝对值不大于10000 ...

  9. vue之组件理解(一)

    组件是可复用的 Vue 实例,所以它们与 new Vue 接收相同的选项,例如 data.computed.watch.methods 以及生命周期钩子等.仅有的例外是像 el 这样根实例特有的选项. ...

  10. Codeforces 959 E Mahmoud and Ehab and the xor-MST

    Discription Ehab is interested in the bitwise-xor operation and the special graphs. Mahmoud gave him ...