Difference between revisions of "File permission demonstration script"
From assela Pathirana
Jump to navigationJump to search
| Line 1: | Line 1: | ||
<pre> | <pre> | ||
#!/bin/bash | #!/bin/bash | ||
fmt="% | fmt="%7s%7s%7s%15s%15s\n" | ||
printf $fmt umask file dirs files dirs | printf $fmt umask file dirs files dirs | ||
while read line | while read line | ||
| Line 24: | Line 24: | ||
will produce the following output: | will produce the following output: | ||
<pre> | <pre> | ||
umask file dirs files dirs | |||
022 759 648 drwxr-xr-x -rw-r--r-- | |||
027 754 643 drwxr-x--- -rw-r----- | |||
002 775 664 drwxrwxr-x -rw-rw-r-- | |||
006 771 660 drwxrwx--x -rw-rw---- | |||
007 770 659 drwxrwx--- -rw-rw---- | |||
077 714 603 drwx------ -rw------- | |||
</pre> | </pre> | ||
Revision as of 04:10, 24 March 2006
#!/bin/bash
fmt="%7s%7s%7s%15s%15s\n"
printf $fmt umask file dirs files dirs
while read line
do
set -- $line
umask $1
touch tempfile
mkdir tempdir
fval=`ls -l tempfile|awk '{print $1}'`
dval=`ls -dl tempdir|awk '{print $1}'`
printf $fmt $1 "$(( 777 - $1 ))" "$(( 666 - $1 ))" $dval $fval
rm -rf temp*
done << EOF
022
027
002
006
007
077
EOF
will produce the following output:
umask file dirs files dirs
022 759 648 drwxr-xr-x -rw-r--r--
027 754 643 drwxr-x--- -rw-r-----
002 775 664 drwxrwxr-x -rw-rw-r--
006 771 660 drwxrwx--x -rw-rw----
007 770 659 drwxrwx--- -rw-rw----
077 714 603 drwx------ -rw-------