文件基本权限,grep awk sed

0805课堂笔记

基本权限

读,写,执行

对于文件的读权限,能否查看文件内容.(文件内容需不需要看,如果是文本就需要看,如果是二进制就不需要看)

对于文件的写权限,能否修改文件内容,不能修改文件名,不能删除文件.(如果需要修改文件内容和文件名,必须在其父目录增加写权限和执行权限)

对于文件的执行权限,能否运行他.

对于目录的读权限,能否查看目录中的文件列表,如果只有读权限,也只能看到文件列表的名称,如果没有执行权限,将只能查看文件列表,而不能查看其内容,所以必须要配合执行权限

大写X权限如果作用在目录上,加上-R选项,将会递归在该目录下的所有文件,这时候X就会判断父目录下的所有文件或目录,如果是目录就会带x权限,如果是文件将会判断其是否有X权限,如果有则会加,没有则无X权限.(大X权限只能使用模式法,不能使用数字法)

数字法读写执行权限对应数字

读read 4

写write 2

执行executo 1

指定文件的所属组所有者

更改所有者

chown

(chown同样可以修改所属组.如:chown :g1 file 偶然

dir 这种写法就可以修改所属组为g1)

更改所属组

chgrp

修改权限命令

chmod

新建文件的权限由umask决定

root的umask 022

user:002

越大的umask值权限越小.

文件的默认权限

file default = 666-umask

奇数+1

如果是奇数将会屏蔽不掉x权限,而umask的作用就是为了屏蔽掉x权限.

目录的默认权限

dir default = 777-umask

umask的定义可以在家目录下的.bash_profile或.bashrc中

全局定义在/etc/bashrc或/etc/profile

chattr

+i 不能更改或删除

+a 只能增加

+A Access访问时间锁定

lsattr

查看文件附加权限

特殊权限

suid 工作在二进制文件,必须是文件,不能是目录(因为如果工作在目录将没有意义),普通用户运行这个文件将会继承文件所有者的身份,所以所有者身份必须带有x权限.

sgid 可以作用与文件或者目录,作用在文件上跟suid差不多,但是继承的是文件所属组的权限,作用在目录上的话,

sticky可以作用与目录上,其作用就是只有root和普通用户才能删除目录中所有者是自己的文件.

(文件拥有Suid,Sgid,Skicky位时,必须拥有X权限,如果没有,将会显示大写的SST,因为如果没有那么suid和sgid,skicy将没有意义)

文件权限的应用顺序

所有者,自定义的ACL记录(自定义用户,自定义组),group(定义了ACL之后组就是mask),other

访问控制列表(ACL)

getfacl file|directory 查看文件或目录的ACL权限

setfacl –m u:wang:rwx file | directory 增加文件用户wangACL权限

setfacl –Rm g:sales:rwX directory 递归ACL权限给sales组到这个目录

setacl –M file.acl file|directory 通过文本模式增加ACL权限给文件或目录

setfacl –m g:salegroup:rw file:directory 增加文件或目录salegroup组的ACL权限

setfacl –m d:u:wang:rx directory 增加某个目录下新建文件默认的ACL权限是rx

setfacl –x u:wang file |directory 根据指定ACL权限来删除

setfacl –X file.acl directory 通过文本模式删除acl权限

setfacl –b file|directory 清空所有acl权限和记录

文本处理工具

抽取文本内容:less和cat

more:分页查看文件

more [OPTIONS…]FILE…

-d 显示翻页及退出提示

less:一页一页地查看文件或STDIN输出

查看时有用的命令包括

/文本 搜索 文本

n/N 跳到下一个 or 上一个匹配

less 命令是man命令使用的分页器

文件查看命令:cat,tac,rev

-E 显示行结束符$

-n 对显示的每一行进行编号

-A 显示所有控制符 是-vET的组合

-b 非空行编号

-s 压缩的连续的空行成一行

-T 查看Tap符号^I

-v 查看windows下的回车^M

tac 按行来倒置显示

rev 按行来反向显示每一个字符

如: cat f1

1234

abcd

tac f1

abcd

1234

rev f1

4321

dcba

hexdump 查看文件十六进制编码

文件截取:head和tail

head 查看文件内容前几行

head –n 3 查看内容前3行

tail –n 3 查看内容后3行

不带选项的默认查看前10行或后10行

tail –f 跟踪显示文件新追加的内容,常用日志监控(缺点无法在进行其他的工作)

在后面增加&可以在后台执行

tail –n 0 var/message &

fg将后台执行的命令放到前台来关闭他

-c 显示最后几个字节

按列抽取:cut

cut [OPTION…] [FILE…]

-d DELIMITER:指明分隔符,默认tab

-f FILEDS:

:第#个字段

,#[,#]:离散的多个字段,例如1,3,6

-#: 连续的多个字段,例如1-6

-c 按字符切割

–output-delimiter=STRING知道你跟输出分隔符

显示文件或STDIN数据的指定列

cut –d: -f1 /etc/passwd

取passwd文件中以:分隔符取第一列内容

cat /etc/passwd | cut –d: -f7

取passwd文件中以:分隔符第七列内容

cut –c2-5 /usr/share/dict/words

取words 文件中 字符2-5列的内容

paste 合并两个文件同行号的列到一行

paste [OPTION]… [FILE]…

-d 分隔符:指定分隔符,默认用TAB

paste f1 f2

-s: 所有行合成一行显示

paste –s f1 f2

文本数据的统计工具

wc(word count)

-m 统计字符

整理文本:sort

把整理过的文本显示在STDOUT,不改变原始文件

sort [options] files

常用选项

-r 执行反方向(由上至下)整理

-n 执行按数字大小整理

-f 选项忽略(fold)字符串中的字符大小写

-u 选项(独特,unique)删除输出中的重复行

-t c 选项使用c作为字段界定符

-k X 选项按照使用c字符分隔的X列来整理能够使用多次

uniq命令:从输入中删除重复的前后相接的行

uniq [OPTIONS]… [FILE]…

-c 显示每行重复出现的次数

-d 仅显示重复过的行

-u 仅显示不曾重复的行

常和sort命令一起配合使用:

sort userlist.txt | uniq –c

比较文件:diff和patch

diff 命令的输出被保存在一种叫做”补丁”的文件中

使用-u 选项来输出”同意的(unifed)”diff格式文件,最适用于补丁文件

patch 命令复制在其他文件中进行的改变(要谨慎使用!)

适用-b 选项来自动备份改变了的文件

diff –u foo.conf-broken foo.conf-works > foo.patch

patch –b foo.conf-broken foo.patch

按关键字抽取:grep

linux上文本处理三剑客:grep,sed,awk

grep:文本过滤(pattern)工具;

gred,egrep,[fgrep(不支持正则表达式搜索)]

正则表达式

REGEXP:由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义.而表示控制或通配的功能

程序支持:grep,vim,less,nginx等

分两类:

基本正则表达式: BRE

扩展正则表达式:ERE

grep –E,egrep

正则表达式引擎:

采用不同算法,检查处理正则表达式的软件模块

PCRE(Perl Compatible Regular Expressions)

元字符分类:字符匹配,匹配字数,位置锚定,分组

man 7 regex

grep的工具名Global search Regular expression and Printout the line (全局搜索正则表达式并且打印出相印的行)

作用:文本搜索工具,根据用户指定的”模式”对目标文本逐行进行匹配检查:打印匹配到的行;

模式:由正则表达式字符及文本字符所编的过滤条件

grep [OPTIONS] PATTERN[FILE…]

grep rot /etc/passwd

grep “$USER”/etc/passwd

grep ‘$USER’/etc/passwd

grep whoami /etc/passwd

-v 显示不能够被patern匹配到的行

-I 忽略字符大小写

-n 显示匹配到的行号

-c 统计匹配的行数

-o 仅显示匹配到的字符串

-q 静默模式,不输出任何信息

grep –q root /etc/passwd

找到找不到都不显示,配合echo $? 使用,如果显示0说明找到,如果显示为1说明没找到

-A #:after,后#行

-B #:before,前#行

-C #:context,前后各#行

-e 实现多个选项间的逻辑or关系

grep –e cat -e dog file

-w整行匹配整个单词

-E 使用ERE

字符匹配:

. :匹配任意单个字符

[:digit:][:lower:][:upper:][:alpha:][:alnum:][:punct:][:space:]

匹配次数:用在要指定次数的字符后面,用于指定前面的字符要出现的次数

*: 匹配前面的字符一次,包括0次

贪婪模式:尽可能长的匹配

.*:任意长度的任意字符

?:匹配其前面的字符0或1次

+:匹配其前面的字符至少1次

{n}:匹配前面的字符n次

{m,n}:匹配前面的字符至少m次,至多n次

{,\n}:匹配前面的字符至多n次

{n,}:匹配前面的字符至少n次

sed:stream editor,文本编辑工具

awk: linux上的实现gawk,文本报告生成器

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,884评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,755评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,369评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,799评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,910评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,096评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,159评论 3 411
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,917评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,360评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,673评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,814评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,509评论 4 334
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,156评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,882评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,123评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,641评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,728评论 2 351

推荐阅读更多精彩内容