在bash中运行安装命令;";然后是“;“是”;没有任何人工干预
因此,在一个新的arch linux实例上,我希望能够从一开始就安装在bash中运行安装命令;";然后是“;“是”;没有任何人工干预,sh,pacman,Sh,Pacman,因此,在一个新的arch linux实例上,我希望能够从一开始就安装tzdata 要手动执行此操作,请执行以下操作:- [root@myarch ~]# pacman -S tzdata :: The following packages should be upgraded first : pacman :: Do you want to cancel the current operation :: and upgrade these packages now? [Y/n] n r
tzdata
要手动执行此操作,请执行以下操作:-
[root@myarch ~]# pacman -S tzdata
:: The following packages should be upgraded first :
pacman
:: Do you want to cancel the current operation
:: and upgrade these packages now? [Y/n] n
resolving dependencies...
looking for inter-conflicts...
Targets (1): tzdata-2012c-1
Total Download Size: 0.13 MB
Total Installed Size: 5.41 MB
Proceed with installation? [Y/n] Y
可以看出,我必须首先输入n
,然后输入Y
我如何在bash的一行中运行它,而不需要输入n
和Y
yes n | pacman -S tzdata
让我通过第一个提示。但是我被第二个提示卡住了(很明显)。怎么办
echo -e 'n\nY' | pacman -S tzdata
如果要向这样的程序发送多个输入,一种方法是在子shell中使用多个echo命令:
(echo n; echo y) | pacman -S tzdata
旁注:如果有更新,Pacman真的应该首先更新。然后你可以像另一个答案所说的那样使用
--noconfirm
。这是不可移植的。使用printfHow便携性更好吗?他使用的是Arch包管理器。我的评论更多的是针对那些可能错误地认为echo-e用于其他事情是正确的人
(echo n; echo y) | pacman -S tzdata