学习鸟哥私房菜 记录关键词-4 2013-12-27

36:数据流重导向

    <   <<     >或1>  >>或1>>       2>  2>>

    执行命令:从文件或者设备读取数据,经处理后输出到设备或者文件

    例如:find /home -name testing> list_right 2>list_error

         find /home -nametesting > list_right 2>/dev/null

         find /home -nametesting > list_right 2>&1    ;输出到同一个文件

37:/dev/null输入到这个设备的数据都会消失

38:cat > catfile

    使用cat在键盘上输入一些数据到文件catfile中,ctrl+D结束输入

    cat > catfile < somefile

    使用somefile文件内容作为输入,输出为catfile文件

    cat > catfile <<eof

    <<表示“输入结束的输入字符”

39:sync;syns;shutdown -h now

    ls /tmp && touch /tmp/test

    ls /tmp/1 || touch /tmp/1

40:ls /tmp/1 &&echo “exist” || echo “not exist”  ;可以

ls /tmp/1|| echo “not exist” && echo “exist”   ;不可以

    命令是一个一个往下执行的

41:管道命令  pipe    |

    管道的前后都要是命令,前一个命令的输出为后一个命令的输入:command1 | command2 |command3

    管道命令| 仅能够处理通过前一个命令传来的正确信息,也就是标准输出的信息,没有能力直接处理标准错误。

42:基本的管道命令

    cut     grep

43:排序命令

    sort:排序

    uniq:重复数据只显示一次

    wc:计算输出消息的信息

44:tee:双向重导向

45:tr    col    join  paste    expand命令

46:拆分命令   split

47:参数代换  xargs

48: - 可代替stdin stdout

 

--end-11

 

 

第十二章  正则表达式

1:正则表达式:也成常规表达式,是通过一些特殊字符的排列,用以搜索/替换/删除一行或多行字符串。简言之,正则表达式就是在字符串处理中的表达式

2:正则表达式要运用在支持正则表达式的程序/命令上

    如:grep “mail” /etc/rc.d/*

3:简单的字符串选取工具程序grep

    grep [-acinv] ‘搜索字符串’ filename/目录

    -c :计算找到“搜索字符串”的次数

    -i :忽略大小写

    -n :输出行号

    提取整行

    例如:grep -n ‘g..d’filename     ;  .表示绝对有一个任意字符

         grep -n ‘o*’filename     ;  显示整个内容   !!!!!!!!!!!!!! o*表示“空字符或一个以上的o”

4;格式化显示:printf   

    printf  ‘打印格式’ 实际内容

    如:printf ‘%s\t %s\t %s\t \n’`cat printf.txt`

5;sed  可以分析标准输入的数据,处理完再输出到标准输出

    可以替换、删除、新增、选取特定行等处理功能

    awk 类似sed

6:文件数据比较

    文件\目录比较  diff       patch与diff密不可分

    文件比较  cmp

7:文件打印准备  pr

 

 

--end-12

 

 

第十三章   学习Shell 脚本

 

--end-13

 

 

第十四章  linux账户与身份管理

1:linux用户必定对于一个ID,ID与账户对应关系在/etc/passwd中

2:每个用户至少有两个ID,一个是用户ID(User ID,简称UID),一个是用户组ID(Group ID,简称GID)

3:文件就是利用UID和GID来识别拥有者和用户组的,每个文件都有UID和GID.

4:linux用户登录的过程

    当我们的以telnet或者ssh登录主机时,会出现login画面,然后输入账户与密码

    linux先找到/etc/passwd是否有这个账号?没有退出,有则会将该账号对应的UID和GID读出,并将家目录与shell设置读出

    核对密码表,linux会进入/etc/shadow中查找对应账号与UID,核对密码是否相符,若相符,进入shell控制阶段

所以:备份linux账号时:/etc/passwd和/etc/shadow这两个文件必须要。

5:/etc/passwd 文件中可以修改用户的家目了,用户默认的shell

6:/etc/shadow  文件中若删除密码字段,则登陆不需要密码

7:用户组文件 /etc/group

    如:root:x:0:root

    用户组名为第一个字段,第二个字段用户组密码,第三个字段为用户组ID,第四个字段为这个用户组中的用户,可以通过“,账户名”来添加用户组的用户

8:一个用户可以加入到若干个用户组中

9:创建用户时会自动生成一个用户组,为此用户的初始化用户组

    如想给此用户在加用户组,则在/etc/group中添加

    对于具有多个用户组的用户,有这几个用户组的权限。对于此用户新创建的文件,此文件的用户组是谁?当前有效用户组。

10:本用户所在的用户组用  groups可获得,第一个就是有效用户组。

更改有效用户组:newgrp 用户组  ;前提是此用户是这个用户组的,会以另外一个shell登录。

如果此用户不是这个用户组的,能都登录到这个用户组呢?此时要具备两个条件:1:用户组密码栏是合法的,就是不用!开头。2:用户组中需有root

10:/etc/gshadow最大的作用是,让那些不在用户组的成员临时加入改组。不过使用的少,还是直接将用户加入该用户组就行了。

11:账户管理

    linux中新增一个用户:useradd -m

    修改密码  passwd username

    usermod 可以修改账户信息,类似的有chsh,chfn,finger

    userdel -r 删除用户

    id  查看当前用户的ID信息

12:新增删除用户

    用户组的内容与/etc/group和/etc/gshadow文件相关

    group新增用户组

    groupmod

  groupdel :不能删除有用户的用户组

gpasswd  :可以将用户组的管理权让给某个用户

newgrp

13:linux基本可以设置任何样式的密码,用户自能修改自己的密码,修改密码用passwd

14:su -

    su -l username

15;sudo 执行sudo时系统会查看/etc/sudoers文件,看看当前用户是否具有sudo权限

    且必须sudo用户组中有该成员

    用sudo用户的命令可以被限制

    编辑/etc/sudoers用visudo

 

 

--end-14

 

 

第十五章  linxu磁盘配额

1:磁盘配额就是限制用户使用磁盘的容量。

2:磁盘配额的限制如下:

    针对整个分区;核心必须支持磁盘配额功能;磁盘配额只对一般用户有效,对root无效

3:磁盘配额对分区的限制有:

    最低限制;最高限制;宽限时间

    0M------------------------|最低限制25M|25M-------|最高限制30M|30M

4:基本的磁盘配额命令

    查询命令:quota  quotacheck quotastats  warnquota  repquota

    编辑磁盘配额命令  edquota setquota

 

 

--end-15

 

 

第十六章    例行性命令的建立

1:两种工作任务分配方式:例行性,突发性,在linux中用at cron实现

2:at:工作只执行一次就从linux系统任务分配中取消

    cron:工作将每个一段时间执行一次

3:linux系统常见的例行性任务

4:at  : linux中支持服务atd  ,就可以用at命令 ,默认没打开,sudo service atd restart

    /etc/at.allow和/etc/at.deny是设置哪些用户可以使用at功能的文件

    既然是任务分配,就要有写入工作的记录文件,at命令可以来写入工作记录文件,工作记录文件默认放在/var/spool/at/中,写入at工作记录文件后,该工作就进入任务分配中并等待执行。

5:at [-m] TIME

    TIME有格式要求

    如:at now  + 5 minutes

    at要进行工作任务分配,系统会将at独立出Bash,直接叫个atd服务来接管,可以立即离线。

    可利用atq和atrm将at任务删除

6:cron服务来控制循环执行的例行性命令,这个服务默认启动。linux提供给用户的例行性工作命令crontab;

/etc/cron.allow和/etc/cron.deny是设置哪些用户可以使用corntab功能的文件;

当用户使用crontab命令建立工作任务分配后,该项工作就会被记录在/var/spool/cron/中,而且是以账号来识别的。

cron执行的每一项工作都会记录到/var/log/cron中

7:crontab [-u username] [-l|-e|-r]

    例如:crontab -e    ;crontab -e是针对用户的cron来设计的

    系统的例行性任务可以直接编辑/etc/crontab文件。

    cron服务每分钟回去读取一次/etc/crontab与/var/spool/cron中的数据内容。

 

 

--end-16

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值