zoukankan      html  css  js  c++  java
  • 重要常用的Lunix命令

    lunix 命令大全:  http://man.linuxde.net/

    1. 复制文件/文件夹

      • 复制到本地
        1. 文件夹:scp -r work@www.abc.com:/home/work/project /home/work/
        2. 文件:scp work@www.abc.com:/home/work/readme.txt /home/work/readme.txt
      • 复制到远程机
        1. 文件夹:scp -r work@www.abc.com:/home/work/project /home/work/
        2. 文件:scp work@www.abc.com:/home/work/readme.txt /home/work/readme.txt
    2. hostname与ip互相查询

      • hostname -> ip
        1. ping:ping www.baidu.com
        2. host:host www.baidu.com
      • ip -> hostname
        1. nslookup:nslookup 123.126.56.253
    3. 获取端口信息
      netstat -anp|grep 51202 //51202为端口信息
      输出:可以获取所有相关的端口信息,包含本机,也包含和本机有连接的其他机器的对应端口
      示例输出:
      tcp 0 0 10.22.36.39:51202 10.25.76.52:8864 ESTABLISHED 28321/java
      这里的28321即为端口对应的程序的线程信息

    4. 获取线程相关信息
      ll /proc/28321

    5. 创建文件连接

      • 硬连接:ln f1 f3       #创建f1的一个连接文件f3
      • 软连接:ln f1 f3       #创建f1的一个符号连接文件f3
    6. 查看log必备工具

      • vim vim a.txt //vim的详细操作之后专门讲
      • less less a.txt //不可编辑的工具
      • tail tail -f a.log //动态写入新文件的必备神器
      • grep grep ‘run to there’ /home/logs/logFile.log //grep可以对文件内信息进行搜索,当log文件很大时,必须使用grep进行处理。grep命令用好可以解决很多问题
    7. 查看某个项目是否已启动

      • ps aux|grep:ps aux|grep redis-server
    8. 当ssh连接开发机后,退出前,检查是否有stop的job,及后续操作

      • jobs: jobs //显示所有未关闭的任务
        示例:

    [1]+ Stopped tail -f project/logs/logFile.2016-09-23.log | grep "BaseImCCmdTask logout..76016..location=1"
    ```
    //这是之前使用tail -f查看日志后,按Crtl+z或c stop掉的任务,事实上并没有关闭。

    - jobs -l `jobs -l //显示所有未关闭的任务,且带线程信息`
    
    	示例:
    	
    	```          
           [1]+ 16051 Stopped                 tail -f xp-pms/1/logs/logFile.2016-09-23.log
                   16052                           | grep "BaseImCCmdTask logout.*.76016.*.location=1"
    	```    
    
                               
    	//有两个线程还在,16051和16052
    
    - fg:`fg tail   //fg + 参数, 标识现在仍执行的jobs,可以把stop的job切换到控制台继续执行`
    
    - bg: `bg tail //bg+ 参数,标识现在仍在执行的jobs,可以把job切换到后台继续执行`
    
    - kill -9 `kill -9 16051 //杀死相关线程`  
    
    1. 查看系统最大进程数、线程数限制(root权限)

      • 最大线程数:cat /proc/sys/kernel/pid_max
      • 最大进程数:cat /proc/sys/kernel/threads-max
      • 硬件内存大小:cat /proc/sys/vm/max_map_count
    2. 查询已用的线程或进程数

      • 进程8080:pstree -p 8080 | wc -l

      注意,pstree查出来的可能是一个进程的线程,也可能是子进程。
      一个奇怪的实例:tomcat的进程号为12319,用ps aux|grep tomcat查到的该tomcat只有一个进程12319,用pstree -p 12319查到改进程有一堆线程,如31298。有趣的是,用ll /proc/31298都能查到的信息与线程并无不同,而用ll /proc/12319/task能查到它的线程与pstree数据基本重复。而用ls /proc/有查不到31298。因此得出结论,pstree查到的不仅仅是子线程,/proc/目录下的目录也不仅是进程信息,可能有线程信息,只是线程信息不回列在默认的ls中。

    目前总结部分常用且有用的,之后会陆续补充,而对于vim、grep等重要工具的常用用法会另外说明

  • 相关阅读:
    “Win10 UAP 开发系列”之 在MVVM模式中控制ListView滚动位置
    “Win10 UAP 开发系列”之主题模式切换
    Windows Phone 8.1中AppBarToggleButton的绑定问题
    Windows Phone 8.1中处理后退键的HardwareButtons.BackPressed事件
    在后台代码中动态生成pivot项并设置EventTrigger和Action的绑定
    数据对象转json与md5加密注意事项
    iOS中wkwebview加载本地html的要点
    iOS项目开发常用功能静态库
    AFN中请求序列化的设置
    swift中的AnyHashable
  • 原文地址:https://www.cnblogs.com/shenpengyan/p/5898450.html
Copyright © 2011-2022 走看看