我已经编写了一个shell脚本来输入gentoo前缀并运行命令。
但一旦输入Gentoo前缀,它就会停止并不执行其余步骤据我所知,控制台已从RHEL更改为GENTOO,这将阻止shell脚本执行其余命令。
有没有办法不输入GENTOO前缀就可以在shell脚本中执行GENTOO特定的命令?
使用的命令:
Gentoo_prefix
equery list > file.csv
脚本:
cat file | awk '{print $3}'| cut -d '/' -f3 | cut -d '_' -f1 | sort -u | uniq -u | sed 's/.$//' > files
read -n 2 Detail
files=`echo $Detail | tr '[:upper:]' '[:lower:]'`
read server
Server=`echo $server | tr '[:upper:]' '[:lower:]'`
for nat in $(cat files)
do
for serv in $Server
do
if [ $files == $nat -a $Server == $serv ]
then
ls /tmp/$nat'0_'$serv/ | grep -i python > module
read module_name
ls /tmp/$nat'0_'$serv/$module_name/ | grep ^3 > version
$version_name = ' '
read version_name
for name in $(cat version)
do
if [ $version_name == ' ' ]
for pack in $(cat module)
do
if [ $version_name == $pack ]
then
$version_name
equery list > components.csv
最佳答案
为了向脚本中的命令提供输入,必须使用管道或here文档,而不是像交互式键入命令那样将输入放在命令之后。
if [ $version_name == $pack ]
then
echo 'equery list > components.csv' | $version_name
或
if [ $version_name == $pack ]
then
$version_name <<EOF
equery list > components.csv
EOF
关于linux - 输入Gentoo并执行gentoo命令,例如equery,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41004002/