Linux 是基于 Unix 的开源免费的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境。Linux 是由 Linus Torvalds(林纳斯·托瓦兹)起初开发的,由于源代码的开放性,现在已经衍生出了千上百种不同的Linux系统。
Linux 系统的应用非常广泛,不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,比如手机、平板电脑、路由器等
在这篇文章中,主要学习 Linux 的常用命令 for javaee ,可以解决在 javaee 实际开发中的大部分操作。
关于虚拟机,我这里市场使用率最高的 VMware,其安装过程自行 google。
至于哪个版本的Linux操作系统,我们这里用 CentOS,它是一个Linux的发行版本,目前企业中用来做应用服务器系统的主要版本。关于其安装以及资源,自行 google
Linux 的基本命令
目录切换命令
window 中通过图形化界面和鼠标可以任意切换需要进入的目录,但 Linux 必须通过 cd 命令切换目录。但在学习 cd 命令之前,我们有必要分清Linux的目录结构
PS:根目录下不除了这些目录还有一部分,这里没有全部列举出来。这里重点了解框住的三个目录,在实际开发当中,很多时候都是使用 etc 和 usr
cd usr 切换到该目录下usr目录
cd ../ 切换到上一层目录
cd / 切换到系统根目录
cd ~ 切换到用户主目录
cd - 切换到上一个所在目录
在 Linux 系统刚启动时,处于 root 目录下,使用如上命令可以自由切换位置
目录的操作命令(增删改查)
查看目录(查)
命令:ls [-al] 父目录
eg:在根目录 / 下使用ls,可以看到该目录下的所有的目录和文件
eg:在根目录 / 下使用 ls -a,可以看到该目录下的所有文件和目录,包括隐藏的。使用 ls -l 或者 ll,可以看到该目录下的所有目录和文件的详细信息
PS:上图第一列先不管是什么,后面重点讲
增加目录操作(增)
命令:mkdir 目录名称
eg:在根目录 / 下 mkdir test,就会在根目录 / 下产生一个 test1 目录
寻找目录(查)
命令:find 目录 参数
eg:查找 /root 下的与 test相关的目录(文件) find /root -name ‘ * d *‘
修改目录的名称(改)
命令:mv 目录名称 新目录名称
eg:root 目录下有一个 ddd 目录,使用 mv ddd newflod 命令修改
PS:mv 的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作
移动目录的位置—剪切(改)
命令:mv 目录名称 目录的新位置
eg:在 root 下将 newflod 目录剪切到 /test 下面,使用 mv newTest /test
PS:mv 语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作
拷贝目录(改)
命令:cp -r 目录名称 目录拷贝的目标位置 -----r 代表递归拷贝
eg:将 /root 下的 tar 拷贝到根目录下的 test 中,使用 cp -r /root/tar /test
PS:cp 命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不 用写 -r 递归
删除目录(删)
命令:rm [-rf] 目录
使用 rm -r 式会询问你是否删除,而在实际开发中我们一般使用 rm -rf 进行强制删除操作
eg:删除 /test 下的 tar,进入 /test 下使用 rm -rf tar
PS:rm 不仅可以删除目录,也可以删除其他文件或压缩包,为了增强大家的记忆, 无论删除任何目录或文件,都直接使用 rm -rf 目录/文件/压缩包
文件的操作命令(增删改查)
文件的创建(增)
命令:touch 文件名称 ----- 空文件
示例:在 test 目录下创建一个空文件 touch riji.txt
文件的查看(查)
命令:cat/more/less/tail 文件
eg:使用 cat 查看 /etc/sudo.conf 文件,只能显示最后一屏内容
eg:使用 more 查看 /etc/sudo.conf 文件,可以显示百分比,回车可以向下一行, 空格可以向下一页,q 可以退出查看
eg:使用 less 查看 /etc/sudo.conf 文件,可以使用键盘上的 PgUp 和 PgDn 向上 和向下翻页,q 结束查看
eg:使用 tail -10 查看 /etc/sudo.conf 文件的后10行,Ctrl+C 结束
PS:命令 tail -f 文件 可以对某个文件进行动态监控,例如 tomcat 的日志文件,会随着程序的运行,日志会变化,可以使用 tail -f catalina-2016-11-11.log 监控 文件的变化
修改文件的内容(改)
命令:vim 文件
eg:编辑 /test 下的 riji.txt 文件,使用 vim riji.txt
刚进去时并不能编辑,因为此时处于命令模式,点击键盘 i/a/o 进入编辑模式,可以编辑文件
编辑完成后,按下 Esc,退回命令模式。
但此时文件虽然已经编辑完成,但是没有保存,需输入冒号:进入底行模式,在底行模 式下输入 wq 代表写入内容并退出,即保存;输入 q! 代表强制退出不保存。
按下回车键确定
保存后,我们来验证一下,查看该文件内容
ps:vim 编辑器是 Linux 中的强大组件,是vi编辑器的加强版,vim 编辑器的命令和快捷方式有很多,但此处不一一阐述,大家也无需研究的很透彻,使用 vim 编辑修改文件的方式基本会使用就可以了。在实际开发中,使用vim编辑器主要作用就是修改配置文件–4javaee.
删除文件(删)
同目录删除:熟记 rm -rf 文件 即可
压缩文件的操作命令
打包并压缩文件
Linux 中的打包文件一般是以 .tar 结尾的,压缩的命令一般是以 .gz 结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般 .tar.gz。
命令:tar -zcvf 打包压缩后的文件名 要打包压缩的文件
其中:
z:调用gzip压缩命令进行压缩
c:打包文件
v:显示运行过程
f:指定文件名
eg:打包并压缩 /test 下的所有文件 压缩后的压缩包指定名称为 xxx.tar.gz
tar -zcvf xxx.tar.gz aaa.txt newflod riji.txt
或:tar -zcvf xxx.tar.gz ./*
解压压缩包(重点)
命令:tar [-xvf] 压缩文件
其中:x:代表解压
eg:将 /test 下的 xxx.tar.gz 解压到 /test1/temp 目录下。下图中 -C 代表指定解压的位置
将 /test 下的 xxx.tar.gz 解压到当前目录下,可以这样写:tar -xvf xxx.tar.gz
其他命令
显示当前所在位置
命令:pwd
搜索命令
命令:grep 要搜索的字符串 要搜索的文件
ps:以前版本中使用该搜索命令时 ,如 grep to sudo.conf,搜索出的内容中关键字并没用显示高亮,需要早末尾添加–color才显示关键字高亮,但在这个 Gentos7.0 的版本中,无论末尾写没写 --color ,关键字都显示高亮了。
查看进程
命令:ps -ef
eg:查看当前系统中运行的进程
管道命令
命令:| 将前一个命令的输出作为本次目录的输入
eg:查看当前系统中所有的进程中包括system字符串的进程
杀死进程
命令:kill -9 进程的pid
网络通信命令
查看当前系统的网卡信息:ifconfig
查看与某台机器的连接情况:ping
查看当前系统的端口使用:netstat -an
Linux 的权限命令
权限是 Linux 中的重要概念,每个文件/目录等都具有权限,通过 ls -l 命令我们可以 查看某个目录下的文件或目录的权限
eg:在随意某个目录下 ls -l或者 ll
第一列的内容的信息解释如下:
文件的类型:
d:代表目录
-:代表文件
l:代表链接(可以认为是window中的快捷方式)
后面的9位分为3组,每3位置一组,分别代表属主的权限,与当前用户同组的 用户的权限,其他用户的权限
r:代表权限是可读,r也可以用数字4表示
w:代表权限是可写,w也可以用数字2表示
x:代表权限是可执行,x也可以用数字1表示
修改文件/目录的权限的命令:chmod
eg:修改 /test 下的 aaa.txt 的权限为属主有全部权限,属主所在的组有读写权限,
其他用户只有读的权限
chmod u=rwx,g=rw,o=r aaa.txt
上述 eg 还可以使用数字表示:
chmod 764 aaa.txt