[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ls doesn't work in if statements in bash 4.3
From: |
billycongo |
Subject: |
Re: ls doesn't work in if statements in bash 4.3 |
Date: |
Wed, 26 Mar 2014 17:45:33 -0700 (PDT) |
User-agent: |
G2/1.0 |
On Wednesday, March 26, 2014 8:30:12 PM UTC-4, billy...@gmail.com wrote:
> I tested on bash 4.3 and 3.0
>
>
>
> testing]$ bash --version
>
> bash --version
>
> GNU bash, version 4.3.0(1)-release (x86_64-unknown-linux-gnu)
>
>
>
> In a directory I have:
>
>
>
> testing]$ ls -l
>
> total 16
>
> -rw-r--r-- 1 hpierce hpierce 77 Mar 26 20:09 dog1
>
> -rw-r--r-- 1 hpierce hpierce 77 Mar 26 20:09 dog2
>
> -rw-r--r-- 1 hpierce hpierce 77 Mar 26 20:09 dog3
>
> -rw-r--r-- 1 hpierce hpierce 0 Mar 26 20:07 dog4
>
> -rwxr-xr-x 1 hpierce hpierce 80 Mar 26 20:02 test
>
>
>
> dog1, dog2, and dog3 have content. dog4 is empty.
>
>
>
> test is a simple script:
>
>
>
> testing]$ cat test
>
> #!/bin/bash
>
> FILE=$1
>
> echo $FILE
>
> if [ ! -e $FILE ]
>
> then
>
> echo "Usage: $0 <file>"
>
> exit 1
>
> else
>
> echo $FILE exists
>
> fi
>
>
>
> Here's a regular run:
>
>
>
> testing]$ for f in *; do ./test $f; done
>
> dog1
>
> dog1 exists
>
> dog2
>
> dog2 exists
>
> dog3
>
> dog3 exists
>
> dog4
>
> dog4 exists
>
> test
>
> test exists
>
>
>
> Now I add a ls:
>
>
>
> testing]$ for f in `ls dog*`; do ./test $f; done
>
> dog1
>
> Usage: ./test <file>
>
> dog2
>
> Usage: ./test <file>
>
> dog3
>
> Usage: ./test <file>
>
> dog4
>
> Usage: ./test <file>
>
>
>
> So I moved it to an earlier version of bash
>
>
>
> testing]$ bash --version
>
> bash --version
>
> GNU bash, version 3.00.15(1)-release (x86_64-redhat-linux-gnu)
>
>
>
> testing]$ for f in `ls dog*`; do ./test $f; done
>
> dog1
>
> dog1 exists
>
> dog2
>
> dog2 exists
>
> dog3
>
> dog3 exists
>
> dog4
>
> dog4 exists
I thought about the changes I have made recently and I had added the following
into my .bashrc:
eval $(dircolors -b ~/.dir_colors)
I commented it out, and now everything works. I think it's still a bug, though
I know how to fix it.
- ls doesn't work in if statements in bash 4.3, billycongo, 2014/03/26
- Re: ls doesn't work in if statements in bash 4.3,
billycongo <=
- Re: ls doesn't work in if statements in bash 4.3, Eduardo A . Bustamante López, 2014/03/27
- Re: ls doesn't work in if statements in bash 4.3, billycongo, 2014/03/27
- Re: ls doesn't work in if statements in bash 4.3, Greg Wooledge, 2014/03/27
- easier construction of arrays, Mike Frysinger, 2014/03/27
- Re: easier construction of arrays, Pierre Gaston, 2014/03/27
- Re: easier construction of arrays, Dan Douglas, 2014/03/27
- Re: easier construction of arrays, Mike Frysinger, 2014/03/27
- Re: easier construction of arrays, Dan Douglas, 2014/03/27
Re: ls doesn't work in if statements in bash 4.3, billycongo, 2014/03/27