1、取得/etiantian文件的权限对应的数字(考试题答案系列)

说明:本文为老男孩linux培训某节课前考试试题及答案分享博文内容的一部分,也是独立成题的,你可以点下面地址查看全部的内容信息。
http://oldboy.blog.51cto.com/2561410/791245答题的思维比做题本身更重要,就是老男孩如何想到的解决问题的思路。

1.如何取得/etiantian文件的权限对应的数字内容,如-rw-r--r-- 644,要求使用命令取得644这样的数字。

解答:


实践过程:

[root@oldboy ~]# touch /ett #==>创建测试文件/ett

[root@oldboy ~]# stat /ett #==>通过stat命令可以看到文件的数字权限

File: `/ett'

Size: 0Blocks: 0IO Block: 4096regular empty file

Device: 803h/2051dInode: 98211Links: 1

Access: (0644/-rw-r--r--)Uid: (0/root)Gid: (0/root)

Access: 2012-02-20 08:04:24.000000000 +0800

Modify: 2012-02-20 08:04:24.000000000 +0800

Change: 2012-02-20 08:04:24.000000000 +0800

那么我们如何获得这一文件的数字权限呢?

法一过程:(statsedcut

[root@oldboy ~]# stat /ett|sed -n '4p'#==>首先通过管道把stat结果传给sed处理取出需要的行。

Access: (0644/-rw-r--r--)Uid: (0/root)Gid: (0/root)

[root@oldboy ~]# stat /ett|sed -n '4p'|cut -d "/" -f1 #==>对上面的结果以/线为分割符,然后取第1个字段。这里以斜线分割不是唯一的方法,大家注意下。

Access: (0644

[root@oldboy ~]# stat /ett|sed -n '4p'|cut -d "/" -f1|cut -d "(" -f2 #==>这就是法一答案

#==>对上面的结果以(号为分割符,然后取第2个字段,就会得出我们需要的结果。

0644

特别说明:

1)上题中的sed -n '4p'是取结果的第二行的意思,也可以用笨办法head -4|tail -1替代。例:

[root@oldboy ~]# stat /ett|head -4|tail -1|cut -d "/" -f1|cut -d "(" -f2 #==>法二答案

0644

2)上题中的cut -d "/" -f1|cut -d "(" -f2部分,也可以用awk,sed等命令替代。如例:

[root@oldboy ~]# stat /ett|head -4|tail -1|awk -F "/" '{print $1}'|awk -F "(" '{print $2}'

0644 #==>法三答案,awk法如果大家有不懂的,也不用纠结,本文后面问题里会细讲。

提示::此题考察了大家对stat ,cut,awk,head,tailsed等命令组合用法,有对这些命令还不熟悉的同学,可以分步分批总结下。

注意:敲字符时成对出现的’’,{}内容,最好连续敲完,以免后续落下。

法二过程:(stat

当然还有更简单的方法:

[root@oldboy ~]# stat -c %a /ett

644

注意:如何想到法二的思考过程,比答题更重要。当命令结果包含我们需要的内容的时候,我们要想到是否有具体的参数能够一步达到我们需要的结果。

特别说明:

有关stat -c的用法可以通过stat --helpman statinfo stat,这是所有命令的三大帮助杀手锏,必须要掌握了。

[root@oldboy ~]# stat --help

Usage: stat [OPTION] FILE... #==>这是语法格式

Display file or file system status.

...省略部分...

-f, --file-systemdisplay file system status instead of file status

-c --format=FORMATuse the specified FORMAT instead of the default;

output a newline after each use of FORMAT

...省略部分...

#==>这是可用的参数,如-c

The valid format sequences for files (without --file-system):

#==>这里是对于文件适用的格式,既-c后接的格式。

%aAccess rights in octal #==>8进制形式显示,即为本文的答案

%AAccess rights in human readable form #==>拓展以人类可读的形式显示权限

%bNumber of blocks allocated (see %B)

%BThe size in bytes of each block reported by %b

%dDevice number in decimal

%DDevice number in hex

%fRaw mode in hex

%FFile type

%gGroup ID of owner

%GGroup name of owner

%hNumber of hard links

%iInode number

%nFile name

%NQuoted file name with dereference if symbolic link

%oI/O block size

%sTotal size, in bytes

...省略部分...

本题的拓展部分

[root@oldboy ~]# ls -li /ett

98211 -rw-r--r-- 1 root root 0 Feb 20 08:04 /ett

 

[root@oldboy ~]# stat -c %a /ett

644

[root@oldboy ~]# stat -c %A /ett #==>获取字符权限

-rw-r--r--

[root@oldboy ~]# stat -c %B /ett

512

[root@oldboy ~]# stat -c %b /ett

0

[root@oldboy ~]# stat -c %i /ett #==>inode信息

98211

[root@oldboy ~]# stat -c %n /ett

/ett

[root@oldboy ~]# stat -c %o /ett #==>block size

4096

更多相关文章
  • 1.如何取得/etiantian文件的权限对应的数字内容,如-rw-r--r-- 为644,要求使用命令取得644这样的数字.解答:实践过程:[root@oldboy ~]# touch /ett #==>创建测试文件/ett[root@oldboy ~]# stat /ett #==> ...
  • linux下文件删除的原理精华讲解考试题答案系列
    说明:本文为老男孩linux培训某节课前考试试题及答案分享博文内容的一部分,也是独立成题的,你可以点下面地址查看全部的内容信息.http://oldboy.blog.51cto.com/2561410/7912455.描述linux下文件删除的原理(记时3分钟)<?xml:namespace ...
  • 说明:本文为老男孩linux培训某节课前考试试题及答案分享博文内容的一部分,也是独立成题的,你可以点下面地址查看全部的内容信息.http://oldboy.blog.51cto.com/2561410/791245特别说明:答题的思路技巧可能比做题本身更重要,这也是老男孩特别教导学生的学习方法.7. ...
  • EBB-4、忘记root密码;文件,目录权限
    一.账户操作1.锁定账户:     usermod:     usermod -L afu : 锁定afu用户,该用户将无法登陆系统  注意:需要首先退出root用户,然后登陆afu这个用户,才会出现无法登陆.如果直接在root用户下,              su – afu依然可以切换到该用户 ...
  • 关于RHEL5.1虚拟用户文件删除权限配置答疑
    有网友配置虚拟用户后不能删除文件,提示500 OOPS: bad bool value in config file for哈~细节没注意,我来亲自配置下看看哈~参考:[RHEL5企业级Linux服务攻略]--第6季 Vsftpd服务全攻略之高级配置具体配置如下哈~~1.创建用户数据库(1)创建用户 ...
  • Linux学习:文件特殊权限SUID,SGID,SBIT
    本次记录Linux特殊权限SUID.SGID.SBIT相关知识及使用实例等.由于SUID和SGID涉及到系统安全,所以对它们知识点的掌握尤为重要.关于文件权限的表示方法和解析SUID是Set User ID,SGID是Set Group ID的意思.Linux下可以用ls –l命令来查看文件的权限. ...
  • (s)Suid:当一个文件的属主有s权限,意味着任何用户执行此程序时,其进程的发起着不再是发起者本人,而是以此文件属主的身份来执行此程序.命令chmod u+s file#chmod 4777 file是放在执行权限位的,小写s表示原有属主有执行权限,大写s表示原有属主无执行权限.(s)Sgid:当 ...
  • 一.文件特殊权限s: suid, set uid,属主有s权限,意味着用户在执行此程序时,其进程的属主不再是发起者本人,而是这个程序文件的属主:         s:属主原本有执行权限         S:属主原本无执行权限         chmod u+|-s /path/to/somefile ...
一周排行
  • 小时候有个动画节目叫成语故事365,里面有个成语叫“杞人忧天”,没想到,两年前就真的出现了世界末日之说,当大家都惶恐在玛雅人的预言中时,有人站出来说:所谓的末日论不过是玛雅人的石碑不够了,所以只记载到了2012年12 ...
  • cat 1.txt结果:张三|000001|10张三|000001|20李四|000002|30李四|000002|15解决方法:方法一:awk -F'|' 'ARGIND==1{a[$2]=$0} ARGIND== ...
  • // 个人比较欣赏TechTarget 编辑的专业精神.过去做服务器和存储的时候就非常喜欢看他们的文章.因为刚接触这个领域,对VDI 解决方案的真正价值与未来技术市场走向比较困惑.下面这篇文章写的不错,足以为我这种入 ...
  •   再给服务器添加zabbix监控的时候,发现服务器有个报错"Lack of free swap space on localhost",通过查找得知,在安装服务器的时候忘了划分swap分区.为了 ...
  •   本文是IT职场人生系列的第九篇.   前不久几个朋友去海南玩,因为一位年轻的同事正好在附近出差,就一起去了.这样的一次旅游,几乎会花掉她大半个月的工资,所以引发了对金钱观的思考,简单而言,就是:钱该怎么花?整体比 ...
  • 方法说明append( item )在列表末尾插入(item )count( element )返回element在列表中出现的次数extend( newlist )将newlist的元素插入列表末尾index( e ...
  • 一.前提条件perl-5perl-DBDperl-DBIperl-Config-IniFiles  //读取程序的全局配置文件perl-TimeDateperl-DBD-MySQL二.下载安装#wget http:/ ...
  • 2> go 查看某客票数据库中命名缓冲,得到的结果如下:Cache Name Config Size Run Size Overhead 会话级 > 查询级.对于如何在查询级利用指定的缓冲池,可以查看下面 ...
  • 问题一:   无法画虚线 解决: Paint xuLinePaint = new Paint(); xuLinePaint.setStyle(Paint.Style.STROKE); xuLinePaint.setC ...
  • 公司绝不会告诉你的20大秘密 值得一看很受用1.入职时的工资高低不重要,只要你努力工作你会得到相应待遇的 我估计几乎找过工作的人都听过这句话,当我们确定被聘用跟公司谈工资时,他们都会说“如果以后你业绩突出.努力工作, ...