1.box与虚拟机的关系
1.1下面三种关系和Box与虚拟机的关系类似
- 类->对象
- 镜像->容器
- 铸造模型->产品
1.2通过实验验证不同的box有不同的虚拟机
- 首先打开虚拟机:
vagrant up#打开所有的虚拟机
- 进入虚拟机 通过使用代码:
echo hello v3 > v3.txt
目的是为了使每一个box都与其他的box不同 - 再将虚拟机打包
- 现在的box为:
centos_v1:原始的box,没有vim 没有v3.txt
centos_v2:只有vim 没有v3.txt
centos_v3:在v2的基础上添加了v3.txt - 创立三个目录 v1,v2,v3
每一个目录中放入virtualfile 和bootstrap并进行适当的修改
- 分别对v1,v2,v3执行vagrant up 命令
- 通过远程登陆虚拟机查看内容
2.Linux常用命令
2.1快捷键命令
- ctrl + l= clear 清屏
- tab 快速补齐
- 方向键:历史命令
- ctrl + c 停止运行
- ctrl + r 搜索历史命令
- \ 命令结束表示换行
[vagrant@s1 ~]$ tail \
> -n 20 \
> -f \
> OAuth2Config.java ;
2.2打印命令
echo hello.java #打印输出hello.java
echo HelloWorld >Hello.java #表示覆盖
echo HelloWorld >>Hello.java #表示追加
2.3.ls 命令
ls- la #详细查看所有文件和目录
-l (long)详细列表
-a (all)显示隐藏文件特殊目录和...
ll =ls-l
2.4.man命令
man ls #查看ls 命令的帮助
ctrl + f #文档翻页:下一页
ctrl + b #文档翻页:上一页
:q #退出
2.5.cd 命令
进入目录
cd ~ #进入用户的宿主目录
cd .. #进入上级目录
cd - #进入上一个历史目录
2.6pwd命令
显示当前的工作目录
2.7.su命令
切换用户
用户名:vagrant,密码:vagrant
用户名:root,密码:vagrant
使用方法:
su vagrant # root用户切换到vagrant用户
su root #vagrant用户切换到root用户```
注意: 从vagrant到root需要使用root 用户的密码
2.8.mkdir 命令
创建目录
-p 父目录不在情况下先产生父目录
mkdir -p /home/vagrant/java-project/src #创建目录
快速创建目录写{}-{},结果是生成笛卡尔积
mkdir -p ~/{master1,master2,master3}-{log,data}
2.9.tree命令
在虚拟机中安装tree yum install tree
以树列表目录tree java-project
2.10.touch命令
创建文件
用法:touch Hello.java
2.11.cp 命令
拷贝文件目录
-r:递归拷贝
cp java-project/src/Hello.java ./java-project/src/main/java/
#将Hello.java 拷贝到java地下
递归拷贝:如果要拷贝的文件下还有文件,那么命令可将整个文件全部拷贝过去
cp -r java-project/resources/ java-project/src/main/
2.12.rm 命令
删除件
删除文件或目录
-r 递归删除
-f 强制删除
rm java-project/src/Hello.java
2.13、mv命令
移动文件和目录
#用法:mv 目标文件 目标地址
mv java-project/resources/ java-project/src/main/
# mv也可以修改文件名称
mv java-project/src/main/java/Hello.java java-project/src/main/java/HelloWorld.java
此处将Hello.java 改为HelloWorld.java
查看文件命令
1.cat 显示文本文件内容
cat Demo.java
cat a.txt >b.txt #把a.txt的内容覆盖到b.txt
cat a.txt >>b.txt #把a.txt的内容追加到b.txt
2.more ,less 分页显示文本文件内容
more Demo.java
less Demo.java
3.head 显示前几行内容
-n :显示前几行内容
用法:head -n 5 Demo.java
4.tail 显示后几行的数据
-n 显示后几行的数据
-f 循环读取
v1(1号):
echo Hello world >>Demo.java
echo Hello world2 >>Demo.java
echo Hello world3 >>Demo.java
v1(2号) :刷新显示最新的日志
tail -n 10 -f Demo.java
5.wc 统计文本
统计文本的行数字数,字符数
-m 统计文本的字节数
-w统计文本的字数
-l 统计文本的行数
echo "hello java welcome to beijing" > a.txt
wc -w -l -m a.txt
6.find查找文件
用法:find -name Hello*.java
结果为:./java-project/src/main/java/HelloWorld.java
find -name jdbc.*
结果为:./java-project/src/main/resources/db/jdbc.properties
7.grep 在文本文件中找字符串(搜索)
-n 显示行数
-i 不区分大小写
-c 显示匹配的次数
grep class OAuth2Config.java -n -i -o
8.ln 创建软连接
ln -s 目标地址 文件名
ln -s /home/vagrant/java-project/src/main/java/HelloWorld.java app
echo "hello spring" >> app #通过软连接添加内容
cat app #通过软连接查看文件内容