青龙面板支持TS运行的方法教程



前言:部分大佬的库脚本是TS后缀,青龙面板并不能支持运行,经过多次测试,搞定了,方法如下:(基于青龙2.2)

一:青龙面板添加TS后缀脚本指令,拉库才能拉到TS脚本

打开面板,选择配置文件(config.sh)找到

## ql repo命令拉取脚本时需要拉取的文件后缀,直接写文件后缀名即可
RepoFileExtensions="js py"

修改为:

## ql repo命令拉取脚本时需要拉取的文件后缀,直接写文件后缀名即可
RepoFileExtensions="js py ts"

二:进入服务器后台(连接SSH)

依次输入下面的代码安装依赖:

 docker exec -it QL bash
npm i -g ts-node typescript @types/node date-fns axios

依赖安装完成后再修改青龙task.sh支持ts-node运行方式

依次输入下面的代码完成修改:

docker exec -it QL bash
cd shell/   
nano task.sh    #如果提示没有nano 可以执行 apk add nano或者使用vi task.sh
找到define_program,修改成如下,保存(按ctrl+x 输入Y或者X Y保存 X不保存)
define_program() {
    local p1=$1
    if [[ $p1 == *.js ]]; then
        which_program="node"
    elif [[ $p1 == *.py ]]; then
        which_program="python3"
    elif [[ $p1 == *.ts ]]; then
        which_program="ts-node"
    elif [[ $p1 == *.sh ]]; then
        which_program="bash"
    else
        which_program=""
    fi
}

到这里,就可以直接在面板运行task test.ts脚本啦!

下面附一些其他的方法以及依赖:

运行ts方式
1.全局安装ts-node
npm install ts-node -g --save --unsafe-perm=true --allow-root
2.运行ts脚本看报错
ts-node xxx.ts
3.看报错信息确认到底需要哪些依赖,安装相应依赖,目前发现有typescript,fs,axios
npm install typescript
npm install fs
npm install axios
4.再运行相应脚本,一般会成功了
ts-node xxxx.ts

依赖:
npm install date-fns
npm install require
npm i –save-dev @types/node
npm install tslib
cd /ql/scripts/
ql repo https://github.com/JDHelloWorld/jd_scripts.git "jd_|jx_|getJDCookie" "activity|backUp|Coupon|enen" "^jd[^_]|USER"
cp /ql/repo/JDHelloWorld_jd_scripts/package.json .
npm i
npm i -g ts-node typescript @types/node date-fns axios
tsc JDHelloWorld_jd_scripts_jd_cfd.ts
task JDHelloWorld_jd_scripts_jd_cfd.js now

 

支付宝扫码打赏 微信打赏

如果我的文章对你有帮助,欢迎移至上方按钮打赏

© 版权声明
THE END
点赞8
分享