进入Gentoo,执行equery等gentoo命令
Enter into Gentoo and execute gentoo commands like equery
我写了一个 shell 脚本来输入 gentoo 前缀和 运行 命令。
但是一旦它进入 Gentoo 前缀,它就会停止并且不会执行其余的步骤。根据我的说法,控制台已从 RHEL 更改为 GENTOO,这会阻止 shell 脚本执行其余命令。
有什么方法可以在不输入 GENTOO 前缀的情况下在 shell 脚本中执行 gentoo 特定命令?
使用的命令:
Gentoo_prefix
equery list > file.csv
脚本:
cat file | awk '{print }'| 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-doc,而不是像交互式输入时那样将输入放在命令之后。
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
我写了一个 shell 脚本来输入 gentoo 前缀和 运行 命令。 但是一旦它进入 Gentoo 前缀,它就会停止并且不会执行其余的步骤。根据我的说法,控制台已从 RHEL 更改为 GENTOO,这会阻止 shell 脚本执行其余命令。 有什么方法可以在不输入 GENTOO 前缀的情况下在 shell 脚本中执行 gentoo 特定命令?
使用的命令:
Gentoo_prefix
equery list > file.csv
脚本:
cat file | awk '{print }'| 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-doc,而不是像交互式输入时那样将输入放在命令之后。
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