Shell-Script

deepin-terminal:無法執行子程序

  • November 9, 2019

我編寫了一個如下的簡單腳本來執行 deepin-terminal 並向其傳遞一個簡單的命令,但是當我執行此腳本時出現錯誤。

腳本:

#!/bin/bash

deepin-terminal -m fullscreen -e "cmatrix | lolcat"

錯誤:

Failed to execute child process “cmatrix | lolcat” (No such file or 
directory)

如果我只是通過cmatrix命令它可以工作,但它不能與cmatrix | lolcat

與大多數終端仿真器一樣,的-e選項需要一個簡單的命令。deepin-terminal管道不是一個簡單的命令。

該錯誤來自終端嘗試使用文字名稱cmatrix | lolcat(包括空格和管道符號)執行命令。

相反,使用

deepin-terminal -m fullscreen -e sh -c "cmatrix | lolcat"

這將sh使用執行您的管道的內聯腳本執行。

引用自:https://unix.stackexchange.com/questions/460607