Linux文本编辑命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux文本编辑命令相关的知识,希望对你有一定的参考价值。
-
cut 命令用来显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容,类似于下的type命令
#其中,cut命令中如果要指定多列,-f1可写为-f1,3,7(逗号隔开即可)
cut -c 仅显示指定字段的内容
cut -d指定字段的分隔符
cut -b 仅显示行中指定直接范围的内容
- umask 命令用来设置限制新建文件权限的掩码。新文件创建时的权限是由掩码决定的。用户每次注册进入系统时,umask命令都被执行, 并自动设置掩码mode来限制新文件的权限。用户可以通过再次执行umask命令来改变默认值,新的权限将会把旧的覆盖掉。
umask 022
设置掩码为022,则创建新文件的默认权限就是777-022为755
即*rwxr-xr-x
umask值存储在/etc/bashrc当中,被所有用户设置使用,存储在~/.bashrc则只针对某用户设置生效
- ACL权限(Access Control List)即访问控制列表。主要是针对单一用户,单一文件或目录进行rwx权限的细部设定。可以针对用户(User)、群组(Group)、默认属性掩码(umask)进行设置。
centos6当中对新建分区开启acl的过程
1.创建分区
fdisk /dev/sda
n回车
回车
+2G回车
w回车
2.同步分区表
partx -a /dev/sda
3.创建文件系统
mkfs.ext4 /dev/sda6
4.开启acl支持
tune2fs -o acl /dev/sda6
5.查看acl
tune2fs -l /dev/sda6 |grep optiongetfacl FILENAME/DIRECTORY
查看文件/目录的ACL属性
setfacl命令是用来在命令行里设置ACL(访问控制列表)。
在命令行里,一系列的命令跟随以一系列的文件名。
-b,--remove-all:删除所有扩展的acl规则,基本的acl规则(所有者,群组,其他)将被保留。
-k,--remove-default:删除缺省的acl规则。如果没有缺省规则,将不提示。
-n,--no-mask:不要重新计算有效权限。setfacl默认会重新计算ACL mask,除非mask被明确的制定。
--mask:重新计算有效权限,即使ACL mask被明确指定。
-d,--default:设定默认的acl规则。
--restore=file:从文件恢复备份的acl规则(这些文件可由getfacl -R产生)。通过这种机制可以恢复整个目录树的acl规则。此参数不能和除--test以外的任何参数一同执行。
--test:测试模式,不会改变任何文件的acl规则,操作后的acl规格将被列出。
-R,--recursive:递归的对所有文件及目录进行操作。
-L,--logical:跟踪符号链接,默认情况下只跟踪符号链接文件,跳过符号链接目录。
-P,--physical:跳过所有符号链接,包括符号链接文件。
--version:输出setfacl的版本号并退出。
--help:输出帮助信息。
--:标识命令行参数结束,其后的所有参数都将被认为是文件名
-:如果文件名是-,则setfacl将从标准输入读取文件名。
setfacl用法()
清除默认权限
setfacl -k file
清除ACL属性
setfacl -b file
acl权限的备份及还原
getfacl file |directory > acl.txt
setfacl --restore acl.txt
-
sort
-n 按数字排列 -r 倒序排列,默认升序 -t 指定分隔符 -k 指定哪一列 -f 忽略大小写 -u 删除重复行
-
uniq
去除连续重复行,往往和sort配合使用,先排序,再去重 -c 显示重复的次数 -d 仅显示重复行 -u 仅显示非重复行
-
diff
diff f1 f2 比较两个文件的不同之处 diff -u f1 f2 > diff.log (此命令可以生成补丁文件,可以用patch打补丁)
-
grep
--color=auto 关键字高亮显示 -v 反向搜索 -i 忽略大小写 -n 显示行号
-c 不显示搜索结果,仅显示匹配的行数
-o 仅显示匹配到的字符串
-q 静默输出
-A # 显示搜索行及其向下相临的#行
-B # 显示搜索行及其向上相临的#行
-C # 显示搜索行及其向上和向下相临的#行
-e char1 -e char2 [-e charN] 多个选项间or关系
-w 匹配整个单词
-E 或egrep 支持扩展正则表达式
-F 或fgrep 不支持正则表达式
-
vim是一款十分强大的文本编辑器,功能繁多熟练掌握则工作效率事半功倍
当执行vim FILENAME时,若文件存在,则直接打开文件;若文件不存在,则直接创建以FILENAME为名的文件同时打开,并且左下方会提示【new file】
如果打开一个已存在的文件则左下方也会有相应提示三种主要模式 命令模式 (default): 移动光标,复制,剪切,粘贴,撤销,重做,搜索,进入其他模式 移动光标: h向左移动 l向右移动 j向下移动 k向上移动 配合#h,#l,#j,#k可一次性移动#个字符 w跳到下一个单词的词首 b跳到上一个单词的词首 H跳到当前页首 M跳到当前页中 L跳到当前页尾 gg跳到整个文件的首行 G跳到整个文件的末行 ^移到非空格开头的行首 $移到行尾 #G跳到指定行,或退出模式下:# Ctrl+f: 向文件尾部翻一屏 Ctrl+b: 向文件首部翻一屏 Ctrl+d: 向文件尾部翻半屏 Ctrl+u:向文件首部翻半屏 r替换一个字符 d剪切 dd剪切当前行 #dd剪切#行 dw剪切一个单词 d^从光标所在处剪切到行首 d$或D从光标所在处剪切到行尾 y复制 yy或Y复制当前行 #yy复制#行 yw复制一个单词 y^从光标所在处复制到行首 y$从光标所在处复制到行尾 p粘贴 p当前行向下粘贴或光标所在处向后粘贴 P当前行向上粘贴或光标所在处向前粘贴 替换模式 R进入 Esc退出 从命令模式进入插入模式 i光标在哪从哪进入 I光标移至行首同时进入插入模式 a光标向后移一个字符同时进入插入模式 A光标移至行尾同时进入插入模式 o光标向下插入一新行同时进入插入模式 O光标向上插入一新行同时进入插入模式 插入模式:文本编辑 退出模式:保存、退出 w:保存 q:退出 q!强制退出 wq或x 保存并退出 w!当前用户为该文件所属人时,如果该文件为read only,可加上!强制保存。 在退出模式下返回命令模式EscEsc或Enter r /path/filename 读取另一个文件的内容并将输出结果写入文件 w /path/filename 另存为(确认当前用户对该路径中的最后一级目录有wx权限) ! command 执行某条命令,将输出结果显示在终端上 r! command 执行某条命令,在光标所在的当前行向下插入新行并将输出结果输入 .! command 执行某条命令,替换光标所在的当前行并将输出结果输入
以上是关于Linux文本编辑命令的主要内容,如果未能解决你的问题,请参考以下文章