Список скрытых файлов без использования - ( * |
Можно ли перечислить скрытые файлы без использования символов, упомянутых выше? Это означает, что не следует использовать какие-либо параметры или подстановочный знак *, а также некоторые другие символы (например, это запрещено ls -a
, ls -d
, .!(|.)
, echo .*
так далее.).
4 ответа
find .
перечислит все файлы, включая скрытые.
Следствие: кто-то думает, что это хорошая идея - учить внедрению команд, занося в черный список отдельные символы и, возможно, даже команды в вашем скрипте. Это активно пагубно для вашего изучения оболочки, потому что вы в конечном итоге получаете хаки, такие как escape-символы или полагаетесь на специфичную для Ubuntu конфигурацию по умолчанию, которая не сможет обрабатывать специальные имена файлов.
На самом деле это звучит так, как будто кто-то придумал это eval
по какой-то причине (что всегда * ужасная идея), а не просто выполнение представленного кода или сценария напрямую.
Абсолютно простой способ зацикливания скрытых файлов
for file in .*
do
my_command "$file"
done
* Или так чертовски близко к всегда, что вам лучше прочитать и понять всю статью Bash wiki об этом, прежде чем даже подумать об использовании.
Ubuntu имеет псевдоним по умолчанию для ls -la
, Вы можете просто использовать
la
echo .
Это уже встроено в Bash, чтобы сделать это. Даже не нужно выполнять команду.
echo .
Если вам абсолютно необходима команда (но вам все еще не нужны внешние процессы).