linux查询自动脚本,根据文件类型自动执行脚本

希望根据文件类型的不同,自动执行不同指令的脚本。

`mgo`

```shell

#!/usr/bin/env bash

#-----------------------------------------------

# Author : hpy

# Emal : yuan_hp@qq.com

#

# auto run some file! for example bash,fish,tcl,

# python, cpp, gnuplot and so on

#-----------------------------------------------

dst=$(date +%Y%m%d%H%M%S.mgo) #临时文件

function main(){

DefautRun $*

test ! -f $1 && echo "不存在 $1 文件" | cat && exit

ReadFileType $1 | cat #cat显示是为了在win上不乱码

}

#带有参数,则识别第一个参数,并根据文件不同类型选择后续操作

function ReadFileType(){

case $1 in

*.sh | *.fish | *.pl | *.tcl | *.tk | *.py | *.lua) chmod +x $1 && ./$1 ;;

*.c) gcc -o $dst $1 && chmod +x $dst && ./$dst;;

*.cpp) g++ -std=c++11 -o $dst $1 && chmod +x $dst && ./$dst;;

*.go ) go build -o $dst $1 && chmod +x $dst && ./$dst ;;

*.plt) gnuplot $1 ;; #gnuplot

*.m) cd $(dirname $1) && dst=$(basename $1) && dst=${dst%%.*}&& matlab -nosplash -nodesktop -r $dst ;; #matlab文件

* ) echo "Fuck! I don't konw what it is!" ;;

esac

test -f $dst && rm $dst &>/dev/null

}

#当不带参数输入时 找run或者run.sh文件运行

function DefautRun(){

if [ -z $* ] ;then

if [ -f run ] ;then

chmod +x run

./run

elif [ -f run.sh ] ; then

chmod +x run.sh

./run.sh

else

echo "Fuck! Fuck! No parameters, no run file or run.sh file, what do you want?"

fi

exit

fi

}

main $*

```

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值