Fish Shell для усечения списка файлов - PullRequest
0 голосов
/ 08 ноября 2018

В bash, если я хочу обрезать кучу файлов в каталоге, я бы сделал следующее:

for i in *
do
    cat /dev/null > $i
done

В рыбе я пробовал:

for I in *
    cat /dev/null > $I
end

но это дает мне ошибку:

fish: Invalid redirection target: $I

Так кто-нибудь знает, как этого добиться?

Спасибо.

1 Ответ

0 голосов
/ 08 ноября 2018

У меня работает. Обратите внимание, что единственный способ получить эту ошибку - это если переменная I не установлена. Я заметил, что вы использовали строчную букву для примера bash и прописную букву для примера fish. Возможно, вы перепутали дело? Например, это приведет к появившейся ошибке:

for i in *
    true > $I
end

P.S., В оболочке POSIX более эффективно делать : > $i. Поскольку fish не поддерживает :, более эффективно сделать true > $i, чтобы избежать появления внешней команды и открытия /dev/null.

.
...