Sponsored Content
Top Forums Shell Programming and Scripting What's the best way to check file permissions before moving files if needed? Post 303036856 by Cacializ on Sunday 14th of July 2019 03:13:35 PM
Old 07-14-2019
What's the best way to check file permissions before moving files if needed?

Hello,
I would like to know if it's a good practice to check the file permissions of the contents of a directory before moving them. For example:
Code:
mv -- "$directory"/* "$directory"/.[!.]* "$directory"/..?* "$destination"

The variables $directory and $destination contain the path to an existing directory. The problem is that I don't have control of the user's directory who runs the script so, in theory, the files may not have the needed permissions to be moved, and the directory is required to be empty. What's a good way to check if every file was moved successfully?

The first thing that came to mind is to check the exit status of the command:
Code:
mv -- "$directory"/* "$directory"/.[!.]* "$directory"/..?* "$destination" || exit 1

However, this doesn't mean a file couldn't be moved, because it can also exit because of a non-existing directory entry as a result of the glob. I also thought of checking if the directory is actually empty:
Code:
for entry in "$directory"/* "$directory"/.[!.]* "$directory"/..?*
do
    if [ -e "$entry" ] || [ -L "$entry" ]
    then
        printf "A file couldn't be moved.\n" 1>&2
        exit 1
    fi
done

But I'd like to know if this check is unnecessary. I also thought about checking if every single file has the needed permissions before using the mv command, but I'm afraid that would be superfluous.
Thanks in advance.

Last edited by Cacializ; 07-14-2019 at 04:32 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Using grep - check the permissions of the file searched

What I need to do is: I need to use the grep command to search for pattern in directory and sub-directories. And also I need to show the permission of file been seached by the grep command. Could any one please suggest me? ----------------- $> cat file1.txt A -----------------... (8 Replies)
Discussion started by: Johny001
8 Replies

2. Shell Programming and Scripting

Help needed with searching files and moving them to a different directory

I am new to shell scripting. Can someone help me out with this one please? I need to write a script fot the following scenario: I am currently in /parent directory. I have a set of files in /parent/error_files directory My script has to search for a file in /parent/erratic_files... (1 Reply)
Discussion started by: ss3944
1 Replies

3. Shell Programming and Scripting

How to check file permissions from a script.

hello, I have to write a script to run the other script inside it.So iam planning to write like this? first check the perimissions of the file. Alogorthim ---------- if(!filepermissions == execute) then echo" Permissions denined" else execute the script. file name is : load_mf.sh... (1 Reply)
Discussion started by: rajkumar_g
1 Replies

4. Shell Programming and Scripting

Moving files only by oldest file one at a time

Hi I am want to create a script where the file gets moved from the current folder to a folder transfer based on the oldest first. This script should run one file at a time using a loop. I want it as a loop because I want to do some processing while I have one file. Can anyone guide me on this? (2 Replies)
Discussion started by: chamajid
2 Replies

5. Shell Programming and Scripting

Moving files based on file creation

Hi, I have a directory having so many number of files. Now I want to move the files which are older than one month (lets say) from this directory to another directory (say BKP dir). Simply, if file is olderthan one month move it from source1 dir to BKP1 dir. My file names doesn't have... (7 Replies)
Discussion started by: karumudi7
7 Replies

6. Programming

To check the file permissions using python scripting

Hi, For a particular set of files, am trying to check if they are writable. i.e., checking whether they are having permissions greater than 755. Am able to check this using the statement: "if (os.path.isfile(FILE_PATH) and (os.stat(FILE_PATH).st_mode & 0777) == 0777):" But the problem here... (0 Replies)
Discussion started by: arjun_arippa
0 Replies

7. Shell Programming and Scripting

To check the file permissions using python scripting

Hi, For a particular set of files, am trying to check if they are writable. i.e., checking whether they are having permissions greater than 755. Am able to check this using the statement: "if (os.path.isfile(FILE_PATH) and (os.stat(FILE_PATH).st_mode & 0777) == 0777):" But the problem... (1 Reply)
Discussion started by: arjun_arippa
1 Replies

8. Shell Programming and Scripting

Moving files based on file name

Hi All, I have multiple files in the folder, I want to move those files into the other folder on based of name File names: Template_server1_01==> Template_server1_02==>To one directory /Server1 Template_server1_03==> Template_server2_01==> Template_server2_02==>To one... (9 Replies)
Discussion started by: sharsour
9 Replies

9. UNIX for Dummies Questions & Answers

Is there a way to check when the permissions for the file got changed in AIX

Is there a way to check when the permissions for the file got changed in AIX IS there some file which logs all these details? Best regards, Vishal (4 Replies)
Discussion started by: Vishal_dba
4 Replies

10. Shell Programming and Scripting

Moving alphanumeric files according to the digit in file name

This is the content of my directory c_g_se1_gb.ph c_g_se1_gb.ph_pl_s.t c_g_se1_gb.ph_pl_tr.t c_g_se3_gb.ph c_g_se3_gb.ph_pl_s.t c_g_se3_gb.ph_pl_tr.t c_g_se2_gb.ph c_g_se2_gb.ph_pl_s.t c_g_se2_gb.ph_pl_tr.t c_g_se4_gb-1.ph c_g_se4_gb-1.ph_pl_s.t c_g_se4_gb-1.ph_pl_tr.t... (9 Replies)
Discussion started by: sammy777888
9 Replies
CGCONFIGPARSER(8)						 libcgroup Manual						 CGCONFIGPARSER(8)

NAME
cgconfigparser - setup control group file system SYNOPSIS
cgconfigparser [-h] [-l <filename>] [-L <directory>] [...] OPTIONS
-h, --help Displays help. -l, --load=FILE Parses the control groups configuration file Sets up the control group file system defined by the configuration file and mounts mount points defined by the configuration file. The format of the file is described in cgconfig.conf. This option can be used mul- tiple times and can be mixed with -L option. -L, --load-directory=DIR Finds all files in given directory and parses them in alphabetical order like they were specified by -l option. This option can be used multiple times and can be mixed with -l option. -a <agid>:<auid> defines the default owner of the rest of the defined control group's files. These users are allowed to set subsystem parameters and create subgroups. The default value is the same as has the parent cgroup. -d, --dperm=mode sets the default permissions of a control groups directory. The permissions needs to be specified as octal numbers e.g. -d 775. -f, --fperm=mode sets the default permissions of the control group files. The permissions needs to be specified as octal numbers e.g. -f 775. The value is not used as given because the current owner's permissions are used as an umask (so 777 will set group and others permis- sions to the owners permissions). -s, --tperm=mode sets the default permissions of the control group tasks files. The permissions needs to be specified as octal numbers e.g. -f 775. The value is not used as given because the current owner's permissions are used as an umask (so 777 will set group and others per- missions to the owners permissions). -t <tuid>:<tgid> defines the default owner of tasks file of the defined control group. I.e. this user and members of this group have write access to the file. SEE ALSO
cgconfig.conf (5) Linux 2009-03-16 CGCONFIGPARSER(8)
All times are GMT -4. The time now is 07:23 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy