
shell
xzw_123
这个作者很懒,什么都没留下…
展开
-
shell初学笔记(1)
换了工作,做数据工作,需要用到shell、java、hadoop等知识。我以前几乎没怎么接触过这块的知识,经过一周的学习,特此总结一下,希望对看这篇文章的人有一些帮助。我几乎都是在网上看博客、百度等学习的,以下是我的参考的一些网址:1、首先,shell中Unix命令的使用。echo、rm、cat、wc等等常用的命令,参考Linux Shell编程基础教程1(转载)。其中还包括循环、判断等语原创 2014-03-14 16:49:57 · 586 阅读 · 0 评论 -
shell脚本执行返回的状态码
Linux下一条命令或一个进程执行完成会返回一个一个状态码。0 === 成功执行非0 === 执行过程中出现异常或非正常退出在Shell脚本中 最后执行的一条命令将决定整个shell脚本的状态. 此外 shell的内部命令exit也可以随时终止shell脚本的执行,返回Shell脚本的状态码当shell脚本执行结束前 的最后一个命令是不带参数的exit ,转载 2015-09-15 16:48:02 · 1909 阅读 · 0 评论 -
Shell脚本处理“integer expression expected”
Shell脚本里,在用 test 的参数作比较的时候,如“ [ $temp -gt "100" ]”,可能会出现如题的“integer expression expected”错误。这是因为test 的这几个参数: -gt ,-lt,-eq 比较的都是数字,因此变量temp如果是一个字符串的话就会出现上述错误了。将原句改为“ [ $temp -gt 100 ]” 结果也是一样的。解决这个问转载 2015-09-15 16:45:16 · 7190 阅读 · 0 评论 -
Expect: send's 256 character limitation
使用except时,如果send字符串比较多的时候,就会报以下错误:Expect: send's 256 character limitation解决方法是文本前面添加set stty_init raw这样就能解决一次性传输大量字符串的问题相关链接:点击打开链接转载 2015-08-26 10:15:57 · 385 阅读 · 0 评论 -
修改Linux文件的属性与权限
1、chgrp:改变文件所属用户组。命令格式为:chgrp 用户名 文件或目录。2、chown:改变文件所有者。命令格式为:chown 所有者 文件或目录。3、chmod:改变文件的权限。命令格式为:chmod 权限属性 文件或目录。查看三个命令的具体用法,这里可以借助【man】命令,查看chgrp、chown、chmod的相关参数与具体用法。转载 2015-06-04 11:22:06 · 482 阅读 · 0 评论 -
用nohup执行python程序时,print无法输出
nohup python test.py > nohup.out 2>&1 &发现nohup.out中显示不出来python程序中print的东西。这是因为python的输出有缓冲,导致nohup.out并不能够马上看到输出。python 有个-u参数,使得python不启用缓冲。nohup python -u test.py > nohup.out 2>&1 &转载 2015-03-23 18:03:53 · 1006 阅读 · 0 评论 -
linux输出数字含义
0 – stdin (standard input),1 – stdout (standard output),2 – stderr (standard error)原创 2015-03-23 18:05:51 · 723 阅读 · 0 评论 -
linux grep和sed搜索大文件中的错误日志
通常我们通过关键字找错误日志的时候,日志并不是每行都匹配,这样就会显示出部分日志,如下面搜索cat mylog|grep -n XXXAction的结果:10009875:2015-02-26 14:12:13 com.interfaces.XXXAction:134 [INFO] - get list from:****,cost:92ms10009878: at com.i原创 2015-02-26 14:28:51 · 5035 阅读 · 0 评论 -
shell除法显示小数
shell计算中使用除法,基本默认上都是整除。比如:num1=2num2=3num3=`expr $num1 / $num2`这个时候num3=0 ,是因为是因为expr不支持浮点除法解决的方法:num3=`echo "sclae=2; $num1/$num2" | bc`使用bc工具,sclae控制小数点后保留几位还有一种方法awk 'BEGIN{prin转载 2015-01-05 15:50:43 · 23467 阅读 · 3 评论 -
当while遇到重定向----sh的陷阱
当使用while读取文件时,可能出现while循环中读取正常,而数值确传不出去,不论是局部变量和全局变量。错误代码如下:(file是文件的名字)cat file|while read LINEdo count=`expr $count + 1`doneecho $count解决方法如下:可以先关闭标准输入,然后以你要读取得文件重新打开它,这样就不需要对while命令的输入进行改转载 2015-01-05 15:30:41 · 584 阅读 · 0 评论 -
bash快捷建-光标移到行首、行尾等
ctrl键组合ctrl+a:光标移到行首。ctrl+b:光标左移一个字母ctrl+c:杀死当前进程。ctrl+d:退出当前 Shell。ctrl+e:光标移到行尾。ctrl+h:删除光标前一个字符,同 backspace 键相同。ctrl+k:清除光标后至行尾的内容。ctrl+l:清屏,相当于clear。ctrl+r:搜索之前打过的命令。会有一个提示,根据你输入转载 2015-01-21 16:33:19 · 1309 阅读 · 0 评论 -
shell split字符串的几种方法
在shell 中以 , split 字符串如下str="aaa,bbb,ccc,ddd"1)echo $str |awk -F, '{print $1}' 或者是echo $str|cut -d"," -f1 都能达到目的,但是由于文件很大,有很多行,上述方式需要开辟管道,会启动新进程,效率很低下。 2)arr=(${str//,/转载 2015-01-20 16:40:56 · 66065 阅读 · 1 评论 -
shell判断输入变量或者参数是否为空
判断变量为空1、if [ ! -n "$word" ] ;then echo "you have not input a word"else echo "the word you input is $word"fi2、直接判断if [ ! "$word" ] ;then echo "you have not input a word"else原创 2015-01-20 17:23:50 · 20606 阅读 · 0 评论 -
shell中map的使用和遍历
定义一个空mapdeclare -A map=()定义时初始化mapdeclare -A map=(["100"]="1" ["200"]="2")输出所有keyecho ${!map[@]}输出所有valueecho ${map[@]}添加值map["300"]="3"输出key对应的值echo ${map["100"]}遍历mapfor key in ${!map[原创 2015-01-20 16:54:42 · 40547 阅读 · 1 评论 -
Shell使用date对输入时间进行加减
当对系统时间进行加减时date -d "20140407 22 -3 hour" +%Y%m%d%Hdate -d "20140407 22 -3 hour" +%Y%m%d%H原创 2014-04-18 15:54:18 · 7866 阅读 · 0 评论 -
shell批量注释
shell注释一行使用“#”就可以,但是多行的话就不行了。批量注释的话,一般有两种:1、使用if语句if [ false ]; then 注释语句fi2、使用:参考文章:shell批量注释:MULTILINECOMMENT...注释的内容...注释的内容MULTILINECOMMENT其中,MULTILINECOMMENT可以随意命名,只要原创 2014-03-19 14:18:03 · 1148 阅读 · 0 评论 -
/usr/bin/expect: bad interpreter: No such file or directory
在java中执行expect的文件时,报错如下java.io.IOException: Cannot run program "/usr/local/tomcat/task/shell/1505978794583.sh": error=2, No such file or directory at java.lang.ProcessBuilder.start(Process原创 2017-09-21 15:59:05 · 18051 阅读 · 0 评论