Сценарии оболочки - обработка скрытых файлов - PullRequest
0 голосов
/ 24 января 2012

Я работаю над проектом, в котором мне нужно обработать содержимое каталога, переданного в качестве аргумента, и мне нужно также включить невидимые файлы (начинающиеся с.). Вот как я к нему подхожу

#!/bin/bash

cd $1
for file in `dir -a -d * `;
do
#more code blah blah 

, хотя я использую тег -a в команде dir, он все равно игнорирует невидимые файлы. Есть идеи почему?

1 Ответ

4 голосов
/ 24 января 2012

Просто выполните:

#!/bin/bash

shopt -s dotglob
cd "$1"
for file in *; do
  # more code blah blah
done

Из bash manpage

Когда шаблон используется для расширения имени файла, символ «.»в начале имени файла или сразу после слэша должен явно совпадать, если не установлен параметр оболочки dotglob.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...