作为一个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命令的更多相关文章

  1. Java程序员常用的Linux命令01——linux命令基础

    1.显示日期的命令date 显示日期: [root@localhost ~]# date 显示年月日: [root@localhost ~]# date '+%Y%m%d' 2.显示日历指令cal 显 ...

  2. 后端程序员常用的linux命令

    1. windows   ctrl+ -  终端窗口变小      ctrl + shift + =  终端窗口变大 1. mac   command+ -  终端窗口变小      command  ...

  3. java程序员常用的cmd命令

    1.查看端口号或者进程号使用情况 1.1.查看所有端口占用情况 C:\Users\Administrator>netstat -ano 活动连接 协议 本地地址 (ip:端口) 外部地址 状态 ...

  4. JAVA程序员常用英语

    JAVA程序员常用英语 干程序员这行实在是离不开英语,干程序员是一项很辛苦的工作,要成为一个高水平的程序员尤为艰难.这是因为计算机软件技术更新的速度越来越快,而这些技术大多来源于英语国家,我们在引进这 ...

  5. Java程序员常用工具类库

    有人说当你开始学习Java的时候,你就走上了一条不归路,在Java世界里,包罗万象,从J2SE,J2ME,J2EE三大平台,到J2EE中的13中核心技术,再到Java世界中万紫千红的Framework ...

  6. Java程序员常用的@Component、@Repository、@Controller、@Service系列【案例demo3】

    Java程序员常用的@Component.@Repository.@Controller.@Service系列[案例demo3]   很多程序员通过在类上使用@Repository.@Componen ...

  7. Java程序员常用工具集

    我发现很多人没办法高效地解决问题的关键原因是不熟悉工具,不熟悉工具也还罢了,甚至还不知道怎么去找工具,这个问题就大条了.我想列下我能想到的一个Java程序员会用到的常用工具. 一.编码工具 1.IDE ...

  8. JAVA程序员常用开发工具

    1.JDK (Java Development Kit)Java开发工具集 SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK).开发人员和最终用户可以利 ...

  9. JAVA程序员常用软件类库下载地址整理

    IT行业是个发展更新特别快的领域,每个程序员在职业生涯中都会经历各类技术和工具的更新迭代. 俗话说:工欲善其事,必先利其器.本着独乐乐不如众乐乐的精神(其实是自己健忘)本人把经常要用到的软件工具官方下 ...

随机推荐

  1. FTP登录不上 显示“找不到元素”

    FTP登录不上 显示“找不到元素” 问题描述: 资源管理器登陆不上ftp服务器,ie现在打不开网页(包括普通的网页和ftp)360等其他浏览器可以正常打开网页. 解决方法: 应该是用了代理软件的问题, ...

  2. EasyUI-datebox设置开始日期小于结束日期,并且结束日期小于当前日期

    datebox设置开始日期小于结束日期,并且结束日期小于当前日期 //日期控制扩展选择日期小于等于当前日期,开始日期小于等于结束日期 $("#datebox1").datebox( ...

  3. python史上最全学习路线图

    ps:盘它 python入门教程 关注微信公众号,回复"python入门"获取视频下载地址

  4. 我踩过的Alwayson的坑!

    最近被sql server Alwayson高可用组和读写分离,弄得神魂颠倒,身心俱疲.遇到了下面一些问题,提醒自己也给后来人做些记录. EntityFramework支不支持Alwayson? 起因 ...

  5. 洛谷P1216数字三角形题解

    题目 这道题是一个典型的DP,可以用倒推,顺推的方法,来解这道题.当然用不同的方法他的循环次序是不一样的,所以我们一定要深刻地理解题目的大意,再采用状态转移方程与边界每次求出最优解,并记录循环一遍后就 ...

  6. MT【270】含参绝对值函数最大之二

    已知$f(x)=2ax\cos^2x+(a-1)\cos x-1,a>0$,记$|f(x)|$的最大值为$A$,1)求A.2)证明:$|-2a\sin 2x+(1-a)\sin x|\le 2A ...

  7. 【转】Qt之JSON保存与读取

    简述 许多游戏提供保存功能,使得玩家在游戏中的进度可以被保存,并在以后再玩的时候进行加载.保存游戏的过程通常涉及将每个游戏对象的成员变量序列化为文件.要实现这个功能,可以采取许多格式,其中之一就是 J ...

  8. 自学华为IoT物联网_01 物联网概述

    点击返回自学华为IoT物流网 自学华为IoT物联网_01 物联网概述 1. 物联网的概念 百度百科: 物联网(Internet of Things),国内外普遍公认的是MIT Auto-ID中心Ash ...

  9. 【BZOJ4911】[SDOI2017]切树游戏(动态dp,FWT)

    [BZOJ4911][SDOI2017]切树游戏(动态dp,FWT) 题面 BZOJ 洛谷 LOJ 题解 首先考虑如何暴力\(dp\),设\(f[i][S]\)表示当前以\(i\)节点为根节点,联通子 ...

  10. ST算法(倍增)(用于解决RMQ)

    ST算法 在RMQ(区间最值问题)问题中,我了解到一个叫ST的算法,实质是二进制的倍增. ST算法能在O(nlogn)的时间预处理后,用O(1)的时间在线回答区间最值. f[i][j]表示从i位起的2 ...