install_gawk中的if..else块在install_sed函数中完全正常工作时不起作用。事实上,我已经重新使用(复制粘贴)我的install_sed函数来创建install_gawk函数 在尝试了很多事情之后,我在这里发帖。以下是我的两个功能。
install_sed() {
echo "Paste path to latest 'sed source file' from here: ftp://ftp.gnu.org/gnu/sed/ e.g., sed-4.2.2.tar.bz2" ;
read sedlink ;
wget -c $sedlink ;
tar xvf sed-* ;
sleep 5;
if [ -d sed-* ] ; then
cd sed-* ;
else
echo "no sed-* folder to cd.." ;
fi
./configure ;
make ;
make check ;
sudo make install ;
sed --version ;
}
# if..else block should cd to gawk-* folder like it did in the sed folder but it doesn't cd.
install_gawk() {
echo " download latest awk from here: http://ftp.gnu.org/gnu/gawk/ e.g., gawk-4.1.1.tar.xz "
read gawklink ;
wget -c $gawklink;
tar xvf gawk-* ;
sleep 5;
if [ -d gaw-* ] ; then
cd gaw-* ;
else
echo "no gawk-* folder to cd.." ;
fi
./configure ;
make ;
make check ;
sudo make install ;
gawk --version ;
}
答案 0 :(得分:1)
好像你在 gawk 的if-else条件中的目录名模式中输错了
if [-d gaw- *];然后
cd gaw-* ;
否则
应该是什么 -
...
if [ -d gawk-* ] ; then
cd gawk-* ;
else
..