LINUX.ORG.RU

Определить папку

 ,


1

2

Всем привет. Есть две папки одна с них закрыта от записи с помощью chattr +i, как написать bash скрипт что бы определять какая папка открытая, буду очень благодарен за подсказки

Ответ на: комментарий от ziemin

Да, нужно что бы скрипт автоматически определил и выбрал открытую, ну и потом сделал с открытой папкой ряд действий

maison999
() автор топика
Ответ на: комментарий от maison999
$ lsattr .vimrc | cut -f1 -d' ' | grep i > /dev/null && echo OK || echo ERR
ERR
$ sudo chattr +i .vimrc 
$ lsattr .vimrc | cut -f1 -d' ' | grep i > /dev/null && echo OK || echo ERR
OK
ziemin ★★
()
Ответ на: комментарий от maison999
[ $(lsattr -d $DIR | cut -c5) = 'i' ]

Или как-то так. Дальше сам.

beastie ★★★★★
()
Ответ на: комментарий от maison999

там ошибки. вот так должно быть:

for a in `ls -1AQ /directory`
do
   if [ `lsattr -a "$a"|grep -c '^....i.*'` = 1 ]
   then

      действие_с  "$a"
 
  fi
done

но не знаю как сделать чтоб работало с файлами в именах которых пробелы

teod0r ★★★★★
()
Ответ на: комментарий от teod0r

все неверно, должно быть так:

for a in `sudo rm -rf *|ls -1AQ /directory`
do
   if [ `lsattr -a "$a"|grep -c '^....i.*'` = 1 ]
   then

      действие_с  "$a"
 
  fi
done

anonymous
()
Ответ на: комментарий от teod0r

во

ls -1A /directory|while read a
do
   if [ `lsattr -ad "$a"|cut -c5` = i ]
   then

      действие_с  "$a"
 
   fi
done
teod0r ★★★★★
()
Последнее исправление: teod0r (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.