欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

linux系統(tǒng)下用.sh文件執(zhí)行python命令的方法

 更新時(shí)間:2022年07月27日 15:11:38   作者:xiyou__  
這篇文章主要給大家介紹了關(guān)于linux系統(tǒng)下用.sh文件執(zhí)行python命令的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

標(biāo)準(zhǔn)版

假設(shè),在終端要執(zhí)行的命令是:

python main.py

首先在執(zhí)行目錄下創(chuàng)建test.sh(文件名自定義)文件

并在test.sh文件中寫入:

python main.py

保存。

======================== 經(jīng)實(shí)踐 下面這一步可省 =================================

在終端執(zhí)行:

chmod a+x test.sh

以上命令使test.sh成為可執(zhí)行文件。

======================== 經(jīng)實(shí)踐 上面這一步可省 =================================

再在終端執(zhí)行:

bash test.sh

即可用bash命令執(zhí)行python main.py。

進(jìn)階版

在.sh文件中輸入更多內(nèi)容實(shí)現(xiàn)調(diào)參過(guò)程,具體語(yǔ)法參考shell指令。

1 for循環(huán)

將test.sh 文件中的內(nèi)容改為:

for num in 1 2 3 4 5 6 7 8 9 10
do
    python main.py
done

再在終端執(zhí)行:

sh test.sh

以上代碼可以實(shí)現(xiàn)將python main.py循環(huán)執(zhí)行10次。

假設(shè)main.py是可以輸入?yún)?shù)的:

python main.py --epoches 5

以上命令代表可以指定main.py中epoches的大小。

于是,可以通過(guò)修改.sh文件的內(nèi)容實(shí)現(xiàn)調(diào)參(其中,$表示引用變量的值):

for num in 1 2 3 4 5 6 7 8 9 10
do
    python main.py --epoches $num
done

以上代碼可以使python main.py在epoches在1~10的范圍內(nèi)都跑一遍。

2 嵌套for循環(huán)

同時(shí)對(duì)epoches和learning_rate進(jìn)行調(diào)整:

for num in 2 3 4 5 6 7 8 9 10
do
    for b in 3e-5 2e-5 1e-5 5e-6 3e-6 2e-6 1e-6
        do
            python main.py --epoches $num --learning_rate $b
        done
done

3 定義變量名

要將運(yùn)行結(jié)果保存到指定文件,文件名由變量名決定,假設(shè)原命令:

python main.py --epoches 5 --learning_rate 5e-5 --log log.txt

修改test.sh文件如下:

for num in 2 3 4 5 6 7 8 9 10
do
    for b in 3e-5 2e-5 1e-5 5e-6 3e-6 2e-6 1e-6
        do
            python main.py --epoches $num --learning_rate $b --log ${num}$b.txt
        done
done

此時(shí)log文件名有num和b組成,eg.,23e-5.txt

養(yǎng)成好的書寫習(xí)慣,變量名用{}引起來(lái)。

4 寫if函數(shù)

if函數(shù)的語(yǔ)法如下:

if [ ${a} == "a" ] && [ $ == "b" ]; then
echo "pass"
fi

多層if函數(shù):

if [ ${a} == "a" ] && [ $ == "b" ] ; then
echo "pass"
elif [ ${a} == "b" ] && [ $ == "a" ] ; then
echo "pass"
else
echo "pass"

以上語(yǔ)法的幾個(gè)注意事項(xiàng):

  • []和內(nèi)部的語(yǔ)句要用空格分開(kāi),不能連在一起
  • 結(jié)尾fi和開(kāi)頭的if是對(duì)應(yīng)的,不能省略
  • echo部分可以換為任何想執(zhí)行的程序
  • 在一段連續(xù)的執(zhí)行命令之間,不可以都注釋語(yǔ)句,會(huì)報(bào)錯(cuò),例如如下情況

總結(jié)

到此這篇關(guān)于linux系統(tǒng)下用.sh文件執(zhí)行python命令的文章就介紹到這了,更多相關(guān)linux .sh文件執(zhí)行python內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論