分析指令 Linux 與 macOS

分析指令用於提交掃描要求以進行分析,或者用於處理已提交的掃描要求。使用這些指令,您也可以接收掃描的相關資訊。此資訊可用於自動化 Script。

使用這些指令之前,請確定您已登入分析服務(請參閱鑑別指令)。

appscan.sh status

語法:

appscan.sh status -i <job_id>

說明:

傳回分析工作的下列其中一個狀態:

Pending
Starting
Running
FinishedRunning
FinishedRunningWithErrors
Ready
ReadyIncomplete
FailedToScan
ManuallyStopped
None
Initiating
MissingConfiguration
PossibleMissingConfiguration

必要選項:

  • -i:指定 -i <job_id>,其中 <job_id> 是分析工作的 ID。
提示: 針對所有指令,可以依任意順序使用選項。

範例:

如果要查看工作 ID 12345 的狀態,請指定下列指令:

appscan.sh status -i 12345

如果回覆碼是 0,則工作為擱置中。如果回覆碼是 1,則工作為啟動中,等等。

appscan.sh list

語法:

appscan.sh list

說明:

列出所有分析工作,包括排入佇列、執行中及已完成的那些工作。系統會傳回每個工作的 ID,以便您將該 ID 用於其他指令。例如,在命令提示字元或 Script 中,ID 可以與 info 指令搭配使用。

appscan.sh list_apps

語法:

appscan.sh list_apps

說明:

這個指令可讓您查看您有權存取的 AppScan 360° 應用程式。如果要使用指令,您必須接受服務的鑑別。在發出指令之後, 會顯示 AppScan 360° 應用程式清單以及應用程式名稱,且名稱之後是其 ID(括上括弧)。當在 queue_analysis 指令中使用 -a 選項時,請使用此清單中的 ID 值。

appscan.sh cancel

語法:

appscan.sh cancel -i <job_id>

說明:

取消執行中或已置入佇列的分析工作。

必要選項:

  • -i:指定 -i <job_id>,其中 <job_id> 是分析工作的 ID。
提示: 針對所有指令,可以依任意順序使用選項。

範例:

若要取消工作 ID 12345,請指定下列指令:

appscan.sh cancel -i 12345

appscan.sh queue_analysis

語法:

appscan.sh queue_analysis -a <app_id> -f <file> -n <scan_name> -nen -oso -ps -sao

說明:

提交檔案以供分析(IRX 或非 IRX 封存)。當掃描完成時,您會接收到電子郵件通知(在與登入分析服務所使用的帳戶相關聯的電子郵件位址)。此電子郵件包括連結,讓您可以登入來下載掃描。

註: 掃描程式碼或產生 IRX 檔案時,您可能會接收到關於更新至最新 Static Analyzer 指令行公用程式 的訊息。請參閱指令行公用程式 (CLI) 支援

必要選項:

  • -f:指定 -f <file>,其中 <file> 是您要提交以進行掃描的 IRX 檔案或非 IRX 封存。如果檔案不在現行目錄中,請使用此選項來指定檔案路徑及檔名。
    註: 只有在符合下列其中一個或兩個陳述式時,才需要此選項:
    • 您是從包含多個目標檔案的目錄中發出指令。如果目錄只包含一個目標檔案,則未使用 -f 選項時,將會提交該檔案。
    • 您是從未包含目標檔案的目錄中發出指令。在此情況下,必須使用 -f 選項來指定要提交之檔案的路徑及檔名。
  • -a:您提交進行分析的檔案(IRX 檔案或非 IRX 封存)必須與現有 AppScan 360° 應用程式相關聯。請使用這個選項指定 -a <app_id>, 其中 <app_id> 是要關聯的應用程式 ID。如果要判斷 ID, 請使用 list_apps 指令。
可選旗標/設定:
  • -n:指定 -n <scan_name>,其中 <scan_name> 是所提交掃描的名稱。
  • -nen:在分析完成時停用電子郵件通知。如果未指定此旗標,依預設會發生電子郵件通知。
    註: -e 旗標已淘汰,並由-nen 取代。
  • -ps:以個人掃描形式執行掃描。如果未指定此旗標,依預設會發生一般掃描。
  • -sao:指定 -sao,只執行靜態分析。
提示: 針對所有指令,可以依任意順序使用選項。

範例:

若要提交 my_irx.irx(位於現行目錄中)以進行掃描,請使用
appscan queue_analysis -f my_irx.irx -a 12345 -n my_scan
其中 12345 是要與掃描產生關聯之應用程式的 ID (可以使用 list_apps 指令來判斷應用程式 ID)。使用使用者介面或 list 指令以查看所有現行掃描時,my_scan 會出現在清單中。

appscan.sh info

語法:

appscan.sh info -i <job_id>

說明:

顯示所指定分析工作的資訊。

提供的資訊可以用於自動化 Script。

必要選項:

  • -i:指定 -i <job_id>,其中 <job_id> 是分析工作的 ID。
提示: 針對所有指令,可以依任意順序使用選項。

範例:

如果要接收工作 ID 12345 的相關資訊,請指定下列指令:

appscan.sh info -i 12345

所傳回資訊的範例為:

NLowIssues=0
ReadStatus=2
NHighIssues=0
Name=appscan.zip
ScanEndTime=2014-11-20T13:56:04.497Z
Progress=0
RemainingFreeRescanMinutes=0
ParentJobId=00000000-0000-0000-0000-000000000000
EnableMailNotifications=false
JobStatus=6
NInfoIssues=0
JobId=9b344fc7-bc70-e411-b922-005056924f9b
NIssuesFound=0
CreatedAt=2014-11-20T13:54:49.597Z
UserMessage=Scan completed successfully. 報告已備妥。
NMediumIssues=0
Result=1