0
Fishを使用すると、特定のファイル(またはディレクトリ)以外のディレクトリの内容を削除する方法を教えてください。 bashのrm !(file1|file2)
のようなものだが、fishier。Fish Shell:すべてを削除する以外
Fishを使用すると、特定のファイル(またはディレクトリ)以外のディレクトリの内容を削除する方法を教えてください。 bashのrm !(file1|file2)
のようなものだが、fishier。Fish Shell:すべてを削除する以外
魚にはこのような特徴はありません。その問題は#1444です。
あなたは、これはその中の改行を含むファイル名に失敗することに注意してください
rm (string match -rv '^file1$|^file2$' -- *)
ような何かを行うことができます。
それとも、醜いの操作を行うことができます
set -l files *
for file in file1 file2
if set -l index (contains -i -- $file $files)
set -e files[$index]
end
end
rm $files
ファイル名に含まれるものに関係なく動くはずです。
または、この問題で説明されているように、findを使用できます。
find . -mindepth 1 -maxdepth 1 -type f -a ! \(-name 'file1' -o -name 'file2' \)