Bug 131792 - yum install \* no longer works as expected
yum install \* no longer works as expected
Status: CLOSED UPSTREAM
Product: Fedora
Classification: Fedora
Component: yum (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Jeremy Katz
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2004-09-04 13:00 EDT by Bob Gustafson
Modified: 2014-01-21 17:49 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2004-09-20 02:10:31 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Bob Gustafson 2004-09-04 13:00:35 EDT
Description of problem:

  Previously, I could 'yum install \*' to get everything available.
This no longer works. The '\*' passes through to the shell and picks
up the names of files/directories which happen to be in the directory
where you are at the moment.

i.e., 'yum install *' and 'yum install \*' now work the same.

  I have not checked to see whether the command

    'yum -y --exclude=\*debuginfo\* .....'

  has this new unexpected interpretation of the wildcard.

Version-Release number of selected component (if applicable):

[root@hoho2 ~]# rpm -q yum
yum-2.1.3-1
[root@hoho2 ~]#

How reproducible:

  Has been this way for several days.

Steps to Reproduce:

1. cd to directory with files and directories
2. yum install \*
3. see yum complain that the names of files and directories do not match.
  
Actual results:

  see above

Expected results:

  Would be nice if '\*' was interpreted as 'install everything you have'

  And, that (multiple) --exclude=\*pattern\* could be used to exclude
installation of components of no interest.

Additional info:

[root@hoho2 ~]# cat /proc/version
Linux version 2.6.8-1.541smp (bhcompile@porky.build.redhat.com) (gcc
version 3.4.1 20040831 (Red Hat 3.4.1-10)) #1 SMP Wed Sep 1 18:15:33
EDT 2004
[root@hoho2 ~]#
Comment 1 Seth Vidal 2004-09-08 01:27:32 EDT
I'm not sure what's going on here but I'm reasonably sure that this is
not b/c of a change in yum.

this is shell expansion.

Comment 2 Bob Gustafson 2004-09-17 23:48:34 EDT
How do you explain this then?

find works using \* syntax (thus shell is working..)

but 'yum install \*' picks up filenames in current directory (not
desired behavior)

==== find test ==
[root@hoho2 test]# find . -name \*file\* -print
./b_file.txt
./a_file.txt

==== yum test ===
[root@hoho2 test]# yum install \*
Setting up Install Process
Setting up Repo:  development
repomd.xml                100% |=========================| 1.1 kB    00:00
Reading repository metadata in from local files
developmen: ################################################## 3514/3514
Excluding Packages
Excluding Incompatible Archs
Finished
Excluding Packages from Fedora Core 2 - Development Tree
No Match for argument a_file.txt
No Match for argument b_file.txt
Nothing to do
[root@hoho2 test]#

Comment 3 Seth Vidal 2004-09-18 20:00:15 EDT
Ah ha - found it.

the /usr/bin/yum script became shell and it's getting the un-escaped
codes and expanding them.

should be fixed in next release of yum.

thanks for pointing this out - sorry for the initial doubts - I
couldn't duplicate it b/c I wasn't running yum from the shell script
but from yummain.py from the cvs dir.
Comment 4 Seth Vidal 2004-09-20 02:10:31 EDT
fixed in CVS

in /usr/bin/yum
after:
#!/bin/sh

put:
set -f

that fixes it :)

Note You need to log in before you can comment on or make changes to this bug.