一.文件比较运算符 1. e filename 如果 filename存在,则为真 如: [ -e /var/log/syslog ] 2. -d filename 如果 filename为目录,则为真 如: [ -d /tmp/mydir ] 3. -f filename 如果 filename为常规文件,则为真 如: [ -f /usr/bin/grep ] 4. -L filename 如果 filename为符号链接,则为真 如: [ -L /usr/bin/grep ] 5. -r f…
文件比较运算符-e filename 如果 filename存在,则为真 [ -e /var/log/syslog ]-d filename 如果 filename为目录,则为真 [ -d /tmp/mydir ]-f filename 如果 filename为常规文件,则为真 [ -f /usr/bin/grep ]-L filename 如果 filename为符号链接,则为真 [ -L /usr/bin/grep ]-r filename 如果 filename可读,则为真 [ -r /v…
linux shell编程,先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程才运行 crontab每分钟执行一次,但5秒以上才有更新数据,有时候一分钟可能跑不完上一个进程,需要先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程(有没有在都执行杀进程的命令)才运行,超过20秒没有执行完成就判断为假死异常了,需要删掉再继续运行.这样各种情况都考虑到了. #!/bin/sh PID=`ps aux | grep lstm_prob.py | awk '{print $2}'` if…
在linux shell 中输入一个命令,如果有多个同名指令,shell需要按照一定规则去取优先级高的一个执行,shell命令的搜索顺序为: 1.别名,使用alias创建的命令. 2.关键字,如if,for. 3.函数 4.内置命令,如cd,pwd等 5.外部命令,在PATH路径中寻找 但问题是,若abcd指令已经配置在PATH中,现在在abcd指令所在的根目录下执行abcd指令, 是先查找查找PATH中的abc指令,还是先查找当前目录下的abcd指令??? 其实这个也很好验证: 安装两个版本的…
目前在准备龙芯项目的PMON,在研究其编译过程的时候,看到一些make 语句,百思不得其解.后来在shell编程中看到一点资料,牵扯到Shell中的正则表达式.故记录下来,以备后来查阅. 问题: 在某个makefile文件中通过include引入某个文件进来 Include $(shell ./getname) 而getname中的内容即为: pwd=$(pwd); if [ "${pwd#*/zloader.}" = "$pwd" ];then echo Make…
shell是一种命令行解释器 对于一般用户,我们不能直接使用操作系统(kernel).而是通过 kernel的"外壳"程序,也就是所谓的shell,来与kernel沟通.    为什么不能直接使用kernel?    从 技 术 角 度 , Shell 的 最 简 单 定 义 : 命 令 行 解 释 器(command Interpreter)主要包含:    a. 将使用者的命令翻译给核心(kernel)处理.    b. 同时,将核心的处理结果翻译给使用者.    对于window…
一.文件比较运算符 1. e filename 如果 filename存在,则为真 如: [ -e /var/log/syslog ] 2. -d filename 如果 filename为目录,则为真 如: [ -d /tmp/mydir ] 3. -f filename 如果 filename为常规文件,则为真 如: [ -f /usr/bin/grep ] 4. -L filename 如果 filename为符号链接,则为真 如: [ -L /usr/bin/grep ] 5. -r f…
这是由于环境变量中有 allias cp='cp -i' 为了去掉这个系统自带的别名,能够使用grep -r --include="*" "alias cp"  /查找设置这个环境变量的脚本文件: 我的ubuntu机器上是: ./.bash_aliases:alias cp='cp -i' 于是我将./.bash_aliases文件里的这句话去掉就可以 然后使用 source ./.bash_aliases 使其马上生效 2014年7月5日11:49:54 www.…
linux shell 指令 诸如-d, -f, -e之类的判断表达式: 文件比较运算符-e filename  如果 filename存在,则为真  [ -e /var/log/syslog ]-d filename  如果 filename为目录,则为真  [ -d /tmp/mydir ]-f filename  如果 filename为常规文件,则为真  [ -f /usr/bin/grep ]-L filename  如果 filename为符号链接,则为真  [ -L /usr/bi…
1,如果创建shell脚本? 使用任意文本编辑软件,一般为vim,创建.sh结尾的文件,在文件的最开头用 #!/bin/bash 注明shell的类型 如: ghostwu@dev:~/linux/shell$ cat how_to_use_shell.sh #!/bin/bash ls / 2,如何执行shell? >把shell文件当做bash的命令行参数 ghostwu@dev:~/linux/shell$ ls -l total -rwxrwxr-x ghostwu ghostwu 5月…