rpm包仅用于 redhat suse redflag
若是源代码包的话,那就都适用
linux下面的备份,差不多就是用tar打包

tar命令
用途:制作归档文件,释放归档文件
格式:tar 【选项】... 归档文件名 源文件或目录
      tar 【选项】... -C 建包或解包时进入指定的相对路径
tar cjvf ds.tar.bz2 file1 file2 dir1 使用bzip2标准压缩file1 file2 dir1包名为ds.tar.bz2
tar czvf ds.tar.gz file1 file2 dir1  使用gzip标准压缩file1 file2 dir1包名为ds.tar.gz
tar tvf ds.tar.gz  查看压缩文件ds.tar.gz的内容
tar xvf ds.tar.gz  -C /tmp 将ds.tar.gz释放到tmp文件夹下面去
-c:建立压缩包
-C:建包或解包时进入指定的相对路径
-x:解压文件
-t:查看压缩文件
-z:使用gzip标准进行压缩、解压
-j:使用bzip2标准进行压缩、解压
-v:显示压缩解压过程
-f:后面紧跟压缩文件名称
-p:使用原文件的原来属性
-P:使用绝对路径(最好不用)
--exclude file:压缩过程中排除file(也可以是目录)
扩展:
tar cjvf ds-`date+%F`.tar.bz2 file1 file2 dir1

[root@localhost ~]# vim file1      file1中有abc
[root@localhost ~]# echo "abc"
abc
[root@localhost ~]# echo "abc"
abc
[root@localhost ~]# echo "abc" | tr "a-z" "A-Z"
ABC
[root@localhost ~]# tr "a-z" "A-Z" < file1
ABC
[root@localhost ~]# tr "a-z" "A-Z"
abc          输入字符
ABC          转换后字符
wsx
WSX
edc
EDC
^C

[root@localhost ~]# lslsls 1>a 2>b     1标准输出 2标准错误输出
[root@localhost ~]# cat a
[root@localhost ~]# cat b
bash: lslsls: command not found
[root@localhost ~]# date 1>a 2>b
[root@localhost ~]# cat a
Tue Jul 16 10:23:31 CST 2013
[root@localhost ~]# cat b

[root@localhost ~]# dateabc &>a    标准输出和标准错误输出都放到同一个文件中去&为1或者2
[root@localhost ~]# cat a
bash: dateabc: command not found
root@localhost ~]# date 1>a 2>a
[root@localhost ~]# date 1>a 2>&1
[root@localhost ~]# cat a
Tue Jul 16 10:27:38 CST 2013

rpm -e gdb         卸载gdb软件
rpm -ivh gdb or yum install gdb -y    安装gdb软件
若要屏幕不显示安装信息,可将其安装信息重定向到别的文件中去 eg: yum install gdb -y >a
这样,a文件中又有安装信息,占了内存,所以定向到/dev/null中去,因为其中的内容会自动被内存清理掉 eg:yum install gdb -y > /dev/null

[root@localhost ~]# grep "tom" /etc/passwd      找出tom用户的信息
tom:x:500:500::/home/tom:/bin/bash

[root@localhost ~]# route -n | grep "UG"
0.0.0.0         10.0.0.253      0.0.0.0         UG    0      0        0 eth0
[root@localhost ~]# route -n | grep "UG"| cut -f2
0.0.0.0         10.0.0.253      0.0.0.0         UG    0      0        0 eth0
[root@localhost ~]# route -n | grep "UG"| awk '{print $2}'
10.0.0.253
[root@localhost ~]# route -n | grep "UG"| tr -s " "
0.0.0.0 10.0.0.253 0.0.0.0 UG 0 0 0 eth0
[root@localhost ~]# route -n | grep "UG"| tr -s " " | cut -d" " -f2
10.0.0.253
cut制定默认的分割符是tab键

grep 通用正则表达式分析程序。正则表达式一定要用""引起来
用途:在文件中查找并显示包含指定字符串的行
格式:grep  [选项]...  模式  目标文件
-i:查找时忽略大小写
-v:反转查找,输出与模式不相符的行
-l:仅显示符合模式要求的文件名
-n:显示符合模式要求的行号
-r:递归搜索所有文件
-q:禁止任何输出
[root@localhost ~]# grep "lee" file1 -i         -i是指不区分大小写
Lee    3    k
grep "^#" 正则表达式中的一个元字符。以#开头 “^a”则是以a开头的行
[root@localhost ~]# grep "^tom" file1               以tom开头的
tom    to    kg
[root@localhost ~]# grep "^tom" file1 -v           不以tom开头的
dfsk    23    k
jk    23    n
Lee    3    k
[root@localhost ~]# grep "def$" file1          以def结尾的
av dkj def
[root@localhost ~]# grep "def" file1           包含了def的
dskf def sdk
av dkj def
fgrep:快速搜索简单模式
egrep:可以使用扩展正则表达式搜索

正则表达式是一个指定文本模式的标准Unix语法
使用特殊元字符实现复杂的搜索问题
基本正则表达式和Unix兼容
扩展正则表达式增加了一些新的元字符
fgrep: 不支持正则表达式
grep:  可以使用基本正则表达式搜索
egrep:可以使用扩展正则表达式搜索
正则表达式由下列元素构成
文字字符
通配符--与文件名通配符不是一回事
修饰符:”*”、”?”等
锚点:以什么开头、以什么结尾
在正则表达式中任意字符串用.*表示
[root@localhost ~]# echo "root abc def" | grep "r..t"
root abc def
[root@localhost ~]# echo "root abc def" | grep "r.t"
[root@localhost ~]# echo "root abc def "|grep "ro*t"
root abc def
[root@localhost ~]# echo "rt abc def "|grep "ro*t"
rt abc def
[root@localhost ~]# echo "rot abc def "|grep "ro*t"
rot abc def

[root@localhost ~]# ls *.sh
vnc.sh
[root@localhost ~]# ls ?.sh
ls: cannot access ?.sh: No such file or directory
[root@localhost ~]# ls vn?.sh
vn通配符
“.”:表示一定有一个任意字符
a…b表示a b间有3个字符,有几个.就有几个字符
方括号表达式:一个文字字符域
[abc]表示什么意思?
[root@localhost ~]# echo "axb"|grep "a[xyz]b"  必须有xyz中的一个
axb
[root@localhost ~]# ls v[mnl]c.sh               []中的任意一个
vnc.sh

[^abc]表示什么意思?
[root@localhost ~]# echo "aub"|grep "a[^xyz]b"  取反,不能有xyz中的任意一个
aub                                               不能是[]中的任意一个

* ?是bash的功能,而不是正则.*表示任意字符串,?表示有且只有一个字符
在正则表达式中任意字符串用.*表示

通用修饰符
“?”:表示0个或者1个前面的字符
ab?c表示什么意思?
“*”:表示0个或者多个前面的字符
ab*c表示什么意思?
“+”:表示1个或者多个前面的字符
ab+c表示什么意思?
{n}:表示n个前面的字符
ab{2}c表示什么意思?
{n,m}:表示n个到m个前面的字符
ab{2,4}c表示什么意思?

锚点搜索
“^”:表示以什么开头
^#表示什么意思?
grep -v ‘^#’ /etc/inittab | grep –v ^$
egrep ‘^[^[:digit:]]’ /ec/inittab
“$”:表示以什么结尾
bash$表示什么意思?
egrep ':$' /etc/inittab
egrep ‘^hello$' /etc/passwd
\< abc \>:表示abc这个单词
egrep ‘\<pig\>' /usr/share/dict/words

正则表达式与文件名匹配的区别
正则表达式只在少数搜索和替换文本命令中使用
文件名匹配在bash中匹配文件名
都使用”*”、”?”但意义不一样
正则表达式元字符要放在单引号内,避免bash Shell解释

tr命令:是对单个字符进行处理,而不是字符串
字符转换工具
只能对stdin操作,不能对文件进行操作
[root@localhost ~]# echo "abc def"|tr "a-z" "A-Z"
ABC DEF
[root@localhost ~]# echo "ABC DEF"|tr "A-Z" "a-z"
abc def
[root@localhost ~]# echo "abc def ade axy"|tr "a-c" "1-3"
123 def 1de 1xy
[root@localhost ~]# tr "abc" "ABC"
avc
AvC
avb
AvB
[root@localhost ~]# echo "abc 123a dcevbf"| tr -d "abc" 删除出现的a字符b字符c字符
 123 devf
[root@localhost ~]# echo "111222333444"|tr -s "123"  把多个1压缩成一个1……
123444

sort排序
ls -l | sort -k5nr                以第5个字段作为数值降序排列
sort -t: -k3nr /etc/passwd        以第三个字段作为数值降序排列

uniq命令
删除经过排序后的数据的重复记录
uniq file1       只能删除连续的相同的行
通常和sort连用
sort -n tt | uniq
[root@localhost ~]# vim file1
[root@localhost ~]# uniq file1
111111
222222
111111
222222
[root@localhost ~]# sort file1 | uniq         删除重复行
111111
222222
[root@localhost ~]# sort file1 |uniq -c       -c显示原来的111111有多少行,原来的222222有多少行
      3 111111
      3 222222
和账户相关的文件
用户信息放在/etc/passwd下,用户密码放在/etc/shadow下
和组相关的文件
/etc/group 、 /etc/gshadow
账户宿主目录中文件来源
新建用户帐号时,从 /etc/skel 目录中复制而来
默认账户的属性文件
/etc/login.defs
useradd命令
格式:useradd  [选项]...  用户名
常用命令选项
-u:指定 UID 标记号
-d:指定宿主目录,缺省为 /home/用户名
-e:指定帐号失效时间
-g:指定用户的基本组名(或UID号)
-G:指定用户的附加组名(或GID号)
-M:不为用户建立并初始化宿主目录
-s:指定用户的登录Shell
passwd命令
格式:passwd  [选项]...  用户名
常用命令选项
-d:清空用户的密码,使之无需密码即可登录
-l:锁定用户帐号
-S:查看用户帐号的状态(是否被锁定)
-u:解锁用户帐号
--stdin:接收标准输入作为密码
root用户可以修改所有用户密码,不要求复杂性
普通用户只能改自己的密码,要求复杂性
userdel命令
格式:userdel  [-r]  用户名
添加 -r 选项时,表示连用户的宿主目录一并删除
usermod命令
格式:usermod  [选项]...  用户名
常用命令选项
-l:更改用户帐号的登录名称
-L:锁定用户账户
-U:解锁用户账户
以下选项与useradd命令中的含义相同
 -u、-d、-e、-g、-G、-s

groupmod命令
用途:设置组名和组id
格式:groupmod [选项]...  组帐号名
常用命令选项
-n:修改组名
-g:修改组id
newgrp改变主要组
用户必须是要改变组的成员
id命令
用途:查询用户身份标识
格式:id  [用户名]
finger命令
用途:查询用户帐号的详细信息
格式:finger  [用户名]
chfn命令
用途:修改用户的备注信息,/etc/passwd第5字段
who、w、users命令
用途:查询已登录到主机的用户信息
groups命令
用途:查询用户所属的组

tar命令,重定向,正则表达式,添加删除用户,tr命令,sort排序的更多相关文章

  1. [CentOS]添加删除用户

    摘要 在安装CentOS的时候,我们只设置了root,类似windows的超级管理员.当然我们在工作的时候,为了安全考虑,不可能对外开发root,一方面是从安全的角度,另一方面也是方便管理. 添加删除 ...

  2. centos的用户、组权限、添加删除用户等操作的详细操作命令

    1.Linux操作系统是多用户多任务操作系统,包括用户账户和组账户两种 细分用户账户(普通用户账户,超级用户账户)除了用户账户以为还 有组账户所谓组账户就是用户账户的集合,centos组中有两种类型, ...

  3. 在Linux中新增与删除用户可以使用命令:Useradd

    在Linux中新增与删除用户可以使用命令:Useradd 我们先使用man命令理解一下Useradd的用法 新增与删除用户操作需要先获取高级用户权限 输入命令:sudo -i 确定后输入高级用户密码 ...

  4. vue简单案例_动态添加删除用户数据

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. Linux——CentOS7添加/删除用户和用户组1

    Linux--CentOS7添加/删除用户和用户组 2017.05.02 19:58 23012浏览   前言 今天又重新装了centos7突然有关用户和用户组有关的命令记不清了,所以记一下,也方便你 ...

  6. Shell系列(36)- for循环语法二简介及批量添加删除用户

    for循环语法二 for ((初始值;循环控制条件;变量变化)) do 程序 done 例子 例子-1 求和工具 需求:根据用户输入的数字,求1~输入所有数字的和 脚本: #!/bin/bash re ...

  7. Linux添加/删除用户和用户组

    声明:现大部分文章为寻找问题时在网上相互转载,在此博客中做个记录,方便自己也方便有类似问题的朋友,故原出处已不好查到,如有侵权,请发邮件表明文章和原出处地址,我一定在文章中注明.谢谢. 本文总结了Li ...

  8. 详解centos用户&组权限&添加删除用户

    1.Linux用户操作系统 Linux操作系统是多用户多任务操作系统,包括用户账户和组账户两种: 细分用户账户(普通用户账户,超级用户账户)除了用户账户以为还有组账户所谓组账户就是用户账户的集合,ce ...

  9. mysql基础:登录退出,修改用户密码,添加删除用户

    今天刚开始学习mysql,最先接触用户管理,给大家分享下 注:mysql中命令的大小写都可以的 ==========登录退出相关=================== root@jack-deskto ...

随机推荐

  1. 怎样使Android应用程序获得root权限

    Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 写这篇文章前,首先要感谢 Simon_fu ,他的两篇关于 root 权 ...

  2. NSNotification、delegate和KVO的区别

    1.效率:delegate比nsnotification高.2. delegate方法比notification更加直接,最典型的特征是,delegate方法往往需要关注返回值, 也就是delegat ...

  3. windows下 composer常见问题及处理

    错误一: Warning: This development build of composer is over 30 days old. It is recommend ed to update i ...

  4. 萧墙HTML5手机发展之路(53)——jQueryMobile页面之间的参数传递

    基于单个页面模板HTTP通过路POST和GET请求传递参数.在多页模板,并且不需要server沟通,通常有三种方式在多页模板来实现页面之间的参数传递. 1.GET道路:上一页页生成参数并传递到下一个页 ...

  5. valid number 判断字符串是否为有效数字

    RT,面试题,给定一个字符串判断是否为科学计数法的有效数字.此题各种繁琐考虑.今天终于学会了用有限状态机来处理.理解之后简洁易懂.在此分享我的理解推导思路,大有收获啊. 网上有解法说先记录每个状态代表 ...

  6. valuechange(动态的监听input,textarea)

    valuechange(动态的监听input,textarea)之前值,之后值的变化 jQuery封装自定义事件--valuechange(动态的监听input,textarea)之前值,之后值的变化 ...

  7. MVC中使用Unity Ioc Container

    ASP.NET MVC中使用Unity Ioc Container   写在前面 安装Unity 添加服务层 IArticleRepository类型映射 服务注入到控制器 Global.asax初始 ...

  8. JS列表的下拉菜单组件(仿美化控件select)

    JS列表的下拉菜单组件(仿美化控件select) 2014-01-23 23:51 by 龙恩0707, 1101 阅读, 6 评论, 收藏, 编辑 今天是农历23 也是小年,在这祝福大家新年快乐!今 ...

  9. CLR中的垃圾回收机制

    CLR中采用代(generation)来作为其垃圾回收的一种机制,其唯一的目的是提升程序的性能.基予代的垃圾回收器有以下假设: ·对象越新,其生存周期越短. ·对象越老,其生存周期越长. ·回收堆的一 ...

  10. iOS基础 - CALayer

    一.CALayer简介 Core Animation是跨平台的,支持iOS环境和Mac OS X环境 凡是支持跨平台的框架,都不能直接使用UIKit框架,因为UIKit框架只能应用在iOS而不能用于M ...