Sponsored Content
Top Forums Shell Programming and Scripting Finding the directories with same permission and then apply some default UNIX commands Post 302727733 by femchi on Tuesday 6th of November 2012 07:57:38 PM
Old 11-06-2012
Finding the directories with same permission and then apply some default UNIX commands

HI there. My teacher asked us to write a code for this question

Write a Unix shell script named 'mode' that accepts two or more arguments, a file mode, a command and an optional list of parameters and performs the given command with the optional parameters on all files with that given mode.
For example, mode 644 ls -l should perform the command ls -l on all files in the current directory that have mode 644.

I came up with a code as below:

Code:
#!/bin/sh

mode=$1

shift 1 

ls -l |awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/) \
         *2^(8-i));if(k)printf("%0o ",k);print }'|grep "$mode"

how can I ask the code to apply the rest of arguments in the command line to the result of the script?
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

finding directories in UNIX

I am accessing a UNIX server via FTP. I want to retieve a file in a directory. What is the UNIX command that I need to view and retrieve files from a directory? (1 Reply)
Discussion started by: yodaddy
1 Replies

2. Shell Programming and Scripting

Script for parsing directories one level and finding directories older than n days

Hello all, Here's the deal...I have one directory with many subdirs and files. What I want to find out is who is keeping old files and directories...say files and dirs that they didn't use since a number of n days, only one level under the initial dir. Output to a file. A script for... (5 Replies)
Discussion started by: ejianu
5 Replies

3. Shell Programming and Scripting

Re-apply the file permission

Hi, I having an issue with file permission. To fix it I need to read the file's existing permission and re-apply the same permission to the file. This has to be done for every single file under a mount point. I'm novice in scripting. Help me with this in shell scripting. # ls -l /dev/null... (10 Replies)
Discussion started by: agent001
10 Replies

4. UNIX for Dummies Questions & Answers

Do UNIX Permission apply to sub directories?

Hi Guys, Can you tell me if unix permissions apply to sub dirs? Dir is /home/ops/batch/files/all /home is rwxrwxrwx ops is rwxrwxrwx batch is rwxr-wr-w files is rwxrwxrwx all is rwxrwxrwx Having problems writing to all (does the userid nee to be the batch owner... (1 Reply)
Discussion started by: Grueben
1 Replies

5. Shell Programming and Scripting

Apply file permission

Hi All, I would like to read the permission from a file and wanted to apply the same permission to another file. say for example, f1 755 first...i have to read the permission type (which is differ for each file) and need to apply the same for f2 a1 666 i have to get this... (5 Replies)
Discussion started by: karthi_mrkg
5 Replies

6. Shell Programming and Scripting

sed fails to apply substitute commands

I've made a shell script for archiving HTML pages, i.e. making them work offline plus add some features. Here is it: #!/bin/sh if || +/res/+") = "" ]; then echo "Usage: `basename $0` <4chan thread url> <>" exit 0 fi echo "4chan downloader" LOC=$(echo "$1" | sed... (23 Replies)
Discussion started by: Adolf1994
23 Replies

7. Homework & Coursework Questions

Finding the directories with same permission and then apply some default UNIX commands

Write a Unix shell script named 'mode' that accepts two or more arguments, a file mode, a command and an optional list of parameters and performs the given command with the optional parameters on all files with that given mode. For example, mode 644 ls -l should perform the command ls -l on all... (5 Replies)
Discussion started by: femchi
5 Replies

8. Shell Programming and Scripting

awk to match and apply condtions to matchijng files in directories

I am trying to merge the below awk, which compares two files looking for a match in $2 and then prints the line if two conditions are meet. awk awk 'FNR==NR{A=$0;next} ($2 in A){if($10>30 && $11>49){print A}}' F113.txt F113_tvc.bed This code was improved and provided by @RavinderSingh13,... (18 Replies)
Discussion started by: cmccabe
18 Replies

9. Solaris

Giving read write permission to user for specific directories and sub directories.

I have searched this quite a long time but couldn't find the right method for me to use. I need to assign read write permission to the user for specific directories and it's sub directories and files. I do not want to use ACL. This is for Solaris. Please help. (1 Reply)
Discussion started by: blinkingdan
1 Replies
mkproto(8)							    Unsupported 							mkproto(8)

Name
       mkproto - construct a prototype file system

Syntax
       /etc/mkproto special proto

Description
       The  command  is used to bootstrap a new file system.  First a new file system is created using The command is then used to copy files from
       the old file system into the new file system according to the directions found in the prototype file proto.  The  prototype  file  contains
       tokens  separated by spaces or new lines.  The first tokens comprise the specification for the root directory.  File specifications consist
       of tokens giving the mode, the user-id, the group id, and the initial contents of the file.  The syntax of the contents	field  depends	on
       the mode.

       The mode token for a file is a 6 character string.  The first character specifies the type of the file.	(The characters -bcd specify regu-
       lar, block special, character special and directory files respectively.)  The second character of the type is either u or - to specify set-
       user-id	mode or not.  The third is g or - for the set-group-id mode.  The rest of the mode is a three digit octal number giving the owner,
       group, and other read, write, execute permissions.  See

       Two decimal number tokens come after the mode; they specify the user and group ID's of the owner of the file.

       If the file is a regular file, the next token is a pathname whence the contents and size are copied.

       If the file is a block or character special file, two decimal number tokens follow which give the major and minor device numbers.

       If the file is a directory, makes the entries .	and ..	and then reads a list of names	and  (recursively)  file  specifications  for  the
       entries in the directory.  The scan is terminated with the token $.

       A sample prototype specification follows:

       d--777 3 1
       usr  d--777 3 1
	    sh	 ---755 3 1 /bin/sh
	    ken  d--755 6 1
		 $
	    b0	 b--644 3 1 0 0
	    c0	 c--644 3 1 0 0
	    $
       $

Restrictions
       You can only run on virgin file systems.  It should be possible to copy files into existent file systems.

See Also
       dir(5), fs(5), fsck(8), newfs(8)

																	mkproto(8)
All times are GMT -4. The time now is 07:38 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy