Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Add permissions to a particular file Post 302176798 by bakunin on Wednesday 19th of March 2008 08:14:52 AM
Old 03-19-2008
I think "umask" is a completely wrong direction to go to here.

ou can use "chmod" to change the properties of a single file, yes? But you do not know when this file appears because it is created by a "black-box"-script, right?

OK, first solution: you create a wrapper script for the script creating the file so you can react upon it being finished. The black-box-script is to be only executed from this wrapper script:

Code:
#! /bin/ksh

/path/to/the/unknown/script
chmod 646 /file/created/by/this/script

exit 0

Second solution: If the first solution is for any reason not possible you will have to watch for the file appearing and then change its filemode, right? Well, let a script do this somewhat boring task:

Code:
#! /bin/ksh

while : ; do
     if [ -f /file/created/by/script ] ; then
          chmod 646 /file/created/by/script
     fi
     sleep 30
done

exit 0

Save this script to a file, and execute it in background. It will have a look every 30 seconds if the file exists and if it does it will "chmod" it. 30 seconds is completely arbitrary, change that to your needs. If you do not need such a high resolution in time you could use cron instead of a "while"-loop:

Code:
# cat cronscript.sh
#! /bin/ksh

if [ -f /file/created/by/script ] ; then
     chmod 646 /file/created/by/script
fi

exit 0

# crontab -l

<...snipped...>
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /path/to/cronscript.sh

This will execute cronscript.sh every five minutes if this is enough for you. Generally speaking the lesser the frequency is the less stress it puts onto the machine, so "every 10 minutes" is better than "every 5 minutes", etc.

I hope this helps.

bakunin
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

File permissions

Is there any way that I can use the ls command to view the permissions that a group has on a file. I know ls -l file1 will list all the permissions for file1. Would I have to use the following command: ls -l file1 Then grep or sed the output to retrieve what permissions the group has. (5 Replies)
Discussion started by: beginner1
5 Replies

2. Cybersecurity

help with file permissions

Every time I copy files to a directory I am unable to edit the files. Why? The user is part of the group that has permissions to edit. The user can create and delete files but cannot edit files that are copied to the directory? :confused: (3 Replies)
Discussion started by: bbbngowc
3 Replies

3. HP-UX

To give the "unzip" permissions & "create" file permissions

Hi, I am a Unix Admin. I have to give the permissions to a user for creating new file in a directory in HP-Ux 11.11 system since he cannot able to create a new file in the directory. Thanks in advance. Mike (3 Replies)
Discussion started by: Mike1234
3 Replies

4. Shell Programming and Scripting

file permissions

Hi all, My UNIX box is HP UX - 11.11. I have got a basic doubt. What are the global permissions for a file and directory? I set the mask as 111 in my .profile. When I create a new file, it gets created withe -rw-rw-rw- permissions. A directory is created with drw-rw-rw- permissions. So, i... (7 Replies)
Discussion started by: ranj@chn
7 Replies

5. Shell Programming and Scripting

Retain file permissions when saving .sh file from internet [OS X]

Hello. I have written a bash script that I am sharing with an OS X community I am a member of. The purpose of the script is to execute a series of commands for members without them having to get involved with Terminal, as it can be daunting for those with no experience of it at all. I have renamed... (4 Replies)
Discussion started by: baza210
4 Replies

6. UNIX for Dummies Questions & Answers

File permissions

What command can i use to make sure that i cannot delete a file called backup (which i own) without affecting other permissions? seems simple dont know how i forgot. :mad: ---------- Post updated at 07:59 PM ---------- Previous update was at 06:34 PM ---------- anyone ??? ----------... (6 Replies)
Discussion started by: ink
6 Replies

7. Solaris

add a ftp user with read and write permissions on a directory

hi all how I can create an ftp user in solaris 10 and have read and write permission on a directory. Thanks. (1 Reply)
Discussion started by: luisfja
1 Replies

8. Shell Programming and Scripting

ksh; Change file permissions, update file, change permissions back?

Hi, I am creating a ksh script to search for a string of text inside files within a directory tree. Some of these file are going to be read/execute only. I know to use chmod to change the permissions of the file, but I want to preserve the original permissions after writing to the file. How can I... (3 Replies)
Discussion started by: right_coaster
3 Replies

9. Shell Programming and Scripting

Changing file permissions of a file created by another user

Hi, I have used expdp for datapump. The .dmp file is created by the "oracle" user. my requirement is to make a zipped file of this .dmp file. What i am trying to do is change the permissions of this .dmp file from 0640 to 0644 and then do a gzip and zip it. Is there any way i can change... (3 Replies)
Discussion started by: qwertyu
3 Replies

10. UNIX for Beginners Questions & Answers

Command to change add permissions for a new user to all files in all subfolders and folders

Hi there! I'm new to Unix and haven't done command line stuff since MS-Dos and Turbo Pascal (hah!), I would love some help figuring out this basic command (what I assume is basic). I'd like to add a User to the permissions of all files in a folder and all files in all subfolders, as well... (9 Replies)
Discussion started by: Janjbrt
9 Replies
chmod(1)						      General Commands Manual							  chmod(1)

NAME
chmod - change file mode access permissions SYNOPSIS
symbolic_mode_list file ... Obsolescent form numeric_mode file ... DESCRIPTION
The command changes the permissions of one or more files according to the value of symbolic_mode_list or numeric_mode. You can display the current permissions for a file with the command (see ls(1)). Only the owner of a file, or a user with appropriate privileges, can change its mode. Only a user having appropriate privileges can set (or retain, if previously set) the sticky bit of a regular file. If the sticky bit is set on a directory, files inside the directory may be renamed or removed only by the owner of the file, the owner of the directory, or the superuser (even if the modes of the directory would otherwise allow such an operation). In order to set the set-group-ID bit, the group of the file must correspond to your current group ID. If is used on a symbolic link, the mode of the file referred to by the link is changed. Options The command recognizes the following options: Preserve any optional access control list (ACL) entries associated with the file (HFS file systems only). By default, in conformance with the IEEE Standard POSIX 1003.1-1988, optional HFS ACL entries are deleted. For JFS ACLs, this option has no effect, because optional JFS ACL entries are always preserved. For information about access control lists, see acl(5) and aclv(5). Recursively change the file mode bits. For each file operand that names a directory, alters the file mode bits of the named directory and all files and subdirecto- ries in the file hierarchy below it. Operands The command recognizes the following operands: file Targe file for which the permissions are changes. numeric-mode Numeric value used to determine permission on a specified file. See the section for more information. symbolic-mode-list List of operations used to determine permissions on a specified file. See the section for more information. Symbolic Mode List A symbolic_mode_list is a comma-separated list of operations in the following form. Whitespace is not permitted. [who]op[permission The variable fields can have the following values: who One or more of the following letters: Modify permissions for user (owner). Modify permissions for group. Modify permissions for others. Modify permissions for all users is equivalent to op Required; one of the following symbols: Add permission to the existing file mode bits of who. Delete permission from the existing file mode bits of who. Replace the existing mode bits of who with permission. permission One or more of the following letters: Add or delete the read permission for who. Add or delete the write permission for who. Add or delete the execute file (search directory) permission for who. Add or delete the set-owner-ID-on-file-execution or set-group-ID-on-file-execution permission for who. Useful only if or is expressed or implied in who. Add or delete the sticky bit permission. Useful only if is expressed or implied in who. See chmod(2). Conditionally add or delete the execute/search permission as follows: o If file is a directory, add or delete the search permission to the existing file mode for who. (Same as o If file is not a directory, and the current file permissions include the execute permission displays an or an for at least one of user, group, or other, then add or delete the execute file permission for who. o If file is not a directory, and no execute permissions are set in the current file mode, then do not change any execute permission. Or one only of the following letters: Copy the current user permissions to who. Copy the current group permissions to who. Copy the current other permissions to who. The operations are performed in the order specified, and can override preceding operations specified in the same command line. If who is omitted, the and permissions are changed for all users if the changes are permitted by the current file mode creation mask (see umask(1)). The and permissions are changed as if was specified in who. Omitting permission is useful only when used with to delete all permissions. Numeric Mode (Obsolescent) Absolute permissions can be set by specifying a numeric_mode, an octal number constructed from the logical OR (sum) of the following mode bits: Miscellaneous mode bits: Permission mode bits: EXTERNAL INFLUENCES
Environment Variables determines the language in which messages are displayed. If is not specified or is null, it defaults to the value of If is not specified or is null, it defaults to (see lang(5)). If any internationalization variable contains an invalid setting, all internationalization variables default to See environ(5). International Code Set Support Single- and multibyte character code sets are supported. RETURN VALUE
Upon completion, returns one of the following values: Successful completion. An error condition occurred. EXAMPLES
Deny write permission to others: Make a file executable by everybody: Assign read and execute permission to everybody, and set the set-user-ID bit: Assign read and write permission to the file owner, and read permission to everybody else: or the obsolescent form: Traverse a directory subtree making all regular files readable by user and group only, and all executables and directories executable (searchable) by everyone: If the current value of is displays do not change write permission for group) and the current permissions for file are displayed by as then the command sets the permissions to displayed by as If the current value of is displays do not change write permission for group) and the current permissions for file are displayed by as then the command sets the permissions to displayed by as DEPENDENCIES
The option causes to fail on file systems that do not support ACLs. AUTHOR
was developed by AT&T and HP. SEE ALSO
chacl(1), ls(1), umask(1), chmod(2), acl(5), aclv(5). STANDARDS CONFORMANCE
chmod(1)
All times are GMT -4. The time now is 04:07 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy