Linux常用命令
上次我们学会了如何安装并配置虚拟机,今天我们学习一些常用命令
启动
启动所有虚拟机:
vagrant up
启动某一个虚拟机(s1):
vagrant up s1
关闭
关闭所有虚拟机:
vagrant halt
关闭某一个虚拟机(s1):
vagrant halt s1
Vim:vim基本介绍 vim是一个虚拟机中的类似于文本编辑器的工具,可以用来查看,修改文件。
标准的虚拟机box中没有vim,我们可以通过指令下载vim
下载指令:yum install vim -y
下载完成
再次输入vim:
虚拟机vim安装成功~
我们虚拟机已经安装了vim,所以我们可以把当前的虚拟机打包,产生一个自定制的box,上传云端或本地,将来别人或者我们自己通过这个box创建虚拟机时,虚拟机就已经存在vim了
具体步骤:
#关闭虚拟机
vagrant halt s1
#打包当前虚拟机
vagrant package --base s1 --output centos_v2.box
注意,这里在哪个文件夹打包的虚拟机,就会存到哪个文件夹,这里我们存到了s13文件夹
文件夹:
得到了centos_v2.box后,把它加入到vagrant中+
vagrant box add centos_v2 ./centos_v2.box
删除现有的虚拟机
vagrant halt #关闭所有虚拟机
vagrant destroy # 删除所有的虚拟机
vagrant destroy s1 #删除s1
把打包好的centos_v2添加到vagrant中
vagrant box add centos_v2 ./centos_v2.box
新建一个v2目录,并且将S13中的两个配置文件复制到v2
对v2中的两个配置文件做一些修改:
3…3代表循环一次,因为只创建一个虚拟机
centos_v1改为centos_v2,因为用的box是centos_v2
192.168.56.7#改为192.168.56.4,最后的数也可以改为其他,目的是不和之前创建的s1、s2、s3虚拟机ip重复
最后,成功安装了带有vim的虚拟机
Linux目录结构
● bin (binaries)存放二进制可执行文件
● sbin (super user binaries)存放二进制可执行文件,只有root才能访问
● etc (etcetera)存放系统配置文件
● usr (unix shared resources)用于存放共享的系统资源
● home 存放用户文件的根目录
● root 超级用户目录
● dev (devices)用于存放设备文件
● lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块
● mnt (mount)系统管理员安装临时文件系统的安装点
● boot 存放用于系统引导时使用的各种文件
● tmp (temporary)用于存放各种临时文件
● var (variable)用于存放运行时需要改变数据的文件
Vagrantfile所在目录,默认挂载到虚拟机/vagrant
常用命令
- 快捷键
● ctrl+l:清屏 = clear命令
● tab:自动补全
● 方向的上下键:历史命令=history
● ctrl + c:停止进程
● ctrl + r:搜索历史命令
● \:命令结束表示换行
- 打印命令
echo hello linux
echo hello v3 > v3.txt #覆盖
echo hello v3 >> v3.txt#追加
- ls命令
ls -la #详细查看,所有文件和目录
- 查看命令的帮助
man ls
文件或目录常用命令
- cd 进入目录
这里是引用
#进入用户的宿主目录
cd ~
#进入上级目录
cd …
#进入上一个历史目录
cd -
- 显示当前工作目录
pwd
- 切换用户 su
su vagrant #切换到vagrant用户
su root #切换到root用户
- 创建目录 mkdir
#创建目录
mkdir /home/vagrant/java-project/src
#自动产生父目录
mkdir -p /home/vagrant/java-project/src
#-p 指父目录不存在情况下先生成父目录
- 以树列表目录 tree(需要下载插件)
su root #切换管理员
yum install -y tree #下载插件
tree java-project #将java-project以树列表目录
- 创建空文件 touch
touch Hello.java
- 拷贝文件,目录 cp
-r:递归拷贝
cp java-project/src/Hello.java ./java-project/src/main/java/
8.递归拷贝 rm
● -r:递归删除
● -f:强制删除
rm java-project/src/Hello.java
- 移动文件和目录
mv java-project/resources/ java-project/src/main/
mv可以修改文件名
mv java-project/src/main/java/Hello.java java-project/src/main/java/HelloWorld.java
- 显示文本文件内容 cat
cat OAuth2Config.java
cat a.txt > b.txt #把a.txt内容覆盖到b.txt
cat a.txt >> b.txt #吧a.txt追加到b.txt
11.分页显示文本文件内容 more、less
more OAuth2Config.java
less OAuth2Config.java
- 显示内容 head
head -n
- tail
● -n 显示后几行数据
● -f b.log 循环读取(fellow,即时读取)
tail -n 10 OAuth2Config.java
- 统计文本的行数、字数、字符数 wc
● -m 统计文本字节数
● w 统计文本字数
● -l 统计文本行数
#将内容写入a文件
echo “hello java welcome to beijing” > a.txt
#统计a文件中的行数、字数、字节数
wc -w -l -m a.txt
- 查找文件 find
find -name Hello*.java
- find -name Hello*.java
● -n显示行数
● -i不区分大小写
● …
grep class OAuth2Config.java -n -i -o
grep 在指定的文本文件中查找指定的字符串
- 创建软连接 ln
格式:
ln -s 目标地址 文件名
创建软连接:
ln -s /home/vagrant/java-project/src/main/java/HelloWorld.java app
echo “hello spring” >> app #通过软连接添加内容
cat app #通过软连接查看文件内容