Если вы в оболочке, используйте
find . -maxdepth 1 -type f -writable
см. Человек найти
Вы найдете лучшие ответы на этот тип вопросов на superuser.com или serverfault.com
Если вы пишете код, а не просто используете оболочку, вас может заинтересовать системный вызов access (2).
Этот вопрос уже задавался на serverfault
РЕДАКТИРОВАТЬ: @ ghostdog74 спросил, если вы удалили разрешения на запись для этого файла, если он все равно найдет файл. Ответ: нет, это находит только файлы, доступные для записи.
dwaters@eirene ~/temp
$ cd temp
dwaters@eirene ~/temp/temp
$ ls
dwaters@eirene ~/temp/temp
$ touch newfile
dwaters@eirene ~/temp/temp
$ ls -alph
total 0
drwxr-xr-x+ 2 dwaters Domain Users 0 Mar 22 13:27 ./
drwxrwxrwx+ 3 dwaters Domain Users 0 Mar 22 13:26 ../
-rw-r--r-- 1 dwaters Domain Users 0 Mar 22 13:27 newfile
dwaters@eirene ~/temp/temp
$ find . -maxdepth 1 -type f -writable
./newfile
dwaters@eirene ~/temp/temp
$ chmod 000 newfile
dwaters@eirene ~/temp/temp
$ ls -alph
total 0
drwxr-xr-x+ 2 dwaters Domain Users 0 Mar 22 13:27 ./
drwxrwxrwx+ 3 dwaters Domain Users 0 Mar 22 13:26 ../
---------- 1 dwaters Domain Users 0 Mar 22 13:27 newfile
dwaters@eirene ~/temp/temp
$ find . -maxdepth 1 -type f -writable
dwaters@eirene ~/temp/temp