1 vi命令使用技巧补充
1.1 如何快速编辑文本内容
yy ---快速复制文件内容
3yy ---复制三行内容
p ---快速粘贴文本内容
3p ---粘贴三行内容
dd ---快速删除文件内容(实质是剪切)
3dd ---删除三行内容
dG ---删除光标到结尾所有内容
r ---快速替换字符信息
R ---可以连续替换多个字符信息
u ---撤回之前的操作 undo=u
ctrl+r ---取消撤销操作 r=redu
2. vi使用时经常出现的错误
2.1 操作出现失误
vi /oldboy/ 不能直接编辑目录
vi /oldgirl/oldboy.txt 编辑的文件所在目录必须存在
2.2 无法正常保存或退出
wq! 强制保存退出
q! 强制退出
wq 保存退出
q 不保存退出
2.3 无法正常编辑文件,编辑文件总有提示信息
出现原因:
①. 没有正常保存退出编辑状态
②. 多个用户同时编辑一个文件
解决方法:
①. 删除临时文件 rm .oldboy.txt.swp
②. 恢复正常之前临时文件内容(vi -r oldboy.txt),删除临时文件
2.4 总结
正常情况:
vi oldboy.txt --i-- 编辑 -- :wq
①echo xxx > oldboy.txt.swp
②mv oldboy.txt.swp oldboy.txt
错误情况:
vi oldboy.txt --i-- 编辑 -- 没有保存
1. echo xxx > oldboy.txt.swp
恢复信息:
vi -r oldboy.txt
①cp oldboy.txt.swp oldboy.txt
3 系统重要文件
3.1 /etc目录下重要文件
(1)网卡配置文件
文件路径:/etc/sysconfig/network-scripts/ifcfg-eth0
①文件内容:
TYPE=Ethernet --- 指定网络类型
BOOTPROTO=none --- 获取IP地址的方式 自动获取dhcp/手动配置none(static 静态)
NAME=eth0 --- 网卡名称
DEVICE=eth0
ONBOOT=yes --- 是否激活网卡
IPADDR=10.0.0.201 ---IP地址
PREFIX=24 ---子网掩码
GATEWAY=10.0.0.254 --- 网关
DNS1=223.5.5.5 --- DNS服务器的地址
②加载文件方法:
systemctl start network --- 将服务器中网卡启动
systemctl restart network --- 将服务器中所有网卡重新启动
ifdown eth0 && ifup eth0 --- 只将指定网卡进行重启操作(企业中重启网卡方法)
systemctl stop network --- 将网卡关闭
systemctl enable network --- 实现服务开机自动启动
systemctl disable network --- 实现服务开机禁止启动
③扩展补充:centos7
network 运维主管 参照网卡配置文件 systemctl restart network
NetworkManager 运维经理 参照nmtui配置信息 优选 systemctl restart NetworkManager 关闭
3.2 域名解析文件
文件路径:/etc/resolv.conf
文件内容:
nameserver 223.5.5.5 指定DNS服务器地址信息
①文件加载:
文件配置完毕,立即生效
域名无法访问异常问题解决:
修改resolv.conf文件DNS服务器地址信息,会立即生效
修改网卡配置文件,需要重启网卡服务器,网卡配置文件DNS信息会覆盖resolv.conf文件中DNS信息
②建立域名 + IP地址 对应关系/映射关系
本地设置 C:\Windows\System32\drivers\etc\hosts
特殊的服务器中进行设置 8.8.8.8 114.114.114.114 223.5.5.5 --DNS服务器
3.3 主机名称文件
文件路径:/etc/hostname
主机名称:城市_机房_机柜号码_服务名称
bj_jxq_03_web
centos6
查看主机名: hostname
修改主机名:
临时修改:hostname oldboy-62
永久修改:vi /etc/sysconfig/network
centos7
查看主机名: hostname
修改主机名:
临时修改:hostnamectl set-hostname oldboy-62 (即使临时修改也是永久修改)
永久修改:vi /etc/hostname
4 环境变量
4.1 什么是变量:变量--书目录 变量的值---书的内容
oldboy(变量名)=123456 --- 设置变量
echo $oldboy -- 123456
4.2 设置变量作用:在脚本中会起作用
4.3 脚本作用:将重复操作简单化
sh text.sh表示 运行test.sh这个脚本 sh: 运行
4.4 什么是环境变量:
系统已经设置好的变量
环境变量名称一般都为大写字母组成
4.5 系统命令执行原理:
(1) ①mv命令
②获取PATH环境变量信息
③到相应目录中寻找mv命令文件
④命令文件可以找到
⑤执行命令完成功能
echo $PATH 得到 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
(2) ①mv命令
②获取PATH环境变量信息
③到相应目录中寻找mv命令文件
④命令文件未找到
⑤文件或目录不存在
(3)解决:
题目:mv /bin/mv /tmp
①绝对路径运行命令
/tmp/mv /etc/hosts /tmp
②修改环境变量信息
临时修改:
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp
永久修改:
vi /etc/profile
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp
export PATH=$PATH:/tmp
source /etc/profile 或者 . /etc/profile 让修改的配置文件生效
(4)需求:
01. 创建一个oldboy目录
02. 在oldboy目录中创建一个oldboy.txt
03. 在文件中编辑内容 oldboy-62
04. 将文件进行备份 oldboy.txt.bak
05. 将备份文件移动到/tmp目录
①、mkdir /oldboy
touch /oldboy/oldboy.txt
echo oldboy-62 > /oldboy/oldboy.txt
cp /oldboy/oldboy.txt /oldboy/oldboy.txt.bak
mv /oldboy/oldboy.txt.bak /tmp
②、%s#oldboy#dddd#g 替换命令
5 别名功能
5.1 作用:将复杂的命令简单化
cat /etc/sysconfig/network-scripts/ifcfg-eth0 == catnet
如何设置别名:
①、临时设置别名
alias 别名名称='合法的命令'
alias catnet='cat /etc/sysconfig/network-scripts/ifcfg-eth0'
②、永久设置别名:
vi /etc/profile
alias 别名名称='合法的命令'
alias catnet='cat /etc/sysconfig/network-scripts/ifcfg-eth0'
unalias 取消别名
6 补充
1、export 用于修改设置环境变量
2、source或者. 立即加载文件配置信息
3、alias 查看别名设置和修改别名设置
4、unalias 取消别名功能
5、hostname 显示主机名称和修改主机名称
hostname -I 显示网卡地址信息
6、systemctl 用于启动/停止/重启服务程序
7、hostnamectl 永久和临时修改主机名称
8、ifup/ifdown 控制指定网卡启动或停止
9、* 表示匹配所有内容
10、. 隐藏文件
11、&& 表示前一个命令执行成功,再执行后一个命令
12、$ 调用变量信息
提示登录的用户为普通用户
作者:星辰追路人
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
- Linux学习之十一、环境变量的功能
环境变量的功能 可以利用两个命令来查阅,分别是 env 与 export 呢! 范例一:列出目前的 shell 环境下的所有环境变量与其内容. [root@www ~]# env SHELL 告知我们 ...
- Linux添加目录到环境变量以及添加Sublime Text到环境变量
本文主要介绍了Linux添加目录到环境变量以及添加Sublime Text到环境变量,通过具体的解释说明,让我们从中学到Linux添加目录到环境变量以及添加Sublime Text到环境变量的精髓所在 ...
- Linux添加目录到环境变量以及添加sublime到环境变量
博主之前有过这种情况,就是在普通用户下su ls等命令还有效,可登陆进root用户之后这些常用的命令竟然失效了. 像这样 这问题其实很简单,但是对于不清楚环境变量的配置的同学来说也的确棘手,我之前就是 ...
- Linux安装库文件(环境变量和makefile)
CFLAGS 表示用于 C 编译器的选项,CXXFLAGS 表示用于 C++ 编译器的选项.这两个变量实际上涵盖了编译和汇编两个步骤. CFLAGS/CPPFLAGS: 指定头文件(.h文件)的路径, ...
- 随意软连接/home/users目录导致环境变量消失后的事故
1 自己的用户zj下,把/home/zj 删除后用ln -s软连接其他目录,导致了当前用户的.bash_profile失效 2 解决思路 第一,删除软连接 rm -rf /home/zj 记住后面 ...
- linux下将指定目录加入环境变量的方法
每个用户目录下都有一个对应的.bash_profile比如root用户对应/root/.bash_profile,普通用户cqh对应/home/cqh/.bash_profile,以root用户为例v ...
- httprunner 2.5.7 下.env 文件环境变量的使用及debugtalk的使用,对test的参数化及执行
一.httprunner 2.5.7 下.env 文件的使用 1..env 文件配置如下: 2.debugtalk.py 编写如下: 在debugtalk.py中增加开始和结束执行语句: 3.需要做 ...
- python - 添加文件环境变量
#添加 当前文件目录 import sys,os BASE_DIR = os.path.dirname(os.path.dirname(__file__)) sys.path.append(BASE ...
- Linux的环境变量.bash_profile .bashrc profile文件
Shell变量有局部变量.环境变量之分.局部变量就是指在某个Shell中生效的变量,只在此次登录中有效.环境变量通常又称“全局变量”,虽然在Shell中变量默认就是全局的,但是为了让子Shall继承当 ...
随机推荐
- Android官方教程翻译(3)——创建一个简单的用户界面
转载请注明出处:http://blog.csdn.net/dawanganban/article/details/9839523 Building a Simple User Interface 创建 ...
- MyEclipse参加ibatis DTD文件实现xml自己主动提示功能
当我们写ibatis当配置文件,希xml自己主动提示. 这就要求我们的加盟DTD档 SqlMapConfig.xml中开头部分有这么一句话 <!DOCTYPE sqlMapConfig PUBL ...
- VS编译环境中TBB配置和C++中lambda表达式
TBB(Thread Building Blocks),线程构建模块,是由Intel公司开发的并行编程开发工具,提供了对Windows,Linux和OSX平台的支持. TBB for Windows ...
- Ueditor 在.net core 中的使用
参考模仿了 https://blog.csdn.net/qq_34220236/article/details/80581811 这篇文章 要注意的是,去ueditor官网下的包,大多不可用. 要自己 ...
- QWidget居中显示(qt窗口坐标原点是在”左上角”的,有图)
转载请说明出处, 并附上原文链接http://blog.csdn.net/qq907482638/article/details/72189014. 问题描述 在Qt学习过程中,在让QDialog居中 ...
- Windows 10 子系统Linux重启(不重启Win10)
Using CMD (Administrator) net stop LxssManager net start LxssManager
- 我所理解的设计模式(C++实现)——观察者模式(Observer Pattern)
概述: 近期中国股市起起伏伏,当然了起伏就用商机,小明发现商机后果断想入市,买入了中国证券,他想在电脑client上,网页上,手机上,iPad上都能够查看到该证券的实时行情,这样的情况下我们应该怎么设 ...
- ISTQB 软件测试资质认证
1.什么是ISTQB: ISTQB(International Software Testing Qualification Board)是国际唯一权威的软件测试资质认证机构, 主要负责制订和推广国际 ...
- Android在putString和getString使用方法
函数: putString(String key,String value); 功能:将键为key的值为value. 详细的容器详细考虑比如对于Editor 的对象来讲: 代码例如以下: 首先新建一个 ...
- Windows下程序打包发布时的小技巧(使用Dependency Walker侦测不理想,改用VS自带的dumpbin则万无一失,还可查看dll导出的函数)
Windows下开发的应用程序在发布时,需要将其依赖的一些动态链接库一起打进安装包里面去.这个时候,快速确定这个程序到底依赖哪些动态链接库变得非常重要.很久以前写过一篇关于Qt程序安装包制作的博客,里 ...