程序员最常用linux命令(持续更新版)

作为开发者,公司职务分的不是很明确,开发有时候也得去linux上搞搞版本上线,环境搭建,部署系统之类的,所以下面是个人经历过,遇到在linux上经常用到什么命令,记录下来

进入文件夹命令

cd + 文件夹名字

列出文件夹下面的文件:

ll

或者

ls

ll和ls的区别是一个更加详细一些,可以看到权限,文件大小,文件时间之类的
效果如图:
这里写图片描述
当然还有ls 还可以加参数,常用过的也就是下面:

ls -lth

这里写图片描述

统计当前文件夹文件个数

ls | wc -l

查看进程

一般用于查看某个项目是否在运行状态

ps -ef | grep + 进程名,一般是项目名
#可以过滤多个文件夹名字,比如:
ps -ef | grep java | grep cmis 

例如:
这里写图片描述

上面查出进程,可以通过命令杀死进程,通过进程id杀进程,上面的818和864就是进程id,命令如下:

kill -9 + 进程id

查看文件命令

查看小文件内容,可用cat命令:

cat + 文件名

查看日志文件可用veiw命令:

view + 文件名

在view打开文件下查询文件内容:
输入/即可查询

/ 关键字  

选择下一个关键字只需要点击键盘n键,选择上一个关键字键盘大写N键:

n 下一个关键字
N 上一个关键字

翻页用快捷键是:

Ctrl + f 下翻
ctrl + b 上翻

如果文件太大可以改用more命令,这个命令是一页一页的显示出来的,对于查找会比较不方便,但是对于查看文件效率高一些
查找文件:find
find命令功能非常强大,通常用来在特定的目录下搜索符合条件的文件,也可以用来搜索
特定用户属主的文件。
常用用法:
命令 含义
find ./ -name test.sh 查找当前目录下所有名为test.sh的文件
find ./ -name ‘*.sh’ 查找当前目录下所有后缀为.sh的文件
find ./ -name “[A-Z]*” 查找当前目录下所有以大写字母开头的文件
find /tmp -size 2M 查找在/tmp 目录下等于2M的文件
find /tmp -size +2M 查找在/tmp 目录下大于2M的文件
find /tmp -size -2M 查找在/tmp 目录下小于2M的文件
find ./ -size +4k -size -5M 查找当前目录下大于4k,小于5M的文件
find ./ -perm 777 查找当前目录下权限为 777 的文件或目录

vi命令
用于在linux下编辑一些配置文件用的,操作如下:

vi + 文件名
#也可以用下面的,但是部分系统没有vim
vim + 文件名

命令模式:
yy:复制 光标所在的这一行
4yy:复制 光标所在行开始向下的4行

p: 粘贴

dd:剪切 光标所在的这一行
2dd:剪切 光标所在行 向下 2行
D:从当前的光标开始剪切,一直到行末
d0:从当前的光标开始剪切,一直到行首
x:删除当前的光标,每次只会删除一个
X:删除当前光标前面的那个,每次只会删除一个

h左 j下 k上 l右

H:当前屏幕的上方
M:当前屏幕的中间
L:当前屏幕的下方

ctrl+f--->向下翻一页代码
ctrl+b--->向上翻一页代码

ctrl+d--->向下翻半页代码
ctrl+u--->向上翻半页代码


20G:快速的定位到第2行代码
G:快速的回到 整个代码的最后一行
gg:快速回到 整个代码的第1行

w:向后跳一个单词的长度,即调到下一个单词的开始出
b:向前跳一个单词的长度,即调到上一个单词的开始出

u:撤销刚刚的操作
ctrl+r:反撤销

选中一片代码
v:
V:

>>:向右移动代码
<<:向左移动代码

.:重复执行上一次的命令

r:替换一个字符
R:替换光标以及后面的字符

shift+zz:相当于wq

末行模式:
w:保存
q:退出
wq:保存并且退出
x:保存退出

在vim命令模式下查找文件内容
输入:号,然后在输入/+要查找的内容然后点击enter即可
这里写图片描述

压缩解压

tar命令

  解包:tar zxvf FileName.tar

  打包:tar czvf FileName.tar DirName

查看动态日志文件

一般是查看tomcat下的logs文件夹里的catalina.out文件
进入到logs文件夹下,使用以下命令:

tail -f catalina.out

如果想查看前面多少条日志,可以加上-n 和条数:
下面是查看基于当前往回找1500行日志

tail -f -n 1500 catalina.out

修改(添加)环境变量

改的是 etc目录下的profile文件,命令如下:

vim /etc/profile

例如添加java环境,jdk解压在opt目录:
注意点:等号两边不能有空格,不然会报错:bash: export: `=’: 不是有效的标识符

#jdk1.7 setting
export JAVA_HOME=/opt/jdk1.7.0_80
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

保存退出后,让/etc/profile文件修改后立即生效,需要执行以下命令:

source /etc/profile

然后检查效果,输入java -version就知道了

[root@localhost ~]# java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
[root@localhost ~]# 

wget命令使用

该命令是用来下载文件的,比如下载maven文件
我们可以在window上找到官方文件的下载地址,然后复制地址到linux用wget下载到linux下面:
下面是window下的网页打开看到maven文件下载地址:
这里写图片描述
linux下面使用命令下载该文件,地址加上文件名:

 wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz

执行效果如下,在哪个目录下输入这个下载命令就是下载到那个目录下的:

[root@localhost ~]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz
--2018-06-14 16:29:54--  http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz
正在解析主机 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.8.193, 2402:f000:1:408:8100::1
正在连接 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.8.193|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:8799579 (8.4M) [application/octet-stream]
正在保存至: “apache-maven-3.5.3-bin.tar.gz100%[=============================================>] 8,799,579   1.37MB/s 用时 7.1s   

2018-06-14 16:30:01 (1.17 MB/s) - 已保存 “apache-maven-3.5.3-bin.tar.gz” [8799579/8799579])

创建文件

touch 文件名

touch aa.txt

复制文件或者重命名文件

cp命令
用cp来重命名,原文件依然存在,不过这个命令是用来拷贝文件的,可以拷贝到其他地方去,文件名可以是带路径的

cp 文件名1 文件名2

mv命令
这样重命名,原文件就没了

 mv test.txt wbk.txt

猜你喜欢

转载自blog.csdn.net/u014204541/article/details/80162812