The goal is to check for the existence of a few directories and for the nonexistence of others. [Emphasis added]
Основываясь на ответе Гленна Джекмана , мы можем проверить отсутствие других имен, подобных этому :
result=True for dir in \ "$PWD/dir1" \ "$PWD/dir2" \ "$PWD/dir3" do if ! [ -d "$dir" ]; then result=False break fi done for dir in \ "$PWD/dir4" \ "$PWD/dir5" \ "$PWD/dir6" do if [ -e "$dir" ]; then # Note: no “!” result=False break fi done echo "$result"Я использовал
[ -e "$dir" ]
, чтобы проверить, существует ли"$dir"
; т. е. еслиdir5
существует, но является файлом, результатом будетFalse
. Если вы хотите только проверить, являются ли имена во второй группе каталогами, используйте[ -d "$dir" ]
, как и в первом цикле.Поскольку мы говорим о проверке существования вещей в текущем рабочем каталоге, возможно, нет необходимости указывать
$PWD/
в именах; просто сделайfor dir in \ "dir1" \ "dir2" \ "dir3" do ︙
По состоянию на 15 июля 2020 г. в Linux отсутствует возможность проверки целостности файловой системы жесткого диска, отформатированного в NTFS.
Что я сделал?
sudo apt-get remove virtualbox virtualbox-dkms virtualbox*
sudo usermod -a -G disk $USER
sudo usermod -a -G vboxusers $USER
sudo /sbin/vboxconfig
VBoxManage internalcommands createrawvmdk -filename "</path/to/file>.vmdk" -rawdisk /dev/sdX
Этот процесс устранил неисправность моей файловой системы NTFS. Я надеюсь, что это помогло и вам.
Если вы найдете более простое решение, только под Linux, пожалуйста, опубликуйте его.