shell
xiao_jun_0820
要自己每天都开心,不要烦恼
忘掉压力,天天好心情
展开
-
cygwin 执行shell脚本时出现出现语法异常,连最基本的if 控制都解析不了的原因
今天在学习shell脚本,然后网上抄了一段简单的脚本如下:#!/bin/bashcygwin=true# 对变量赋值:a="hello world" #等号两边均不能有空格存在# 打印变量a的值:if $cygwin; then echo "A is:" $aficygwin 执行shell脚本时出现语法异常,连最基本的if 控制都解析不了的原因是脚本文件是原创 2012-08-03 09:41:51 · 3558 阅读 · 0 评论 -
shell 读取文件大小
1 ls -al filename 可以查看到文件字节数2 du -sh filename 可以查看文件以M显示的大小原创 2012-08-07 10:06:14 · 10827 阅读 · 0 评论 -
linux 邮件操作
在 linux 中输入 mail, 就进入了收件箱。 d 删除当前邮件,指针并下移。 d 3 删除编号为 3 的邮件。 d 1-100 删除编号第 1 到 100 封邮件。 退出的时候需要注意,一定要用 q 命令来保存之前的操作。 q 退出mail命令平台,保存之前的操作,比如删除已用d删除的邮件,已阅读邮件会转存到当前用户家目录下的mbo转载 2012-08-07 14:57:02 · 658 阅读 · 0 评论 -
JAVA后台定时作业在linux系统上发布时遇到的问题
这几天在linux上发布了一个JAVA的定时JOB程序,每天凌晨2点开始跑增量更新搜索引擎索引库,但是每次第二天早上用SSH登陆服务器上去ps -ef |grep StartTimer查找我的定时作业的进程(StartTimer是我的定时程序的主程序入口点的类名),结果进程都不在了,很是纳闷,我写了一个Start.sh脚本用来启动这个JOB的,直接CD到JOB目录,然后 sudo ./Start.原创 2012-11-20 10:25:26 · 1347 阅读 · 0 评论 -
java 远程调用shell脚本demo
首先添加依赖: org.jvnet.hudson ganymed-ssh2 build210-hudson-1原创 2014-05-19 15:48:29 · 17304 阅读 · 3 评论 -
linux bash中的三目运算符
对于三目运算符大家一般都很熟悉,java中的写法是 a==b?c:d 当a==b时为c否则为d在linux bash中用 “:-”来表示,如:export HADOOP_HOME=${HADOOP_HOME:-$LIB_DIR/hadoop}我们在hadoop的相关脚本中容易看到这句,意思就是如果你有自己指定环境变量$HADOOP_HOME,那么就用你指定的,否则就取$LIB_DIR原创 2014-12-23 13:07:14 · 17200 阅读 · 2 评论 -
利用PuTTY的SSH Tunnels实现安全的代理
利用PuTTY的SSH Tunnels实现安全的代理1 Comment五月 28, 2011by 大漠标签:Putty使用 , SSH代理安全外壳协议(Secure Shell Protocol / SSH)是一种在不安全网络上提供安全远程登录及其它安全网络服务的协议。最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。常用的SSH工具有开转载 2015-03-27 14:38:42 · 27379 阅读 · 0 评论 -
写了2个简单的工具脚本用来分发hdfs集群上的文件到所有节点,和远程执行命令
#!/bin/bashif [ $# != 2 ]; then echo "useage: $0 " exit 1fiCURR_PATH="$(cd "`dirname "$0"`"/; pwd)"hosts_file=$CURR_PATH"/hosts"if [ ! -f "$hosts_file" ]; then echo "$hosts_file n原创 2015-04-01 15:49:40 · 2311 阅读 · 0 评论 -
shell同步目录
n1上更新了/opt/spark目录下面的内容,同步到n2,n3,n4上去同步目录rsync -varcl --exclude=logs /opt/spark /opt/spark-1.4.0-bin-cdh5.3.0 root@n2:/optrsync -varcl --exclude=logs /opt/spark /opt/spark-1.4.0-bin-cdh5.3.0 roo原创 2015-07-07 15:04:56 · 2019 阅读 · 0 评论 -
shell 函数和source命令用法
source命令可以在一个脚本里载入另一个脚本,下面举个例子:首先我们定义了一个函数脚本,名字叫myfunc.sh ,如下:#!/bin/bashfunction square{ local temp let temp=$1*$1 echo "$1的平方和为:$temp" }function cube{ local temp原创 2012-08-06 14:44:49 · 4214 阅读 · 0 评论 -
shell 总结之特殊变量:位置变量 $1 ,$* ,$?
$1表示第一个参数,$*表示用户输入的所有参数hello1脚本如下,可以接受一个位置参数#!/bin/bashecho $1 运行脚本: ./hello1 "hello world" 屏幕上输出 hello world hello2 脚本如下,循环读取用户的所有输入参数并在屏幕上显示#!/bin/bashfor var in $* ; do echo "yo原创 2012-08-06 11:21:48 · 1087 阅读 · 0 评论 -
给PATH环境变量增加自己的命令搜索路径
export PATH=$PATH:~/bin #命令搜索路径加上~/binexport PATH=$PATH:. #给命令搜索路径加上当前目录, '.' 代表当前目录这时你可以编写一个shell脚本扔在~/bin 目录下,比如我编写了一个myecho脚本:#!/bin/bashecho $1 然后把这个脚本仍在~/bin目录下,这时候直接可以在任何目录下原创 2012-08-05 20:05:22 · 2518 阅读 · 0 评论 -
shell 解压脚本
case表达式可以用来匹配一个给定的字符串,而不是数字(可别和C语言里的switch...case混淆)。 case ... in ...) do something here esacfile命令可以辨别出一个给定文件的文件类型,如:file lf.gz,其输出结果为: lf.gz: gzip compressed data, deflated, original f转载 2012-08-03 13:51:08 · 4420 阅读 · 0 评论 -
linux shell ftp上传下载操作
ftp -i -v -n <<EOFopen 192.168.65.1 8888user admin 123456cd /adminlcd D:/shell/dataget "data.zip"byeEOFftp下载,open ip port是连接服务器,user username password是登陆,cd /admin是cd到FTP服务器下面的admin目录下原创 2012-08-03 18:48:21 · 6214 阅读 · 0 评论 -
shell ftp mget
#!/bin/bashftp -n <<EOFopen 192.168.1.103 8888user admin 123456cd /admin#lslcd d:/ftpdownloadprompt offmget /admin closebyeEOFprompt off 关闭交互模式,以免mget的时候每传一个文件都要确定一次,将远程FTP服务原创 2012-08-04 14:59:20 · 4670 阅读 · 0 评论 -
unix 文件操作
1. touch filename 修改文件的最后更新时间,如果文件不存在的话则会创建文件2. echo "hello" > filename 往filename里写入hello,如果filename 里原来有内容将会被覆盖3. 用 ">"往文件里写内容(覆盖原始内容),用"ls > filelist,把当前目录下的文件名都写入到filelist这个文件中去。sort 4. ca原创 2012-08-04 18:15:26 · 660 阅读 · 0 评论 -
操作目录栈
Bourne Again和TC Shell都允许用户将其正在使用的目录列表存放起来,这样就可以在这些目录之间轻易移动。这个目录列表称为栈。它模拟了餐厅所用的盘子:一般将盘子放到栈的顶部或者从栈的顶部取盘子,这就创建了一个先入后出(FILO)的栈。 dirs 显示目录栈中当前的列表,如果当目录栈是空的时候调用dirs,它将显示工作目录的名字。 pushd将目录压入栈,popd 将目录原创 2012-08-05 16:08:31 · 904 阅读 · 0 评论 -
shell 总结之 select表达式和for 循环
select 表达式是一种bash的扩展应用,尤其擅长于交互式使用。用户可以从一组不同的值中进行选择。 select var in ... ; do breakdone.... now $var can be used ....下面是一个例子:#!/bin/shecho "What is your favourite OS?"select var in "Linux原创 2012-08-06 11:11:07 · 1733 阅读 · 0 评论 -
shell 函数的定义和使用
#!/bin/bashfunction whoson(){ date echo "current users" who}whoson 定义了一个函数名字叫whoson,以后可以调用whoson来输出当前时间和当前用户列表。定义函数输入参数,可以使用位置变量:function whoson(){原创 2012-08-05 22:43:22 · 658 阅读 · 0 评论 -
shell read 指令作用
read可以读入用户输入到一个变量中,如:read age此时用户可以输入,输入完之后,输入的内容被赋值给了age变量,这时我们用echo $age,可以输出当时赋值给age的值。#!/bin/bashecho "how old are you?"read ageif [ $age -gt 60 ]; then echo "oh you are too old";e原创 2012-08-06 00:09:08 · 628 阅读 · 0 评论 -
shell执行scala脚本
新建一个helloworld.sh如下:#!/bin/shexec scala "$0" "$@"!#case class Person(name:String)object HelloWorld { def main(args:Array[String]){ require(args.length==1) val al = Per原创 2015-03-26 17:37:11 · 9341 阅读 · 0 评论