linux腳本中,如何判斷調(diào)用的程序的返回值?
1、return的值 或者是exit()參數(shù)值 均可以。因?yàn)樯厦嬷袃蓚€(gè)只會(huì)執(zhí)行一個(gè)。
2、腳本退出時(shí)如果不設(shè)定退出狀態(tài)值,返回值 不確定,根據(jù)不同問(wèn)題返回不同值,該值不為0, 一般腳本內(nèi) 都是加返回值 ,來(lái)判斷返回值的多少來(lái)確認(rèn)問(wèn)題出現(xiàn)在哪里。在shell腳本中以 exit 命令的值來(lái)指定shell命令的退出狀態(tài)碼。
3、每運(yùn)行一個(gè)命令,該命令都會(huì)有一個(gè)返回值給shell,你可以在終端中試試ls,然后echo $?查看返回值,肯定是0,如果ls 一個(gè)不存在的文件,再看,肯定不是0。以此判斷上一條命令是否執(zhí)行成功。
4、此外,所有使用文件指針(FILE*)操作的函數(shù)也都可以使用,除了fclose()以外。 返回值:若成功則返回文件指針,否則返回NULL,錯(cuò)誤原因存于errno中。
5、system返回值描述 -1 創(chuàng)建失敗或者程序的退出狀態(tài)無(wú)法獲得,也就是fork或者waitpid失敗 127 執(zhí)行程序失敗,也就是exec失敗 其他表示程序的退出狀態(tài)(樓主說(shuō)的shell命令是腳本嗎,是的話可以看看其exit狀態(tài)。
6、-1 是出現(xiàn)錯(cuò)誤的返回值,我就不說(shuō)了。0 只有當(dāng)你的 waitpid 第三個(gè)參數(shù)包含 WNOHANG 的時(shí)候才有可能。
ubuntu顯示命令返回值
這個(gè)是前一條命令的返回值,以字符的形式返回。你的 main1 返回值如果是 0 的話不會(huì)出現(xiàn)任何內(nèi)容。或者你隨便敲一個(gè)命令,比如 ls 這個(gè)就沒(méi)有了。
可以用管道,也就是“|”如你可以用ls -l | more這個(gè)命令來(lái)分屏顯示文件夾的內(nèi)容。這個(gè)就是把ls -l的結(jié)果發(fā)送給 more命令做more的參數(shù)使用。這個(gè)結(jié)果可以理解為字符串格式。
只要有一個(gè)命令返回真(命令返回值 $? == 0),后面的命令就不會(huì)被執(zhí)行。
軟件內(nèi)設(shè)置。去除uh選項(xiàng)內(nèi)容,使只顯示當(dāng)前目錄,添加一個(gè)PS1參數(shù),改變命令行顏色效果,格式顏色eFBm為開(kāi)始,e0m為結(jié)束。配置完成記得source一下。命令提示符是在操作系統(tǒng)中,提示進(jìn)行命令輸入的一種工作提示符。
java運(yùn)行l(wèi)inux命令獲得返回值的問(wèn)題
1、或許這就是你想要的package question.save;import java.io.InputStreamReader;import java.io.LineNumberReader;/*** java在linux環(huán)境下執(zhí)行l(wèi)inux命令,然后返回命令返回值。
2、分離抽象接口及其實(shí)現(xiàn)部分。橋接模式提高了系統(tǒng)的可擴(kuò)充性,在兩個(gè)變化維度中任意擴(kuò)展一個(gè)維度,都不需要修改原有系統(tǒng)。實(shí)現(xiàn)細(xì)節(jié)對(duì)客戶(hù)透明,可以對(duì)用戶(hù)隱藏實(shí)現(xiàn)細(xì)節(jié)。
3、以下方法支持Linux和windows兩個(gè)系統(tǒng)的命令行調(diào)用。還用到了apache的lang工具包c(diǎn)ommons-lang3-jar來(lái)判斷操作系統(tǒng)類(lèi)型、也用到了和log4j-1jar來(lái)打印日志。
4、這里不得不提到j(luò)ava的process類(lèi)了。process這個(gè)類(lèi)是一個(gè)抽象類(lèi),封裝了一個(gè)進(jìn)程(你在調(diào)用linux的命令或者shell腳本就是為了執(zhí)行一個(gè)在linux下執(zhí)行的程序,所以應(yīng)該使用process類(lèi))。
5、java虛擬機(jī)執(zhí)行這個(gè)命令的過(guò)程是,首先克隆一條和當(dāng)前虛擬機(jī)擁有一樣環(huán)境變量的進(jìn)程,再用這個(gè)新的進(jìn)程執(zhí)行外部命令,最后退出這個(gè)進(jìn)程。頻繁的創(chuàng)建對(duì)CPU和內(nèi)存的消耗很大。
6、可以在trap命令中指定處理異常的方式,比如輸出錯(cuò)誤信息或執(zhí)行其他操作。在shell腳本中,可以使用java命令行工具來(lái)執(zhí)行java-jar文件。使用java命令的返回值來(lái)判斷java程序的執(zhí)行情況。
Linux中echo命令的返回值分別代表什么意思?
echo就是回顯一個(gè)數(shù)據(jù),這個(gè)數(shù)據(jù)可以是數(shù)字、字符串等。這里顯示的是$?表示的數(shù)據(jù),該數(shù)據(jù)的值是在linux/unix shell命令行模式,每個(gè)指令都有其返回值,用來(lái)表示其執(zhí)行情況。類(lèi)似于計(jì)算機(jī)語(yǔ)言中的函數(shù)返回值。
$? 是顯示最后命令的退出狀態(tài),0表示沒(méi)有錯(cuò)誤,其他表示有錯(cuò)誤。
顯示上一個(gè)執(zhí)行的命令(或程序)的返回值,這個(gè)值通常在0~255之間,0表示一切正常。
echo $?這是一個(gè)shell的變量,意思是返回上一步執(zhí)行任務(wù)是否成功。如果為0 說(shuō)明執(zhí)行成功。如果非0 說(shuō)明執(zhí)行失敗。