日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux怎么用两个进程传值,关于linux:将变量脚本参数传递给另一个脚本,然后将qsub传递给程序...

發布時間:2024/8/1 linux 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux怎么用两个进程传值,关于linux:将变量脚本参数传递给另一个脚本,然后将qsub传递给程序... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在閱讀了大量的bash腳本線程和幫助站點之后,我找不到一個有效的解決方案。

我想把一個變量參數'i'從一個腳本傳遞到另一個腳本$i,然后qsub它到一個程序"$1"。在程序中,我從參數向量(**argv)中讀取變量,然后使用該變量將輸出文件的名稱修改為*0、*1、*2、…、*N。

這樣我就可以為程序的每個實例都有一個唯一的輸出文件。這個程序是并行的,但是由于計算資源的限制,我需要提交最多四個計算節點的一個作業,否則它將永遠不會通過Que。所以,我想剝離64個4節點的工作。

到目前為止,我已經閱讀了以下主題:

"-c選項"通過bash腳本向/bin/bash傳遞參數

"傳遞參數"http://linux.about.com/od/bash_腳本編寫解決方案/a/how-to-pass-arguments-to-a-bash-script.htm

"從參數$0或1開始"在Linux中,如何使用終端命令將文件參數傳遞給bash腳本?

"傳遞參數"http://how-to.wiki a.com/wiki/how_to_read_command_line_arguments_a_bash_腳本

我問的問題完全相同,但我的情況下,使用bash腳本中的循環變量來傳遞不同的命令行參數,答案并不適用。

在閱讀了這些之后,我對這個概念感到滿意,但仍然令人困惑的是-c和-s命令究竟是如何使用的,或者它們是否被使用;大多數例子都不包括這些。

這是我的前腳本

#

#$ -cwd

#$ -S /bin/bash

#$ -pe fah 1

for((i=0; i < 2; i++)); do qsub test_S17_script.sh $i; done

旁白:什么是qsub

這是我的劇本

#

#$ -M duser@acme_u.edu

#$ -m bae

#$ -cwd

#$ -S /bin/bash

#$ -pe fah 1

./daedalus_linux_1.3_64 1"$1"

因此,剝離工作正常,并生成文件。而且,腳本可以很好地傳遞常量./daedalus_linux_1.3_64 1 1,但是傳遞變量不起作用。我不知道處方是否正確地將變量i傳遞給腳本。我不知道如何從腳本中寫入錯誤文件,甚至不知道這是否是檢查變量是否被傳遞的方法。計算沒有用戶界面,所以一旦它在隊列中,我就必須依賴錯誤文件輸出。

提前感謝您的幫助。

什么是qsub?有一件事可能有助于診斷這一點,那就是使用set -x并捕獲標準錯誤輸出。

你也可以嘗試用echo $@來確認這些爭論是否通過。

@如果沒有接口——腳本被提交到一個批處理隊列中,所以沒有任何接口,那么Samveen會使用echo $@嗎?

考慮使用PBS作業數組。一個PBS腳本將提交多個作業,并且每個作業將具有不同的環境變量$PBS_array_index值。

如果您希望將標準輸出從處方傳遞到腳本,你可以這樣做:

./daedalus_linux_1.3_64 1 `[cc]`

如果處方在單獨的行上打印for循環(i=0,i=1)每次迭代的輸出,則可能會將處方生成的輸出通過管道傳輸到xargs命令。

在處方中,您可以更改輸出格式,以在一行上顯示每個qsub迭代生成的所有輸出,如下所示:

for((i=0; i < 2; i++)); do qsub test_S17_script.sh $i; done | xargs

或者您可以使用如下的xargs:

./daedalus_linux_1.3_64 1 `[cc] | xargs`

希望有幫助。

我不知道這是否有幫助——這肯定不是我希望解決方案采用的格式。

在完成這項工作后,我發現了一個使用數組的解決方案——似乎for循環可以工作,但正如您在解決方案中所展示的,它對用戶不友好。

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的linux怎么用两个进程传值,关于linux:将变量脚本参数传递给另一个脚本,然后将qsub传递给程序...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。