[Comm] скрипт на bash (problem)

Michael Shigorin =?iso-8859-1?q?mike_=CE=C1_osdn=2Eorg=2Eua?=
Пт Окт 13 20:43:10 MSD 2006


On Fri, Oct 13, 2006 at 08:31:22PM +0400, Grigory Fateyev wrote:
> #!/bin/bash
> DIR=~/www/testsed/
> IFS="\n"

Лишнее.

> if [ -n "$DIR" ]; then
>     cd $DIR
>     for file in `ls *`; do

Лучше просто for file in *, не придётся кувыркаться.

Или ls | while read file; do ...; done

>         echo "$file"
>         cf=`echo "$file" | tr ' ' '_'`

Предпочитаю такие места на всякий тоже кавычить:

cf="`echo "$file" | tr ' ' '_'`"

>         echo $cf
>         if [ $cf != "$file" ]; then
>             mv "$file" $cf

mv "$file" "$cf"

(да, тут пробелы, но бывают-то не только пробелы -- как
минимум ещё табы)

>         fi
>     done
> fi

-- 
 ---- WBR, Michael Shigorin <mike на altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/



Подробная информация о списке рассылки community