linux 笔记--文件管理命令、bash特性、用户权限

  • 查看文本命令:cat more less head tail

  • cat:连接并显示,cat后面可以接多个参数,-n:显示行号,-E显示行结束符$,(windows中的行号是$加回车符,所以windows文件到linux可能会识别不了) -v:显示非打印字符,-A:显示所有字符,注:ctrl+c:中止  shift+pageup(down):有限翻页(显示不完全)

  • 分屏显示:more less

  • more:回车:向下翻页,b:向上翻页 (注:翻页到尾部自动退出文本)

  • less:与man的用法相同,space:向下,b:向上,enter:向下翻行,k:向上翻行 查找:/ 和 ?,(n前一个,N后一个) q:退出,(注:翻到尾页不会自动退出)

  • 分行显示:head tail

  • head:显示前10行(默认为10行),-n:显示多少行,也可以-直接跟数字

  • tail:显示后10行(默认为10行),-f:一直显示最后一行,更新显示程序写入的数据行

  • 文本处理:

  • cut:-d指定字段的分隔符(默认为空格),-f:指定显示的字段如 -f1:第一个字段,-f1,3:第一个和第三个字段,-f1-3:第一个到第三个字段

  • 文本排序:

  • sort:并不影响文本的数据,只修改显示的数据,默认为升序排列,-n:按数值大小排序,-r:降序,-tL字符分隔符,-k:指定段(-k3)以哪个字段为准进行排序,-u:相同内容只显示一个,-f:忽略名字大小写,uniq:报告重复(重复但不相邻的行不认为是重复的),uniq -d:只显示重复的行,-D:显示所有的行数,-C:显示字节数(包括空白字符)

  • 文本统计:

  • wc:统计有多少行、单词、字符,-l:只显示行,-w:只显示单词,-c:只显示字节,-m:只显示字符,-L;最长的一行有多少个字符

  • 字处理:

  • tr:转换或删除字符,tr ‘ab’ ‘AB’把a转换为A,b转换为B,tr -d ‘ab’删除a-b字符集中的所有字符

  • bash及其特性:

  • 每一个shell都是独立的,意识不到其它进程的存在

  • shell和子shell

  • shell可以再次运行一个shell(也可以运行一个shell),所以可以有多个子shell,也可以混合打开不同的shell,pstree查看目前的shell,exit退出当前的shell

  • 命令行编辑:

  • ctrl+a:跳到命令行首,ctrl+e:跳到命令行尾,ctrl+u:向前删除全部,ctrl+k:向后删除全部,ctrl+d:向后删除一个字符,ctrl+l:清屏

  • 命令历史:

  • 自动记录执行过的命令,保存在内存中的一段缓存中,上 下:选择,history:查看历史,-c:清空,-d 8:删除第8行 -d 500 10:删除500行以后10行 -w:将缓存区的命令保存到历史文件中

  • 命令历史的使用技巧:

  • !n:执行第n条命令,!-n:执行倒数第n行,!!:执行上一条命令,!字符串:执行命令历史最近的一个指定字符,!$:引用前一个命令的最后一个参数(cat !$)(cat 按住esc松开再按.)(alt+.)

  • 命令补全:

  • tab 两下tab 命令必须在PATH路径下,

  • 搜索补全:tab两下

  • 路径补全:tab两下

  • 命令别名:alias,在shell中定义的别名仅在当前shell中有用,仅在这次运行中有效,使用原来的命令\commad  \转意   unalias删除别名

  • 命令转换:$(命令 选项 参数)或(单引号`命令 选项 参数`)引用运行的结果

  • 文件名通配:*  ? []

  • *:任意长度的任意字符,?:任意单个字符,[]:指定范围的任意单个字符[a-z][A-Za-z0-9],[^]:匹配指定范围外的单个字符

  • [[:space:]]:所有空白字符    [[:alpha:]]:大小写字母

  • [[:punct:]]:所有标点符号    [[:alnum:]]:数字和大小写字母

  • [[:lower:]]:小写字母        [[:digit:]]:数字

  • [[:upper:]]:大写字母

  • 文件权限:r(可读) w(可写) x(可执行)

  • 目录权限:r(可以使用ls列出内部所有文件)w(可以在此目录创建文件)x(可以切换到目录下,也可以使用ls -l查看内容)

  • 用户:UID  /etc/passwd   用户密码在:/etc/shadow

  • 组:GID  /etc/passwd  组密码在:/etc/gshadow

  • 用户类别:管理员(ID:0) 普通用户(ID:1-65535)(系统用户(1-499) 和 一般用户(500-60000)) (注:系统用户:负责运行某一类服务进程)

  • 组:管理员组 普通组(系统用户组  一般用户组)

  • 用户组类别:每一个用户都有一个基本组(默认组),组里只有一个用户

  • 私密组:创建用户时如果没有为其建立其指定所属的组,系统会自动为其建一个同用户名的组,所以用户的基本组未必是私有组,

  • 基本组之外的组叫附加组和额外组

  • /etc/passwd 格式

  • ACCOUNT:登录名

  • PASSWD:密码  x占位符--shadow

  • UID:用户ID

  • GID:组ID

  • GECOS:注释

  • HOME DIR:家目录

  • SHELL:用户默认shell

  • /etc/shadow

  • 依次为:

  • encrypted password:加密的密码  !!和* 密码锁定,不能登录

  • 上次修改密码的时间

  • 密码最短使用期限

  • 密码最长使用期限

  • 距密码还剩多少天过期

  • 提前多少天发出密码过期警告

  • 暂缓密码过期天数,过期就不能登录了

  • 密码到那天过期

  • 保留字段

  • 加密方法:

  • 对称加密:加密和解密使用同一个密码

  • 公钥加密:每一对密码都成对出现,一个为公密,一个为私密,如以公密加密则以私密解,反之亦然.对称加密是公密加密速度的1000倍

  • 单向加密(散列加密):提取数据特征码,也可以用作对数据的校验

  • 1.雪崩效应:初始数据微小的改变,将引起结果巨大的变化

  • 2.定长输出:常用的有MD5和SHA1

  • useradd:增加用户  passwd 用户名:修改密码(root)

  • 查看useradd的配置文件:

  • /etc/default/useradd

  • groupadd:增加组

  • 查看groupadd的配置文件:

  • /etc/group

  • 格式:

  • 名称  密码(x占位)  组ID  额外组


你可能感兴趣的:(linux)