Shell script to print/check directory permissions on Unix
Here is a small shell script which will print a directory permissions and other details... Basically I want to check whether a directory has the read write permissions for the user?
I am using here a simple commonsense that a read write permissions will make the octal permissions of it more than 600 for sure .. that's it.
d rwx rwx rwx
d rw- --- ---
420 000 000
6 0 0
rwx r-x r-x
7 5 5
So it should be always greater than 600 for a directory to have read write permissions always.
Basically I'm using stat tool to find the permissions of a dir
Ex : check stat for /opt/a
nc184120:/opt # stat /opt/a
File: `/opt/a'
Size: 48 Blocks: 0 IO Block: 4096 directory
Device: 802h/2050d Inode: 101912 Links: 2
Access: (0155/d--xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2010-07-01 22:53:59.845347264 -0700
Modify: 2010-07-01 01:45:43.769709152 -0700
Change: 2010-07-01 01:46:14.790993200 -0700
So the above script doesn't have read or write permissions.
Shell script :
nc184120:/opt # cat per.sh
dir="/opt/a"
echo "Checking the permissions for $dir"
stat $dir
echo "##############################################"
if [ `stat -c "%a" $dir` -ge 600 ] ; then
echo "$dir has Read Write permissions."
else
echo "$dir has no read write permissions."
fi
dir="/opt/a"
echo "Checking the permissions for $dir"
stat $dir
echo "##############################################"
if [ `stat -c "%a" $dir` -ge 600 ] ; then
echo "$dir has Read Write permissions."
else
echo "$dir has no read write permissions."
fi
and the output looks like below ...
nc184120:/opt # ./per.sh
Checking the permissions for /opt/a
File: `/opt/a'
Size: 48 Blocks: 0 IO Block: 4096 directory
Device: 802h/2050d Inode: 101912 Links: 2
Access: (0155/d--xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2010-07-01 22:53:59.845347264 -0700
Modify: 2010-07-01 01:45:43.769709152 -0700
Change: 2010-07-01 01:46:14.790993200 -0700
##############################################
/opt/a has no read write permissions.
2 comments to "shell script to print/check directory permissions on Unix"
Post a Comment
Whoever writes Inappropriate/Vulgar comments to context, generally want to be anonymous …So I hope U r not the one like that?
For lazy logs, u can at least use Name/URL option which doesn’t even require any sign-in, The good thing is that it can accept your lovely nick name also and the URL is not mandatory too.
Thanks for your patience
~Krishna(I love "Transparency")
Popular Posts
-
The best solution to know about these init levels is to understand the " man init " command output on Unix. There are basically 8...
-
How to Unlock BSNL 3G data card to use it with Airtel and Vodafone Model no : LW272 ? How to unlock BSNL 3G data card( Model no : LW272 )us...
-
How to transfer bike registration from one State to other (Karnataka to Andhra)?? Most of us having two wheelers purchased and registered in...
-
ఓం శ్రీ స్వామియే శరణం ఆయ్యప్ప!! Related posts : Trip to Sabarimala - Part 1 Trip to Sabarimala - Part 2 Ayappa Deeksha required things...
-
Following are some of interesting blogs I found till now ...please comment to add your blog here. Blogs in English : http://nitawriter.word...
Popular posts
- Airtel and vodafone GPRS settings for pocket PC phones
- Andhra 2 America
- Ayyappa Deeksha required things
- Blogs I watch !
- Captions for your bike
- DB2 FAQs
- Deepavali Vs The Goddes of sleep
- ETV - Dhee D2 D3
- Evolution of smoking in India Women
- How to make credit card payments?
- init 0, init 1, init 2 ..
- Java-J2EE interview preparation
- mCheck Application jar or jad download
- My SQL FAQs
- My Travelogues
- Old is blod - New is italic
- Online pay methids for credit cards
- Oracle FAQs
- Pilgrimages
- Smoking in Indian Women
- Technology Vs Humans
- Twitter feeds for all Telugu stars on single page.
- Unix best practices
- Unix FAQs
Krishna says:
More about stat command you can refer this link ..
More abt stat
Krishna says:
The better solution to know the current dir permissions is this ..
ls -ld | cut -f1 -d" "