Command-Line-Interface

將命令行輸出作為參數發送給其他命令

  • October 27, 2013

1)這裡是安裝特殊包的命令(例如system/header)

#pkg install system/header

2)我們也可以安裝幾個包

#pkg install system/header network/ssh package/rpm

3)這是顯示特殊組中所有可用包的命令

#pkg contents -o fmri -H -rt depend -a type=group solaris-desktop

如何在一個命令中安裝特殊組中的所有軟體包?(如何將第三個命令的輸出作為參數發送到第二個?)

xargs 是你的朋友…:

vdebaere@toto:~$ printf "test1\ntest2\ntest3" |xargs echo
test1 test2 test3

應用於您的範例:

root@toto:~# pkg contents -o fmri -H -rt depend -a type=group solaris-desktop | xargs pkg install -n

請注意,在 pkg install 的情況下,這將不起作用,因為第二個命令的輸出可以並且將包含可以以不同方式滿足的包(例如 network/telnet 匹配 pkg://solaris/service /network/telnet 和 pkg://solaris/network/telnet。

引用自:https://serverfault.com/questions/545134