<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                為了方便管理項目,自己寫了一個`main.sh`腳本。根據需要簡單修改即可很好的使用! ```bash #!/usr/bin/env bash cd $(dirname $0) main(){ #LsFileType sh fish DirMenuMain #AutoMenu } #------------------------------ #自動菜單,包含所有文件夾和文件, #按優先級決定執行 #------------------------------ function AutoMenu(){ echo " " echo "++++++++++++++++++ $(basename $PWD) ++++++++++++++++++" local m=$(ls) #未檢測到目標自動執行當前路徑下的run腳本 if [ ${#m} -eq 0 ] || [ -f run ] || [ -f run.sh ] || [ -f run.fish ];then ExecRun exit 0 fi echo "0.退出" DisplayList $m echo "" && read -p "輸入對應菜單的序號:" key if [ $(IsNumber $key) -eq 0 ] ; then test $key -eq 0 && exit 0 local src=$(echo $m |xargs -n1|sed -n ''$key'p') #獲取指定編號的內容 if [ -d $src ] ;then cd $src AutoMenu elif [ -f $src ] ;then echo ">自動執行$src文件" ReadFileTypeAndAutoRun $src exit 0 fi else echo "輸入的不是數字!" fi } #------------------------------ #以文件夾名稱作為菜單名,文件夾下存在 #run/run.sh文件就執行該文件,否則列 #出該目錄下的文件夾名稱作為菜單名 #------------------------------ function DirMenuMain(){ echo " " echo "++++++++++++++++++ $(basename $PWD) ++++++++++++++++++" local m=$(LsDir) #當前路徑下沒有下一級目錄或者當前目錄下存在 run/run.sh/run.fish腳本則自動執行腳本 if [ ${#m} -eq 0 ] || [ -f run ] || [ -f run.sh ] || [ -f run.fish ];then ExecRun exit 0 fi echo "0.退出" DisplayList $m echo "" && read -p "輸入對應菜單的序號:" key if [ $(IsNumber $key) -eq 0 ] ; then test $key -eq 0 && exit 0 local src=$(echo $m |xargs -n1|sed -n ''$key'p') #獲取指定編號的內容 cd $src DirMenuMain else echo "輸入的不是數字!" fi } #------------------------------ #為輸入的對象添加索引并顯示,索引從1 #開始 #@param:輸入的資源 #------------------------------ function DisplayList(){ local idx=1 for i in $* do echo "$idx.${i%.*}" idx=$[idx+1] done } #------------------------------ #列出當前目錄下的所有目錄 #------------------------------ function LsDir() { for i in $(ls) do test -d $i && echo $i done } #------------------------------ #自動執行當前路徑下的特定腳本 #按優先級: #1. run #2. run.sh #3. run.fish #------------------------------ function ExecRun(){ echo "當前路徑為:$PWD" if [ -f run ] ;then echo ">存在run文件,執行run腳本" chmod +x run ./run $* elif [ -f run.sh ]; then echo ">存在run.sh文件,執行run.sh腳本" chmod +x run.sh ./run.sh $* elif [ -f run.fish ]; then echo ">存在run.fish文件,執行run.fish腳本" chmod +x run.sh ./run.sh $* else echo "不存在run或者run.sh腳本" fi } #------------------------------ #列出當前目錄下的所有目錄,最前面 #添加序號 #------------------------------ function LsDirAddIndex() { local idx=1 local arr='' for i in $(ls) do test -d $i && echo "$idx:$i" && idx=$[idx+1] done } #------------------------------ #判斷字符串是否為數字 #@return 0:是 1:不是 #------------------------------ function IsNumber(){ local y=$(echo "$1" | sed 's/[0-9]//g') if [ -z "$y" ];then echo 0 #是數字 else echo 1 #"不是數字" fi } #------------------------------ #文件類型篩選 #列出當前目錄下所有滿足指定后綴的 #文件 #@param:文件后綴 #例如:LsFileType sh fish plt #------------------------------ function LsFileType(){ local src="" for i in $* do find . -maxdepth 1 -type f -name "*.$i" done } #----------------------------------------- #函數名:ReadIni #功能:讀取ini文件 #@param1:ini文件路徑 #@param2:Section #@param3:Option #例如:ReadIni test.ini s2 Path #----------------------------------------- function ReadIni(){ fid=$1 section=$2 option=$3 test ! -f $fid && echo "不存在文件$fid" && exit 2 if [ $# -eq 3 ] ; then cat $fid | awk '/\['$section'\]/{f=1;next} /\[*\]/{f=0} f' | #找出section下的所有內容 grep $option | # 匹配option的行 grep '=' | # 看看是不是存在= cut -d'=' -f2| # 獲取對應的值 cut -d'#' -f1| # 去除注釋 cut -d';' -f1| #去除注釋 awk '{gsub(/^\s+|\s+$/, "");print}' #去掉最前面的空格 fi } #------------------------------ #自動根據文件后綴選擇執行方式 #@param1:指定的文件 #------------------------------ function ReadFileTypeAndAutoRun(){ test ! -f $1 && echo "不存在$1文件" && exit 2 local srcpath=$(readlink -f $1) cd $(dirname $srcpath) local dst=$(date +%Y%m%d%H%M%S.mgo) #臨時文件 chmod +x $(basename $srcpath) 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 * ) echo "Fuck! I don't konw what it is!" ;; esac test -f $dst && rm $dst &>/dev/null } main $* ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看