java程序员常用的linux命令
作为一个java后端开发者,在日常工作中肯定会有和linux打交道的时候。下面我整理了一些开发中可能需要用到的一些命令(写这篇随笔前,我也没有什么操作经验,主要防止自己忘记这些操作命令,以后有用到新的命令再修改)。
以下的操作是通过SecureCRT对服务器进行远程连接,使用WinSCP来进行文件上传。
一、用户相关的一些命令
1.新建用户 adduser username (只有root有权限新增用户)
2.修改用户密码 passwd username
3.切换用户 su username
4.删除用户 userdel username
5.以管理员的身份进行操作 sudo
二、文件的操作命令
1.列出文件的基本信息 ls -l
-rw-rw-r-- 1 ubuntu ubuntu 162 Mar 26 14:49 t.tar.gz
第一位字符d表示目录,- 表示文件
后面9位分别是当前用户、当前用户所在组和其他用户对文件的权限每个占三位。文件的权限中 - 表示没有权限; r表示读,数字为4;w表示写,数字为2;x表示执行,数字为1。
后面表示文件所属的用户和组,以及文件的大小,创建日期和文件名
2.修改文件操作权限
chmod u+x filename 表示给所属用户增加执行的权限
chmod g-w filename 表示给组减少写的权限
chmod o+w filename 表示给其他用户增加写的权限
chmod 777 filename 表示给所属用户,所属组,其他用户开放所有权限;7是通过4+2+1得到
3.文件的操作
pwd 显示当前所在的路径
mkdir filename 创建文件夹
mkdir -p /a/b 创建嵌套的目录
touch filename 创建文件
cp filename new_filename 复制文件
mv filename path 移动文件(如果路径中带文件名,则会给文件重命名)
rm -r filename 删除文件或者文件夹,(-r是递归的意思)
rm -f 强制删除目录或文件
rmdir filename 删除文件夹(只能是空文件夹)
find / -name "install.log“ 查找 可以用*作为通配符
4.文件的内容操作
find /path -name "*findname*" -type d 查询某个文件夹下面名字包含filename的文件夹
find /path -type d |wc -l 统计某路径下文件夹的个数
find /path -type f | wc -l 统计某路径下文件的个数
cat 查看文件内容
wc -lwc filename 统计文件的行数,字符数,字节数 l表示行数,w表示字符数,c表示字节数
> 覆盖式输出重定向符 >>追加式输出重定向符
vi filename 对文件进行编辑。
vi有三种模式,分别是命令模式、插入模式和末行模式。
默认进入命令模式,其他模式按esc也可进入命令模式
光标← ↑ → ↓ 上下左右
Page Down 或Ctrl+F 下翻一页
Page Up 或Ctrl+B 上翻一页
Home或^ 或0 跳至行首
End 或$ 跳至行尾
#→ 右跳#个字符
#← 左跳#个字符
1G 或 gg 跳至首行
G 跳至尾行
#G 跳至第#行
:set nu 示行数
:set nonu 显示行数
x或del 删除光标处的单个字符
dd 删除当前行
#dd 删除当前行开始的#行
d^ 删除当前行首至光标的字符
d$ 删除当前行尾至光标的字符
yy 复制当前行
#yy 复制当前行开始的#行
p 粘贴至光标的右侧
P 粘贴至光标的左侧
/word 向下查找字符串word
?word 向上查找字符串word
n 光标定位至下一个匹配字符
N 光标定位至上一个匹配字符
u 单次撤销 多次恢复
U 撤销所有编辑
插入模式:命令模式下,i 、a、o、 Insert即可进入。该模式可用于编辑文本
末行模式:shit+: 即可进入
:w 保存文件
: /filename 另存文件为fielname
:q 未修改时退出
:q! 不保存且强制退出
:wq 保存修改并退出
:s /old/new 前行的第一个old替换为new
:s /old/new/g 前行的所有old替换为new
:#,# s /old/new/g #行间的所有old替换为new
:% s /old/new/g 当前文件所有old替换为new
:s /old/new/c old替换为new时提示确认替换
:g/str1/s//str2/g str2 替换所有的str1
二、程序员日常维护项目所用的命令
1.找到服务器对应的进程 ps -ef |grep "tomcat" 这样就能知道服务器所对应的进程,以及服务器安装的目录。
2.关闭服务器可以用kill -9 pid 杀死进程。也可以到tomcat的bin目录下./shutdown.sh。开启服务器./startup.sh
3.用winscp,上传修改后的文件。
4.日志查看,tail -200f catalina.out 显示日志的最后200行。ctrl+c 退出查看。
三、jdk和tomcat的安装和卸载(我个人习惯安装在/opt目录下)
打包 tar -cvf 1.tar 1.txt
打包并压缩 tar -cvzf 1.tar.gz 1.txt
压缩 gzip 1.txt
解压 gzip -d 1.txt.zip
解压缩并拆包 tar -zxvf 1.tar.gz
拆包 tar -xvf XXXXX.tar
解压.tar.xz文件,要先执行 xz -d XXXXXX.tar.xz 将该文件变为.tar文件然后再解包
有两种方式安装,自动和手动。
①从官网下载所需版本jdk安装包,上传到服务器,并解压。
设置环境变量:vim /etc/profile
在文件的末尾加上
export JAVA_HOME="/opt/jdk1.8.0_131"
export PATH="${JAVA_HOME}/bin:$PATH"
修改完成后用source /etc/profile执行profile文件,然后用java -version 进行测试。
②从官网下载对应的版本tomcat安装包,上传到服务器,并解压。
1、查看/etc/profile文件中有没有配置环境变量。
2、修改tomcat的conf目录下server.xml文件,修改http1.1监听的端口改为80。
3、启动服务器tomcat的bin目录下./startup.sh
4、关闭服务器tomcat的bin目录下./shutdown.sh
5、查看端口号被哪个线程占用 lsof -i:80
6、根据pid查询进程相关信息;cd /proc/5941;然后ls -ail 即可。
四、其他命令记录
1.卸载软件 apt-get purge XXXX
java程序员常用的linux命令的更多相关文章
- Java程序员常用的Linux命令01——linux命令基础
1.显示日期的命令date 显示日期: [root@localhost ~]# date 显示年月日: [root@localhost ~]# date '+%Y%m%d' 2.显示日历指令cal 显 ...
- 后端程序员常用的linux命令
1. windows ctrl+ - 终端窗口变小 ctrl + shift + = 终端窗口变大 1. mac command+ - 终端窗口变小 command ...
- java程序员常用的cmd命令
1.查看端口号或者进程号使用情况 1.1.查看所有端口占用情况 C:\Users\Administrator>netstat -ano 活动连接 协议 本地地址 (ip:端口) 外部地址 状态 ...
- JAVA程序员常用英语
JAVA程序员常用英语 干程序员这行实在是离不开英语,干程序员是一项很辛苦的工作,要成为一个高水平的程序员尤为艰难.这是因为计算机软件技术更新的速度越来越快,而这些技术大多来源于英语国家,我们在引进这 ...
- Java程序员常用工具类库
有人说当你开始学习Java的时候,你就走上了一条不归路,在Java世界里,包罗万象,从J2SE,J2ME,J2EE三大平台,到J2EE中的13中核心技术,再到Java世界中万紫千红的Framework ...
- Java程序员常用的@Component、@Repository、@Controller、@Service系列【案例demo3】
Java程序员常用的@Component.@Repository.@Controller.@Service系列[案例demo3] 很多程序员通过在类上使用@Repository.@Componen ...
- Java程序员常用工具集
我发现很多人没办法高效地解决问题的关键原因是不熟悉工具,不熟悉工具也还罢了,甚至还不知道怎么去找工具,这个问题就大条了.我想列下我能想到的一个Java程序员会用到的常用工具. 一.编码工具 1.IDE ...
- JAVA程序员常用开发工具
1.JDK (Java Development Kit)Java开发工具集 SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK).开发人员和最终用户可以利 ...
- JAVA程序员常用软件类库下载地址整理
IT行业是个发展更新特别快的领域,每个程序员在职业生涯中都会经历各类技术和工具的更新迭代. 俗话说:工欲善其事,必先利其器.本着独乐乐不如众乐乐的精神(其实是自己健忘)本人把经常要用到的软件工具官方下 ...
随机推荐
- oracle复习(二)
十一.replace 替换格式:(原字符串,要查找的字符或字符串,替换的字符或字符串)select replace('hello world','o','a') from dual; //替换时区分大 ...
- BZOJ4849[Neerc2016]Mole Tunnels——模拟费用流+树形DP
题目描述 鼹鼠们在底下开凿了n个洞,由n-1条隧道连接,对于任意的i>1,第i个洞都会和第i/2(取下整)个洞间有一条隧 道,第i个洞内还有ci个食物能供最多ci只鼹鼠吃.一共有m只鼹鼠,第i只 ...
- grafana安装使用及与zabbix集成
grafana简介Grafana是一个完全开源的度量分析与可视化平台,可对来自各种各种数据源的数据进行查询.分析.可视化处理以及配置告警. Grafana支持的数据源:官方:Graphite,Infl ...
- 【HDU1846】Brave Game(博弈论)
题面 HDU 题解 \(Bash\ Game\)模板题 #include<iostream> using namespace std; int T,n,m; int main() { io ...
- 【BZOJ5471】[FJOI2018]邮递员问题(动态规划)
[BZOJ5471][FJOI2018]邮递员问题(动态规划) 题面 BZOJ 洛谷 给定平面上若干个点,保证这些点在两条平行线上,给定起点终点,求从起点出发,遍历所有点后到达终点的最短路径长度. 题 ...
- MongoDB 数据库创建删除、表创建删除、数据增删改查
一.管理 mongodb 数据库:mongo 查看所有数据库列 表 show dbs 二. 创建数据库 创建 数据库 use student 如果真的想把这个数据库创建成功,(collections) ...
- luogu P4299 首都
题目描述 在X星球上有N个国家,每个国家占据着X星球的一座城市.由于国家之间是敌对关系,所以不同国家的两个城市是不会有公路相连的. X星球上战乱频发,如果A国打败了B国,那么B国将永远从这个星球消失, ...
- smtp
新闻系统的定时通知初步有三种实用方式,1.短信 2.邮箱 3.微信 短信就不得不使用第三方平台,虽说5分一条,但耐不住量大,一天1000条的话,50元也是一笔不小的支出. 这时,邮箱和微信的优势就体现 ...
- HTML 5 canvas globalCompositeOperation 属性
做一个canvas鼠标跟随动画的时候用到了,就copy w3c的解释整理一番: globalCompositeOperation 属性设置或返回如何将一个源(新的)图像绘制到目标(已有)的图像上. 源 ...
- CF528D Fuzzy Search
题意:给定k,只含有ACGT的字符串S和T,求T在S中出现了多少次. 字符匹配:如果S的[i - k, i + k]中有字符x,那么第i位可以匹配x. 解: 首先预处理:f[i][j]表示S的第i位能 ...