我沒有bash腳本背景。我知道unix命令行的基礎知識。編寫一個bash腳本在UNIX中運行一個matlab程序?
我有一個matlab腳本,將矩陣圖像作爲輸入。我在一個文件中有一堆圖像。我需要bash腳本來調用matlab程序,並將文件中的每個圖像作爲輸入一個接一個地輸入到程序中。
如果你想寫它,那就太好了。我所要求的只是讓某人指導我完成我應該看到的內容。
感謝
我沒有bash腳本背景。我知道unix命令行的基礎知識。編寫一個bash腳本在UNIX中運行一個matlab程序?
我有一個matlab腳本,將矩陣圖像作爲輸入。我在一個文件中有一堆圖像。我需要bash腳本來調用matlab程序,並將文件中的每個圖像作爲輸入一個接一個地輸入到程序中。
如果你想寫它,那就太好了。我所要求的只是讓某人指導我完成我應該看到的內容。
感謝
假設matlab
命令在您的路徑(更多信息,See the documentation)
假如你只是想獲得的所有BMP的(沒有指定文件類型),你可以使用一個簡單的bash循環:
for f in *.BMP; do
matlab -nosplash -nodisplay -nojvm -r "my_command('$f'),quit()"
done
的-nosplash
,-nodisplay
,並-nojvm
確保GUI不會被觸發,而-r
指示MATLAB運行命令。最後的,quit()
確保matlab在運行後退出。
你需要
list_images
,或filename
什麼包含圖像喜歡的東西:
list_images | while read image_name
do
matlab_command "$image_name" > "$image_name.output"
done
或更好
while read image_name
do
matlab_command "$image_name" > "$image_name.output"
done < filename_with_images.txt
沒有真正明白你的意思與have amatrix images in a file
,發表您輸入的一個例子。
在CURENT目錄
find . -maxdepth 0 -name \*.prj -print0 | while IFS= read -r -d '' image_name
do
matlab_command "$image_name" > "$image_name.output"
done
谷歌 「的bash教程」 發現prj
文件編輯。
對不起,不明確。輸入文件爲.prj格式。我把它們全部存儲在一個目錄中。我真的只需要腳本將文件名作爲參數傳遞給我的matlab函數。在上面的回答中,我不瞭解你從目錄中實際讀取文件名的位置。 –
請參閱編輯 - 如何查找'prj'文件... – jm666