1 vi的替换使用方法

vi使用的原理 (编辑文件会生成一个隐藏临时文件)

1.1 替换文件内容方法:vi

(1)%s#oldboy#oldgirl#g --- 将oldboy全部替换为oldgirl,整个文件相应内容都做替换
(2)%s/#oldboy/oldgirl/g --- 将#oldboy替换为oldgirl,整个文件相应内容都做替换
(3)3,$s#oldboy#oldgirl#g ---指定第三行到结尾,oldboy替换为oldgirl 将指定行内容进行替换
(4)3,$s#oldboy#oldgirl# ---将第三行到结尾所有一行中匹配到的第一个oldboy替换,不进行全
局替换(g--全局)
(5)搜索文件中指定内容:
①:set ignorecase=set ic
②:/oldboy\c 忽略大小写  /oldboy  不忽略大小写
(6)$:表示结尾,最后一行
g:表示全局

2 如何让linux系统有回收站功能/tmp

(1)如何实现移动数据到/tmp
alias rm='mv -t /tmp'
(2)如何让功能永久生效
cat ~/.bashrc
注销掉 #alias rm='rm -i'
alias rm='mv -t /tmp'
 
补充:alias rm='\mv -t /tmp' --- 命令前面加 \ 表示取消命令别名功能
alias rm='/tmp/mv -t /tmp' --- 命令采用绝对路径执行,忽略别名功能 删除
 

3 系统重要的文件

3.1 系统环境变量和别名配置文件

/etc/profile --- 设置环境变量和别名(全局配置---对所有用户都生效)
/etc/bashrc --- 设置环境变量和别名(全局配置)优先
cd ~ -->
~/.bash_profile --- 设置环境变量和别名(局部配置--- 只针对当前用户生效)
~/.bashrc --- 设置环境变量和别名(局部配置) 优先

3.2 地域名解析配置文件(搭建网站页面--测试)

/etc/hosts == windows c/:windows/system32/driver/etc/hosts
vi /etc/hosts
10.0.0.201 www.baidu.com

3.3 如何实现自动开机挂载

/etc/fstab
cat /etc/fstab
UUID=9fbc39a0-f32e-48a8-b3d8-ab4cc234ba61   /     xfs       defaults 0 0
UUID=f793bf23-18d3-4c51-9b8f-d47bc3730722   /boot    xfs       defaults 0 0
UUID=f06d6457-4eb0-4dc1-a790-feff4873fc3e     wap     swap      defaults 0 0
01                       02     03
01. 挂载的设备文件信息
UUID表示系统设备标识信息
02. 挂载点目录信息
03. 文件系统类型 xfs ext3 ext4
磁盘如何进行操作步骤:
磁盘(多个)   多片地
raid         多片地连起来
分区            规划
格式化         收拾整理
创建文件系统   建房子风格
挂载       房子按门
 

3.4 实现服务或者脚本命令开机运行

/etc/rc.local
利用此文件实现开机自动挂载光驱设备
①编辑/etc/rc.local
vi /etc/rc.local
mount /dev/cdrom /mnt
②修改文件的权限(添加执行权限)
chmod +x /etc/rc.d/rc.local
总结:此文件中编写的命令信息,会随系统启动自动运行
 

3.5 系统运行级别配置文件

系统启动时,有些服务可以不运行 == 系统运行级别
centos6(运行级别-7个)             centos7(target)
0 关机级别                   poweroff.target 关机
1 单用户级别(修复系统/破解root用户密码)    rescue.target 救援
2 多用户级别(没有网络的多用户)           multi-user.target 多用户
3 多用户级别(正常)              multi-user.target 多用户
4 未使用级别                     multi-user.target 多用户
5 图形化级别                     graphical.target 图形化
6 重启级别                   reboot.target 重启
 
如何查看系统级别: 如何查看系统target
runlevel systemctl get-default
如何修改系统级别: 如何修改系统target:
临时修改: systemctl set-default rescue.target
init 0
永久修改:
vi /etc/inittab
id:3:initdefault:
(6)提示信息文件
系统登录后提示信息
vi /etc/motd
系统登录前提示信息
vi /etc/issue centos6
vi /etc/issue.net centos7
 

4 系统重要目录数据

4.1 /usr/local --- 保存第三方软件的程序文件

(1)linux系统安装软件方法(吃饭)
①yum安装软件(360软件管家) 订餐
直接下载软件,并安装
可以解决软件依赖关系
②rpm安装软件 做饭(熟食 饺子 包子)
将软件包进行下载
rpm -ivh 软件包名称.rpm
-i install 安装
-v 显示安装过程
-h 以人类可读方式显示安装过程
-qa 查看软件是否安装
-ql 查看软件包里面内容
rpm -qf `which tree` 查看tree命令属于哪个软件包
rpm -e sl --nodeps 删除sl这个命令
③编译安装 做饭(用食材 烹饪)
可以灵活配置软件功能/安装位置
④绿色安装
下载软件压缩包--解压--直接使用
 

4.2 /var --- 系统重要目录数据

/var/log          --- 系统或服务的日志文件
vi /var/log/messages     --- 记录系统或服务的运行状态信息/异常错误信息
vi /var/log/secure     --- 记录用户登录的信息
 
用户登录成功的日志信息:
Jun 6 12:02:20 oldboyedu-62 sshd[7944]: pam_unix(sshd:session): session opened for user root by (uid=0)
    01     02      03                   04
01. 登录系统的时间
02. 系统的主机名称
03. 登录系统的方式 ssh
04. 登录系统的提示信息
 
日志文件如何查看:
tail -f /var/log/secure         --- 实时监控查看一个文件内容的变化(日志) 取消查看 ctrl+c
tail(尾巴)            --- 查看文件的后几行内容
tail -5 oldboy.txt           --- 查看文件指定后几行内容(默认查看后10行)
head (头)           --- 查看文件的前几行内容
head -5 oldboy.txt        --- 查看文件指定前几行内容(默认查看前10行)
grep "oldboy" oldboy.txt    --- 查看指定内容的行信息
grep -i "failed" /var/log/secure   --- 忽略大小写进行过滤
grep -A 2 "failed" /var/log/secure --- 显示过滤的指定行,以及后几行信息 -A == after
grep -B 2 "failed" /var/log/secure --- 显示过滤的指定行,以及前几行信息 -B == before
grep -C 2 "failed" /var/log/secure --- 显示过滤的指定行,以及相应前后几行信息 -C == center
 
 

作者:星辰追路人

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

vi的替换使用、如何让linux有回收站功能、系统重要文件、目录数据的更多相关文章

  1. Linux中ftp不能上传文件/目录的解决办法

    在linux中不能上传文件或文件夹最多的问题就是权限问题,但有时也不一定是权限问题了,像我就是空间不够用了,下面我来总结一些ftp不能上传文件/目录的解决办法   在排除用户组和权限等问题后,最可能引 ...

  2. Linux学习笔记(二)——文件/目录/VIM

    文件和目录管理 及 VI编辑器的使用 文件和目录管理,刚开始学这块的时候感觉内容很多很杂,但是学完进行总结后,发现其实很有条理的而且没什么难度,只是熟练掌握这些常用的命令就行了.至于Vim编辑器,不得 ...

  3. 关于Linux系统和Windows系统中文件夹的命名规范

    Windows系统中. 1.在创建文件夹的时候不能以"."开头(但是文件以多个点开头并且还有其他合法字符的话就是合法的) 但是在windows系统中确实见过以一个点".& ...

  4. Linux SSh scp使用【远程文件/目录的传输】

    一:Linux ssh scp的简介及作用: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们 ...

  5. linux下在用python向文件写入数据时'\n'不起作用

    网上翻看一圈,大家都说利用write写数据换行,在linux下用'\n',windows下利用'\r\n',可是尝试了一下,'\n'在windows底下可换行,在linux底下居然不起作用,最后利用' ...

  6. Linux 实现回收站功能脚本

    #!/bin/bash function z-trash() { # 判断参数是否为空 if [ ! $1 ] then echo "z-trash error: file name of ...

  7. LINUX运维实战案例之文件已删除但空间不释放问题的分析与解决办法

    1.错误现象 运维的监控系统发来通知,报告一台服务器空间满了,登陆服务器查看,根分区确实没有空间了,如下图所示: 这里首先说明一下服务器的一些删除策略,由于Linux没有回收站功能,我们的线上服务器所 ...

  8. vi全局替换

    http://blog.csdn.net/vindak/article/details/7830547 vi全局替换命令

  9. Linux中.a,.la,.o,.so文件的意义和编程实现

    Linux中.a,.la,.o,.so文件的意义和编程实现    Linux下文件的类型是不依赖于其后缀名的,但一般来讲:        .o,是目标文件,相当于windows中的.obj文件     ...

随机推荐

  1. centos7 Intellij Idea 授权服务器搭建(Jetbrain 家族系列IDE)

    centos7 Intellij Idea 授权服务器搭建 1.上传破解文件 我用的是Xshell客户端,有上传功能,但是linux必须先装lrzsz,也可以通过其他方式传到linux上 yum -y ...

  2. Airflow 使用简介

  3. 批处理文件的工具(java+shell为了实现)

    批处理文件的工具(java+shell为了实现) 有一堆语料须要处理一下才干使用,本来应该能够直接用shell脚本直接处理的. 可是对shell脚本不熟,仅仅会简单的一些命令. 因此就利用java+s ...

  4. 简明Python3教程 18.下一步是什么

    如果你有认真通读本书之前的内容并且实践其中包含的大量例程,那么你现在一定可以熟练使用python了. 同时你可能也编写了一些程序用于验证python特性并提高你的python技能.如果还没有这样做的话 ...

  5. 使用WPF实现3D场景[二]

    原文:使用WPF实现3D场景[二] 在上一篇的文章里我们知道如何构造一个简单的三维场景,这次的课程我将和大家一起来研究如何用代码,完成对建立好了的三维场景的观察. 首先看一下DEMO的界面:     ...

  6. JAVA面试题解惑系列(七)——使用日期和时间

    日期和时间,不仅在考试面试题.处理的问题.似乎没有哪个项目能够避开它们.我们经常在处理用户的出生年月日.注冊日期,订单的创建时间等属性时用到,由此可见其重要性.  java.util.Date类  提 ...

  7. SAAS是否能实现人在家工作的梦想?

    在过去的十年,在人们的工作环境的巨大变化已经发生,越来越多的人选择在家工作. 高租金的办公室,络,快速宽带的广泛应用.这些因素都使得远程办公成为了人们工作中密不可分的一种方式.使用普通手机和办公操作系 ...

  8. C++中new和delete的背后(最后还是调用了MSVCR90的malloc)

    关于 C++中new背后的行为, 以前已经写过一篇了 理解C++中new背后的行为, 但是里面也只是泛泛而谈,没有真凭实据, 下面我们从汇编的角度看C++编译器究竟在背后干了什么?   我们的代码很简 ...

  9. wpf 绑定表达式和手动更新源

    <Window x:Class="BindingExpressionExam.MainWindow"        xmlns="http://schemas.mi ...

  10. 关于SetLength报Out of memory的研究及解决办法

    关于SetLength报Out of memory的研究及解决办法 最近在做一个GIS系统, 在读GIS数据时采用了动态数组,突然读一个数据时SetLength报错!Out of memory 仔细研 ...