Change permissions using find command

On a Linux server, if you are in need of changing the permissions of a bulk amount of files or directories recursively, we can use 'find' command to do it. The steps are explained below:

  1. Change to the directory in which you need to change the permissions.

  2. The permission changes are different based on the situation we are having. If you need to change the permissions of all files inside the directory to 644 recursively, please use the following:  
    find . -type f -exec chmod 644 {} \;

    You can specify a specific directory in the following way as well:
    find /home/abc/ -type f -exec chmod 644 {} \;
  3. If you are looking to change the permissions of directories inside the current folder to 755, use the following:
    find /home/abc/ -type d -exec chmod 755 {} \;
  4. If you are looking to change the permissions of all files having 777 permissions only to 644, use the following:
    find . -type f -perm 777 -exec chmod 644 {} \;

    Use the same format for directories by changing the option f:
    find . -type d-perm 777 -exec chmod 755 {} \;
  •  
  • 315 Users Found This Useful
Was this answer helpful?

Related Articles

How To Install and Use Docker on Ubuntu 16.04

Introduction Docker is an application that makes it simple and easy to run application processes...

Backup and Restore cPanel Accounts via SSH

a. How to create a backup of a cPanel Account via SSH?   1. Log-in to the SSH as the Root...

Change Main IP of the server :: Vesta Panel

If we are changing the main IP of a server installed with Vesta panel, we can use the following...

Change the time of your vps/dedi

It's very easy, you first need to remove the current time file rm /etc/localtime and replace it...

Create and Manage FTP Accounts in VestaCP

In this tutorial, we can discuss about how to create and manage FTP accounts in VestaCP. Follow...