LINUX.ORG.RU
ФорумTalks

[bash] Подлый ls

 


0

0

Подскажите, как внутри баш-скрипта задать маску для ls? Допустим, скрипт должен иметь помимо прочего в аргументах маску файлов и начальную директорию.

./script *.ogg ~/music

Не могу передать эти аргументы внутрь скрипта, начинает вести себя неадекватно...


экранируй одинарными ковычками или обратным слешем

xorik ★★★★★
()

внутри скрипта можно так:

for file in dir/*.ogg
do
echo $file
done

можно и изящнее, не моню точно как, смотри abs

Syncro ★★★★★
()
Ответ на: комментарий от Syncro

ненене, внутри скрипта получится так\ for file in dir/$1

oguretz
() автор топика
$ cat ./script.sh
#!/bin/sh
echo "$1"

$ ./script.sh \*
*
Black_Shadow ★★★★★
()
~/tmp/1 ▶ ls
a  ab  b
~/tmp/1 ▶ find . -name a*
find: paths must precede expression: ab
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
~/tmp/1 ▶ find . -name "a*"
./ab
./a

оно? а можно ещё передавать просто ogg, а в скрипте делать *.$1

yekm
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.