6、将输出重定向到文件或程序
标准输入、标准输出和标准错误
一个运行的程序,需要从某个位置读取输入并将输出写入屏幕或者文件,从shell提示符运行的命令通常会从键盘中读取其输入,并将输出发送到终端窗口。
进程使用称为文件描述符的编号通道来获取输入并发送输出。所有进程在开始时需要三个文件的描述符,标准输入stdin(通道0)从键盘读取输入,标准输出stout(通道1)将正常输出发送到终端,标准错误stderr(通道2)将错误消息发送到终端。如果程序打开链接至其他文件的单独链接。则可能要使用编号的文件描述符。
重定向输出到文件:I/O重定向将默认目标位置替换为代表文件或设备的文件名
>aa 重定向stdout 以覆盖文件
>>aa 重定向stdout 以附加到文件
2>AA 重定向stderr 以覆盖文件
2>/dev/null 将stderr错误消息重定向到/dev/null,从而将它丢弃
2>AA 2>&1 或 &>aa 重定向stdout和stderr以覆盖同一个文件
>>AA 2>&1 或 &>>AA 重定向stdout和stderr以追加到同一个文件
7、用户和组
用户:系统中每个进程都作为一个特定的用户运行。每个用户会一个特定的用户所有。对文件和目录的访问都受到用户的限制。
Id 显示当前已登录用户的信息
Ls -l 查看与某一文件或目录项关联的用户。
Ps au 查看与某一终端相关连的所有进程信息,及与进程相关连的用户
组:与用户一样,组也有名称和编号,本地组在/etc/group中定义
主要组:每个用户有且只有一个主要组,通常用户创建的新文件为主要组所有。新建用户的主要组是名称与用户相同的新建组。用户专用组的唯一成员。
补充组:用户可以是零个或多个补充组的成员。
ROOT用户:大多数操作系统具有某种类型的超级用户,既具有系统的全部权限的用户,在linux中,该用户就是root用户,该用户的特权高于文件系统上的一般权限,用于管理系统。
大多数用户都仅受root控制,但USB设备等可移动的设备就可以有一般用户控制。
Su - 切换用户
Sudo 可以使用户根据/etc/sudoers文件中的设置,而被允许以root或其他用户身份运行命令,sudo要求用户输入其自己的密码以身份验证,而不是输入他们正在尝试访问的账户的密码。不需要交出root密码。
Useradd 创建用户
Useradd -g 为用户制指定主要组。
Useradd -G 为用户指定一组补充组
Useradd -a 将用户附加到所给的补充组而不该将该用户从其他组删除
Useradd -d 为用户指定新的主目录
Useradd -m 将目录移到新的位置与-d搭配使用
Useradd -s 为用户账户指定新的登陆shell
Useradd -L 锁定用户账户
Useradd -U 解锁用户账户
Passwd xx 给用户xx给密码
Groupadd 创建组
Groupadd -g 指定具体GID
Groupadd -n 制定新的名称
Groupadd -r 使用/etc/login.defs 文件所列有效系统的GID编号范围内的GID创建系统组。
Groupdel 删除组
Usermod 变更组成员资格
Usermod -g 改变用户的主要组
Usermod -aG aa bb 将用户aa添加到补充组bb
原文:http://10896557.blog.51cto.com/10886557/1716897