shell编程/【win/linux】其他相关的记录

1. 获取命令执行的返回值

同下?


2. 获取脚本执行的返回值

#!/bin/bash
echo "A test."
exit 0

执行脚本后,echo $?,打印出:0


3. linux下后台执行程序

windows上面用start 命令 并且指定/b 选项(如果有log输出,后面加上重定位,如,2>log即可), linux下在命令后面加上& 符号


4. strip的作用?

strip处理过后,将去掉其中的调试信息,执行文 件大小也将小很多。命令如下: 
# arm-linux-strip ffmpeg


5. 递归统计目录与文件的个数,该函数来自网络

readsub () {
  if [ -f $1 -o "$(ls $1)" = "" ]; then
    ((n++)) #recursion outdoor
  else
    ((n++))
    for file in $(ls $1)
    do
      readsub $1/$file #begin recursion
  fi
}
#文件时为出口,目录作为参数进入递归,还可以用find

6. 从svn中取出最新revision号

#SVN_DIR为svn url
`svn info $SVN_DIR| grep Revision: | awk '{print $2}'`
`svn up|grep revision|awk -F' ' '{ print $3 }'|awk -F'.' '{print $1}'`

#上面两个得到的号,其实相当于手动操作上update看到的最新revision号,并非最新代码对应的号,打印出`svn info $SVN_DIR`
#可以看到,可能需要的是'Last Changed Rev:'后面的号码。

7. sh -x 来调试脚本。

8. shell脚本中echo显示内容带颜色显示,echo显示带颜色,需要使用参数-e

9. windows下结束进程

tskill PID

task manager 手动结束

ntsd -c q -p PID 【windows自带的工具,help看详细】

这几个结束进程,结果现象不大相同,还不明白其原理。。






你可能感兴趣的:(shell,shell,shell)