1. 放置在/usr/local/sbin下面;
  2. 收到一个问题:"-bash XXX 没有权限";需要在此目录下执行chmod +x filename
  3. 收到一个问题:"-bash XXX ^M: bad interpreter: 没有那个文件或目录";vi -filename-> :set ff?会看到dos/unix,如果是前者,那么就需要:set fileformat=unix;最后不要忘记:wq!保存哦;如果为了方便,可以每次都从Linux中下载文件到windows系统进行编辑;否则如果是纯windows文件,每次覆盖都需如此转换文件格式为unix;
  4. 首行"PATH="/data/jstack"`date -d "today" +"%m%d%H%m.txt"`"总是报:": command not found:",后来在文件头部增加了"#!bin/sh"之后即可;
  5. 在使用date来获取时间的时候,m代表月份;M代表分钟; s代表从公元前XX到现在的秒数;S代表秒
  6. 注意在if脚本里面[]的空格很重要;一定要保持里面的条件和左右中括号有一个空格的距离;
  7. 注意在if关键字和[]之间也需要空格;
  8. 但是,与之类似,赋值的等号前后不能有空格;
  9. 追加的方式重定向文件,第一个一定是要">",之后的才是">>"。
  10. 定义变量名称需要注意不要叫"PATH"之类的可能和系统变量名称重复的名字;可以通过添加前缀、大小写等方式来进行规避,比如"MyPath"等等。
  11. 对于两个命令,如果想要等待其中一个执行完毕再执行第二个,需要使用"&&"或者分号";"做连接,如此则表示只有前一个执行完毕了才会执行第二个; 上一个执行结果查看的命令是$?,只有返回值为0才代表执行成功;可以在命令行中敲"echo $?"就可以看到
  12. 对于参数切记是双引号包含$1,如果是单引号'$1'怎会被认为是字符串,只有双引号"$1"才会被解析为参数值;

.eg一个:

#!/bin/sh

if [ "$1" == "" ]; then

echo "Please input port num!"

else

Path="/data/status"`date -d "today" +"%m%d%H%M%S.txt"`

echo "--------------------Total Count Info---------------------" > "$Path"

TotalCount=`netstat -anp | grep -i 56801 | wc -l`

echo "$TotalCount" >> "$Path"

echo "Total Count: $TotalCount"

echo "" (换行)

echo "--------------------jStack Info---------------------" >> "$Path"

/var/jdk1.6.0_33/bin/jstack -l "$1" >> "$Path"

echo "[jstack]port:$1; path: $Path"

fi

Linux脚本的更多相关文章

  1. Linux 脚本编写基础

    txt去重    http://man.linuxde.net/sort Linux 脚本编写基础 http://www.cnblogs.com/linn/archive/2007/03/05/664 ...

  2. 【转】【整理】将Linux脚本中的正常输出,警告,错误等信息输出到文件中

     本文来自:http://blog.csdn.net/woshinia/article/details/18040063   很早以前  编译的时候 就在用 2>&1,但是一直没有生成一 ...

  3. linux脚本编程(shell)浅介 (转载)

    linux脚本(shell)编程 啊,昨天上网看到一篇讲 linux/unix shell 的文章,想想自己最后写这东西也是一年前的事了,想想都快忘光了. 还是整理一下,做一次回顾,以后说不定还用得上 ...

  4. linux脚本编程技术

    linux脚本编程技术 一.什么是脚本 脚本是一个包含一系列命令序列的可执行(777)文本文件.当运行这个脚本文件时,文件中包含的命令序列将得到自动执行. 二.脚本编程 #!/bin/sh 首行固定格 ...

  5. Linux脚本执行过程重定向

    Linux脚本执行过程重定向 一.bash调试脚本,并将执行过程重定向到指定文件 bash –x  shell.sh 2>&1 | tee shell.log

  6. linux 脚本编写基础(一)

    1. Linux 脚本编写基础 1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序.在 ...

  7. linux脚本初体验

    前言 第一次写linux脚本,有点紧张. 1. 写一个寻找特定用户的脚本文件? #! /bin/sh who | grep $1 其中脚本第一行用来告诉kernel去使用/bin/sh来解释这个脚本: ...

  8. Linux脚本入门(1)

    1. Linux 脚本编写基础1.1 语法基本介绍1.1.1 开头程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序.在这个例 ...

  9. Linux脚本shell字符串处理

    Linux脚本shell字符串处理,基本都有了,看着搜吧 TLDP教堂 shell中if条件字符串.数字比对,[[ ]]和[ ]区别 Linux 之 shell 比较运算符 Linux Shell编程 ...

  10. centos shell编程4【分发系统】 服务器标准化 mkpasswd 生成密码的工具 expect讲解 expect传递参数 expect自动同步文件 expect指定host和要同步的文件 expect文件分发系统 expect自动发送密钥脚本 Linux脚本执行方式 第三十八节课

    centos shell编程4[分发系统] 服务器标准化  mkpasswd 生成密码的工具  expect讲解   expect传递参数   expect自动同步文件  expect指定host和要 ...

随机推荐

  1. Jsp学习(2)

    Jsp的三大指令 (1).include 作用:相当于把当前页面去包含页面 语法: <%@include file="/common/test.jsp" %> 实例如下 ...

  2. Redis集群服务器-高可用调研随笔[转]

    今天改了一天的Bug,本想下午开始专研Redis命令集,结果也泡汤了.只能在下班的路上考虑下Redis集群服务器的高可用方案.随笔而已,尚未成型,仅作记录. 当然,我说的可能比较片面,欢迎拍砖.斧正. ...

  3. Java中NaN和-0.0f的比较问题

    简单的说,比较两个int型或long型的数据没有什么问题,可以用==来判断,但对浮点数(float与double)来说,需要对Float.NaN和0.0这个两个特殊数字作额外的处理.Float.NaN ...

  4. C++之枚举

    1. 声明枚举类型格式 enum Day{ Mon,Tue=5,Wed};//Mon=0;Tue=5;Wed=6 enumDay1{Mon1,Tue1,Wed1};//Mon1=0;Tue1=1;We ...

  5. 标准差(standard deviation)和标准误差(standard error)你能解释清楚吗?

    by:ysuncn(欢迎转载,请注明原创信息) 什么是标准差(standard deviation)呢?依据国际标准化组织(ISO)的定义:标准差σ是方差σ2的正平方根:而方差是随机变量期望的二次偏差 ...

  6. Linux命令之ssh

    一. 配置ssh 1. 命令 ssh-keygen [选项] 2. 说明 用于为“ssh”生成.管理和转换认证密钥,它支持RSA和DSA两种认证密钥 3. 选项 -C:添加注释 -f:指定用来保存密钥 ...

  7. Python爬虫获取知乎图片

    前段时间想抓点知乎问题中的图片,了解了下爬虫,发现还是Python的简单方便,于是做了点尝试. #coding=utf-8 import urllib import re def getHtml(ur ...

  8. Class Fxp\Composer\AssetPlugin\Repository\NpmRepository does not exist

    使用 composer 安装 laravel 时报错, 如下: [ReflectionException] Class Fxp\Composer\AssetPlugin\Repository\NpmR ...

  9. RedHat7搭建无人值守自动安装Linux操作系统(PXE+Kickstart)

    Kickstart服务器 IP: 192.168.136.253   掩码:255.255.255.0   网关:192.168.136.2   DNS:192.168.136.2 安装部署HTTP服 ...

  10. linux下的oracle数据库和表空间的导入导出

    由于oracle是安装在linux上面,因此需要oracle的导入导出都是使用命令进行操作.oracle允许整个数据库导入导出和表空间的导入导出. 数据库导入导出 以下操作是在操作系统控制台命令中执行 ...