学习笔记(9)

学习笔记(9)

1.find ./ -maxdepth 1 -name ‘test’ -ls  注意–maxdepth的位置,放在命令的尾部会有警告
2.find /etc -regex “/etc/.*passwd”  find中使用正则表达式匹配时,匹配的是整个路径而非文件名称,而使用文件统配符的时候是匹配的文件名
  # find / -iname “[^[:lower:]][^[:lower:]][^[:lower:]][^[:lower:]][^[:lower:]][^[:lower:]][^[:lower:]].txt”
  # find / -iname “[a-z][a-z][a-z][a-z][a-z][a-z][a-z].txt” 使用[a-z] 会匹配大写字母的文件名
  因为a-z匹配的是a A b B ….z,如果匹配的是大小写字母的则使用[a-Z]
3.find 中的大小的常用单位: k, M, G, c(bytes)
4.grep:文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;打印匹配到的行(注意是打印出的是匹配到的行)
5.只有在tr的时候才使用[:alpha:] 类型的表达,其余的都是[[:alpha:]] ,因为 tr ‘a-z’ ‘A-Z’ 表示的就是单一一个字符,所以使用[a-z],注意 tr只能使用重定向或管道来接受处理的文件内容,不能直接接文件来处理如 tr ‘a-z’ ‘A-Z’ file 这样是错误的
6.grep -w 匹配的单词是数字、字母、下划线混合的,而非空格分隔的
7.vim 删除时使用g作为全文档,如删除所有空格 :g/^$/d,选择替换的时候使用 % 作为全文档
8.vim 中使用的是标准的正则表达式
9.sed -n ‘n;p’ 打印偶数行
10.seq 10 | sed ‘1!G;h;$!d’  倒序输出(tac)
11.sed 示例 文字说明
12.程序包的noarch表示与系统平台无关,适用于x86_64,同样适用于i686
13.ls *.rpm | sed -r ‘s@.*\.([^.]+)\.rpm$@\1@’|sort |uniq -c
   ls *.rpm |rev |cut -d. -f2|rev|sort|uniq -c
   ls *.rpm |grep -Eo ‘\.[^.]+\.rpm$’|cut -d. -f2|sort|uniq -c
14.seq 1 10 | sed ‘N;s/\n//’
   seq 1 10 | xargs -n 2
15.sed 进阶
P:打印模式空间开端至\n内容,并追加到默认输出之前
h: 把模式空间中的内容覆盖至保持空间中
H:把模式空间中的内容追加至保持空间中
g: 从保持空间取出数据覆盖至模式空间
G:从保持空间取出内容追加至模式空间
x: 把模式空间中的内容与保持空间中的内容进行互换
n: 读取匹配到的行的下一行覆盖至模式空间
N:读取匹配到的行的下一行追加至模式空间
d: 删除模式空间中的行
D:如果模式空间包含换行符,则删除直到第一个换行符的模式空间中的文本,并不会读取新的输入行,而使用合成的模式空间重新启动循环。如果模式空间不包含换行符,则会像发出d命令那样启动正常的新循环
    sed -n ‘n;p’ FILE   #打印偶数行
sed ‘1!G;h;$!d’ file   #倒序输出
sed ‘N;D’ FILE   #打印最后一行
sed ‘$!N;$!D’ FILE      #但因最后两行
sed ‘$!d’ FILE #打印最后一行
sed ‘G’ FILE #在每一行的下面追加一个空行
sed ‘g’ FILE #将每一行的内容用空行替换
sed ‘/^$/d;G’ FILE #将多个空行合并成一个空行
sed ‘n;d’ FILE     #只保留奇数行
sed -n ‘1!G;h;$p’ FILE  #倒序输出
16.软连接相对路径
17.tar xvf 不需要指定zj,可以通过后缀名自动解压缩
18.做词尾锚定的时候,多个单词的词尾锚定不需要使用括号锚定单词,如\< \>
19.修复图文
20.ldconfig -p 查看系统中已经加载的库
21.rpm -qp –scripts httpd…
22./var/lib/rpm/* 安装rpm包之后的记录 是否安装是否未安装(重要) 删除后无法安装,无法查询包是否安装
23.自己制作rpm包
24.rpm -e vsftpd(软件名) 卸载程序包
25.rpm -i –test 测试安装
26.rpm –replacepkgs 重新安装
27.rpm –import RPM-…Centos-6 导入公钥
28.rpm -ivh –force  包名 对已经安装的软件包再次强制重新安装
29.对程序包做升级后修改过的相同的配置文件不会覆盖,新的配置文件会命名为FILENAME.rpmnew
30.rpm -q 包名(不是文件名)要求包名准确
   rpm -qa | grep vsftp 可以模糊查询
   rpm -qa *vsftp*   支持模糊匹配
31.rpm -qf /etc/passwd 查询文件来自于哪个程序包,即便文件删除也会查询到,/var/lib/rpm文件中已经保存了rpm元数据的数据库,所以即便文件删除也会查询到
32.rpm -ql  包名  查询已安装程序包的的文件信息
33.rpm -qpl  *.rpm  查询未安装的程序包的信息
34.rpm -q –whatprovides  tree 查询已安装的程序由那个程序包提供
          –whatrequires   查询被依赖
35.rpm2cpio *.rpm | cpio -idv  文件(指定需要解压缩的文件,注意解压缩之后文件属性是否满足要求)
36.rpm -qi 已安装程序包   可以查看到包信息以及官网信息
37.rpm -qR 查询包依赖
38.all-matches 卸载所有版本,在相同程序存在多个版本时可以一切卸载所有版本
39.rpm -V 程序名 查询程序的属性是否发生变化
S file Size differs
M Mode differs (includes permissions and file type)
5 digest (formerly MD5 sum) differs
D Device major/minor number mismatch
L readLink(2) path mismatch
U User ownership differs
G Group ownership differs
T mTime differs
P capabilities differ
40.rpm -K  校验需要使用的安装包是否改变
  echo >> tree-1.6.0-10.el7.x86_64.rpm
  rpm -K tree-1.6.0-10.el7.x86_64.rpm   查询安装包是否发生改变
41./etc/rpm-gpg/RPM… 公钥(光盘的在根目录下)
42.rpm -qa “gpg-pubkey*”” 导入后公钥后生成的
43.rpm -ql rpm   rpm -qf rpm
44.rpm2cpio …|cpio -idv file(包内文件)
45.救援模式
46.mount /dev/sro /mnt/cdrom  df
47.rpm -ivh **** –root=/mnt/sysimage  救援模式使用
   由于是光盘启动的系统,所以需要将根路径指定成/mnt/sysimage,因为真正的系统是被挂载在/mnt/sysimage上的
48.危险的操作有: 1. 修改所有文件权限 chomd -R 000 / ,2. 删除/var/lib/rpm 因为删除rpm数据库,系统将无法获知rpm软件是否被安装或被删除会导致rpm无法正常使用,
   3.rm -rf /*  删除更目录下面的所有文件
49.yum 缓存的是元数据,不删除,下载的rpm包安装完后删除,多个yumServer相同软件安装最新,先访问缓存后下载rpm包
50.vim /etc/yum.conf
    [main]
cachedir=/var/cache/yum/$basearch/$releasever   #metadata缓存路径
keepcache=0     #是否缓存rpm包,1为保存
debuglevel=2
logfile=/var/log/yum.log   # 日志路径
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
51. 光盘中的repodata 目录存放的是元数据信息
[base]    #名字不要有空格
name= centos cdrom
baseurl=file:///mnt/cdrom    #repodata的父目录就是仓库路径(即repodata所在的目录),mnt前面的/是根
gpgcheck=0   未import公钥,所以不校验
[epel]
name=epel
baseurl=htp://172.20.0.1/epel/7/x86_64/
       file:///mnt/cdrom  #容错
gpgcheck=1 校验完整性
gpgkey=file:///mnt/cdrom/RPM-GPG-… 指定key文件
enabled=0 禁用yum源
52.yum install httpd 中的d 是只下载的不安装
53.yum repolist 查看有本地多少仓库,及仓库中的rpm包
   yum repolist all 显示所有包括禁用的仓库
   yum repolist disabled 显示禁用的仓库
54.yum clean all 清空缓存 (/var/cache/yum)
55.yum list 查看所有的仓库中的rpm包 带@符号的均是安装完成的
@anaconda 安装系统时使用anacoda中安装
@base 使用base源安装的
@epel epel安装
56.sl -a 使用yum 安装 epel中
57.yum remove sl  卸载程序包
58.baseurl 可以写多个,可以容错,也可以将多个baseurl放到文件中mirrorlist,并使用mirrorlist=file://root/mirrolist
59.cost值越小优先级越高
60.yum install autofs 神奇文件夹
   yum start autofs
   yum enable autofs
61.yum-config-manager –add-repo=http://…
62.glob 通配符,pattern 正则
63.yum底层使用的依然是rpm,所以rpm如果使用不了,yum也不能使用。
64.卸载程序不卸载依赖包(默认)
65.yum history list num
   yum history info num
66.yum history undo num
67.yum install *.rpm 可以解决依赖关系,而不需要创建yum源
68.yum grouplist 显示包组
69.yum -y -q 静默模式 要分开写不能合并,可以在脚本中使用做安装判断
70.createrepo /data 自定义yum仓库,/data指定包含有rpm包的仓库
71.搭建yum仓库服务器
72.支持http https ftp协议格式 file(本地)  yum仓库
73.httpd.service rpm -ql 中存在httpd.service  服务名就是httpd
74.添加光驱并扫描识别:
   echo ‘- – -‘ >> /sys/class/scsi_host/host2/scan
   echo ‘- – -‘ >> /sys/class/scsi_host/host0/scan
75.搭建yum http: centos6 centos7
76.yum仓库中可用的变量
   $releasever (release version 发布版本)
   $arch    平台,i386,i486,i586,x86_64等
   $basearch  基础平台

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96810

(0)
涤生涤生
上一篇 2018-04-22 17:38
下一篇 2018-04-22 17:56

相关推荐

  • Linux学习笔记——特殊权限之 SUID GUID StickyBit

    ◆ SUID ( Set User ID ) Linux里,用户的ID被称作UID。在实际生产中,可能需要临时借用别的用户执行程序,因此需要能够临时变更自己UID的机能叫做SUID。借助SUID权限,用户可以临时调用root权限。※ 通常,文件的执行是由所属者发起,然而,赋予SUID权限后可临时继承所有者的权限(来执行文件)。通常用于二进制可执行文件上,文件…

    Linux笔记 2018-04-07
  • Linux的哲学思想

    1.一切皆文件
    2.小型,单一用途的程序
    3.配置信息保存在文本文件中
    4.尽量避免与用户交互

    Linux笔记 2018-05-11
  • 正则表达式

    正则表达式REGEXP 有一类特殊符号表是控制伙同裴的功能程序支持:grep,seb,。。。基本正则表达式:BRE扩展正则表达式;ere采用不同算法经检查处理正则表达式的软件模块PCRE元字符:字符匹配,匹配次数,位置锚定,分组 man7详细文档 字符匹配.表示任意的单一字符 放在[]里表示.本身不需要转义\.转义(回归字符本身的含义)表示.本身[]表示字符…

    Linux笔记 2018-04-08
  • 马哥网络班第31期——第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示
    2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示
    3、请使用命令行展开功能来完成以下练习
    (1)创建/tmp目录下的:a_c,a_d,b_c,b_d
    (2)创建/tmp/mylinux目录下的:
    4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息
    5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
    6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其他字符)的文件或目录
    7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录
    8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其他任意长度任意字符的文件或目录
    9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22
    10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中
    11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中
    12、复制/etc目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中

    Linux笔记 2018-07-18
  • sed数据流编辑器

    sed(Stream Editor)行编辑器 基础用法

    2018-04-12
  • 相信过程-马哥教育

    IT工程师工作和学习都是比较枯燥的,过于目标化忽略了过程本身并不适合我,如果我来这里能使我全心全意投入到一段学习当中,我觉得来这里目标就达到了。其他的事情自然会水到渠成。 大家共勉!

    2018-07-21