Linux命令-推荐

2023-11-19

大侠必备:杀进程 命令:

  ps -ef | grep java (先查java进程ID)

  kill -9  PID(生产环境谨慎使用)

kill、killall、pkill命令的区别

  kill:通过pid来杀死进程

  killall (killall [参数] [进程名]):Linux系统中的killall命令用于杀死指定名字的进程(kill processes by name)。我们可以使用kill命令杀死指定进程PID的进程,如果要找到我们需要杀死的进程,我们还需要在之前使用ps等命令再配合grep来查找进程,而killall把这两个过程合二为一,是一个很好用的命令。  

  pkill:pkill 和killall 应用方法差不多,也是直接杀死运行中的程式;如果你想杀掉单个进程,请用kill 来杀掉。例子: pkill -9 firefox

1.查看日志常用命令

    tail:  

       -n  是显示行号;相当于nl命令;例子如下:

            tail -100f test.log      实时监控100行日志

            tail  -n  20  test.log   查询日志尾部最后20行的日志;  --日志多时推荐

            tail -n +10 test.log    查询10行之后的所有日志;

    head:  

        跟tail是相反的,tail是看后多少行日志;例子如下:

            head -n 10  test.log   查询日志文件中的头10行日志;

            head -n -10  test.log   查询日志文件除了最后10行的其他所有日志;

    cat: 

        tac是倒序查看,是cat单词反写;例子如下:

            cat -n test.log |grep "debug"   查询关键字的日志

2. 应用场景一:按行号查看---过滤出关键字附近的日志

     1)cat -n test.log |grep "debug"  得到关键日志的行号

  2)通常查找出错误日志 cat error.log | grep 'nick' , 这时候我们还有个需求就是输出当前这个日志的前后几行:

    cat error.log | grep -B 5 'nick' 显示nick及前5行

    cat error.log | grep -A 5 'nick' 显示nick及后5行

    cat error.log | grep -C 5 'nick' 显示file文件里匹配nick字串那行以及上下5行

    cat error.log | grep -n -B10 -A10 5 'nick' 显示file文件里匹配nick字串前后10行

  

3. 应用场景二:选取日志中特定范围进行分析

   1)cat -n test.log |tail -n +1000|head -n 20   从第1000行开始,显示20行

            tail -n +1000表示查询1000行之后的日志

            head -n 20 则表示在前面的查询结果里再查前20条记录

  2)cat catalina.out | head -n 1400| tail -n +1350  显示1350行到1400行 (实现原理都差不多,就是通过语法糖)

 (1)按日期截取 :一般在日志系统中都会记录打印日志的时间,通常我们非常需要查找指定时间端的日志:

        sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p'  test.log

        特别说明:该命令中的两个日期值必须是日志文件中包含的值,否则该命令无效.; 先 grep '2014-12-17 16:17:20' test.log 来确定日志中是否有该 时间点

 (2)按行数截取

    sed -n ‘10000,20000p’ test.log                

      sed -i '/关键词/d' catalina.out  删除包含关键词的行

4.应用场景三:日志内容特别多,打印在屏幕上不方便查看

    (1)使用moreless命令,

           如: cat -n test.log |grep "debug" |more     这样就分页打印了,通过点击空格键翻页

    (2)使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析

            如:cat -n test.log |grep "debug"  >debug.txt

5:使用管道进行and or条件处理

  and 使用管道实现   例如:  grep -n '日志排查' test.log | grep '日志'

  or 用-E   例如:grep -n -E '日志排查|hello' test.log  满足两个关键字的都可以找出来

6:如何看查占用cpu最多的进程?

方法一

核心指令:ps

实际命令

  ps H -eo pid,pcpu | sort -nk2 | tail

执行效果如下:

[work@test01 ~]$ ps H -eo pid,pcpu | sort -nk2 | tail

31396  0.6

31396  0.6

31396  0.6

31396  0.6

31396  0.6

31396  0.6

31396  0.6

31396  0.6

30904  1.0

30914  1.0

结果

瞧见了吧,最耗cpu的pid=30914。

画外音:实际上是31396。

方法二

核心指令:top

实际命令

  top

  Shift + t

  top 命令类似于 Windows 的任务管理器,能够显示 Linux 系统中运行的进程的动态实时视图。

  默认情况下,top 输出结果是按 CPU 占用进行排序,每 5s 更新一次结果。我们可以使用 top-b|head-50 显示排前 50 的占用 CPU 最高的进程( Linux 中如何找出 CPU 占用高的进程

 )。 

上面的命令解释如下:

  • -b:批次档模式

  • head -50:显示输出结果的前 50 个

  • PID:进程的 ID

  • USER:进程的归属者

  • PR:进程的等级

  • NI:进程的 NICE 值

  • VIRT:进程使用的虚拟内存

  • RES:进程使用的物理内存

  • SHR:进程使用的共享内存

  • S:这个值表示进程的状态: S = 睡眠,R = 运行,Z = 僵尸进程

  • %CPU:进程占用的 CPU 比例

  • %MEM:进程使用的 RAM 比例

  • TIME+:进程运行了多长时间

  • COMMAND:进程名字

如果想看进程的完整信息,可以加 -c 参数,如 top-b-c|head-50

使用 ps

  ps 就是进程状态的缩写,可以显示当前运行进程的详细信息,如用户名、用户 ID、CPU 使用率、内存使用、进程启动日期时间、命令名等等。

  使用 ps-eo pid,ppid,%mem,%cpu,cmd--sort=-%cpu|head 可以显示占用 CPU 较高的进程信息(注意 --sort=-%cpu)。如下:

# ps -eo pid,ppid,%mem,%cpu,cmd --sort=-%cpu | head

PID PPID %MEM %CPU CMD

18527 1714 4.2 40.3 /usr/lib/firefox/firefox -contentproc -childID 18 -isForBrowser -prefsLen 10002 -prefMapSize 213431 -parentBuildID 20191031132559 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appdir /usr/lib/firefox/browser 1714 true tab

1714 1152 5.6 8.0 /usr/lib/firefox/firefox --new-window

18324 1714 4.9 6.3 /usr/lib/firefox/firefox -contentproc -childID 16 -isForBrowser -prefsLen 10002 -prefMapSize 213431 -parentBuildID 20191031132559 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appdir /usr/lib/firefox/browser 1714 true tab

3286 1714 2.0 5.1 /usr/lib/firefox/firefox -contentproc -childID 14 -isForBrowser -prefsLen 8078 -prefMapSize 213431 -parentBuildID 20191031132559 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appdir /usr/lib/firefox/browser 1714 true tab

1783 1714 3.0 4.5 /usr/lib/firefox/firefox -contentproc -childID 1 -isForBrowser -prefsLen 1 -prefMapSize 213431 -parentBuildID 20191031132559 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appdir /usr/lib/firefox/browser 1714 true tab

1227 1152 2.3 2.5 /usr/bin/gnome-shell

1170 1168 3.5 2.2 /usr/lib/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -nolisten tcp -background none -noreset -keeptty -verbose 3

16865 1714 2.5 2.1 /usr/lib/firefox/firefox -contentproc -childID 15 -isForBrowser -prefsLen 10002 -prefMapSize 213431 -parentBuildID 20191031132559 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appdir /usr/lib/firefox/browser 1714 true tab

2179 1714 2.7 1.8 /usr/lib/firefox/firefox -contentproc -childID 6 -isForBrowser -prefsLen 7821 -prefMapSize 213431 -parentBuildID 20191031132559 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appdir /usr/lib/firefox/browser 1714 true tab

上命令的解释如下:

  • -e:选择所有进程

  • -o:自定义输出格式

  • –sort=-%cpu:基于 CPU 使用率对输出结果排序

  • head:显示结果的前 10 行

  • PID:进程的 ID

  • PPID:父进程的 ID

  • %MEM:进程使用的 RAM 比例

  • %CPU:进程占用的 CPU 比例

  • Command:进程名字

如果想看命令名字而不是命令的绝对路径,可以:

7:找到了最耗CPU的进程ID,对应的服务名是什么呢?

方法一

核心指令:ps

实际命令

  ps aux | fgrep pid

执行效果如下:

[work@test01 ~]$ ps aux | fgrep 30914

work 30914  1.0  0.8 309568 71668 ?  Sl   Feb02 124:44 ./router2 –conf=rs.conf

结果

瞧见了吧,进程是./router2

画外音:  grep 和fgrep的区别?

两者都是搜索工具,但功能上有区别。
  1,首先,grep支持的是标准正则表达式。
  2,fgrep,不支持正则表达式,只用于匹配固定字符串。

所以后者要比前者速度快,当然同时后者的搜索功能要弱于前者。

方法二

直接查proc即可。

实际命令

ll /proc/pid

执行效果如下:

[work@test01 ~]$ ll /proc/30914

lrwxrwxrwx  1 work work 0 Feb 10 13:27 cwd -> /home/work/im-env/router2

lrwxrwxrwx  1 work work 0 Feb 10 13:27 exe -> /home/work/im-env/router2/router2

画外音:这个好,全路径都出来了。

8:如何查看某个端口的连接情况?

方法一

核心指令:netstat

实际命令

  netstat -lap | fgrep port

执行效果如下:

[work@test01 ~]$ netstat -lap | fgrep 22022

tcp        0      0 10.58.xxx.29:22022          *:*                         LISTEN      31396/imui

tcp        0      0 10.58.xxx.29:22022          10.58.xxx.29:46642          ESTABLISHED 31396/imui

tcp        0      0 10.58.xxx.29:22022          10.58.xxx.29:46640          ESTABLISHED 31396/imui

方法二

核心指令:lsof

实际命令

  lsof -i :port

执行效果如下:

[work@test01 ~]$ /usr/sbin/lsof -i :22022

COMMAND   PID USER   FD   TYPE   DEVICE SIZE NODE NAME

router  30904 work   50u  IPv4 69065770       TCP 10.58.xxx.29:46638->10.58.xxx.29:22022 (ESTABLISHED)

router  30904 work   51u  IPv4 69065772       TCP 10.58.xxx.29:46639->10.58.xxx.29:22022 (ESTABLISHED)

router  30904 work   52u  IPv4 69065774       TCP 10.58.xxx.29:46640->10.58.xxx.29:22022 (ESTABLISHED)

9:归档压缩文件导出指定内容到文件

命令:   zcat 压缩文件 |grep '关键词'  > 111.txt

注:>> 为追加;> 为重定向,会覆盖原先的内容

10:查找关键字及其前后的信息

  • 根据关键字查看日志
    cat hrun.log | grep "新增用户"
  • 根据关键字查看后10行日志
    cat hrun.log | grep "新增用户" -A 10
  • 根据关键字查看前10行日志
    cat hrun.log | grep "新增用户" -B 10
  • 根据关键字查看前后10行日志,并显示出行号
    cat -n hrun.log | grep "新增用户" -C 10
  • 查看日志前 50 行
    cat hrun.log | head -n 50
  • 查看日志后 50 行,并显示出行号
    cat -n hrun.log | tail -n 50

说明:
-A 表示关键字之后,After
-B 表示关键字之前,Before
-C 表示关键字前后,Context

10nohup的作用

 

nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时或者关闭客户端该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中。

nohup command > myout.file 2>&1 &  

在上面的例子中,0 – stdin (standard input),1 – stdout (standard output),2 – stderr (standard error) ;

2>&1是将标准错误(2)重定向到标准输出(&1),标准输出(&1)再被重定向输入到myout.file文件中。

  

1、nohup和&的区别

  & : 指在后台运行

  nohup : nohup运行命令可以使命令永久的执行下去,和用户终端没有关系,例如我们断开SSH连接都不会影响他的运行,注意了nohup没有后台运行的意思;&才是后台运行,

  

  &是指在后台运行,但当用户退出(挂起)的时候,命令自动也跟着退出

  nohup可以使用Ctrl+C结束掉,而&使用Ctrl+C则结束不掉,nohup不受终端关闭,用户退出影响,而&则受终端关闭,用户退出影响

结合起来用就是

nohup COMMAND &

这样就能使命令永久的在后台执行

 11Linux PATH环境变量及作用

  在讲解 PATH 环境变量之前,首先介绍一下 which 命令,它用于查找某个命令所在的绝对路径。例如:

[root@localhost ~]# which rm
/bin/rm
[root@localhost ~]# which rmdir
/bin/rmdir
[root@localhost ~]# which ls
alias ls='ls --color=auto'
        /bin/ls

注意,ls 是一个相对特殊的命令,它使用 alias 命令做了别名,也就是说,我们常用的 ls 实际上执行的是 ls --color=auto。

通过使用 which 命令,可以查找各个外部命令(和 Shell 内置命令相对)所在的绝对路径。学到这里,读者是否有这样一个疑问,为什么前面在使用 rm、rmdir、ls 等命令时,无论当前位于哪个目录,都可以直接使用,而无需指明命令的执行文件所在的位置(绝对路径)呢?其实,这是 PATH 环境变量在起作用。

首先,执行如下命令:

[root@localhost ~]# echo $PATH
/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin

这里的 echo 命令用来输出 PATH 环境变量的值(这里的 $ 是 PATH 的前缀符号),PATH 环境变量的内容是由一堆目录组成的,各目录之间用冒号“:”隔开。当执行某个命令时,Linux 会依照 PATH 中包含的目录依次搜寻该命令的可执行文件,一旦找到,即正常执行;反之,则提示无法找到该命令。

如果在 PATH 包含的目录中,有多个目录都包含某命令的可执行文件,那么会执行先搜索到的可执行文件。

从执行结果中可以看到,/bin 目录已经包含在 PATH 环境变量中,因此在使用类似 rm、rmdir、ls等命令时,即便直接使用其命令名,Linux 也可以找到该命令。

为了印证以上观点,下面举个反例,如果我们将 ls 命令移动到 /root 目录下,由于 PATH 环境变量中没有包含此目录,所有当直接使用 ls 命令名执行时,Linux 将无法找到此命令的可执行文件,并提示 No such file or directory,示例命令如下:

[root@localhost ~]# mv /bin/ls /root
[root@localhost ~]# ls
bash: /bin/ls: No such file or directory

此时,如果仍想使用 ls 命令,有 2 种方法,一种是直接将 /root 添加到 PATH 环境变量中,例如:

[root@localhost ~]# PATH=$PATH:/root
[root@localhost ~]# echo $PATH
/usr/local/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin:/root
[root@localhost ~]# ls
Desktop    Downloads    Music    post-install     Public    Videos
Documents  ls           Pictures post-install.org Templates

注意,这种方式只是临时有效,一旦退出下次再登陆的时候,$PATH 就恢复成了默认值。


另一种方法是以绝对路径的方式使用此命令,例如:

[root@localhost ~]# /root/ls
Desktop    Downloads    Music    post-install     Public    Videos
Documents  ls           Pictures post-install.org Templates

为了不影响系统的正常使用,强烈建议大家将移动后的 ls 文件还原,命令如下:

[root@localhost ~]# mv /root/ls /bin

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux命令-推荐 的相关文章

  • 标准头文件中的 C 编译器错误 - 未定义的 C++ 定义

    我正在尝试编译 C 程序 但收到许多错误 这些错误是在标准 C 头文件 inttypes h stdio h stat h 等 中遇到的 错误的来源是以下未定义的常量 BEGIN DECLS END DECLS BEGIN NAMESPAC
  • 无法执行'x86_64-conda_cos6-linux-gnu-gcc':没有这样的文件或目录(pysam安装)

    我正在尝试安装 pysam 执行后 python path to pysam master setup py build 这个错误的产生是 unable to execute x86 64 conda cos6 linux gnu gcc
  • linux x86 汇编语言 sys_read 调用的第一个参数应为 0 (stdin)

    我正在编写一个简单的汇编程序来从标准输入读取 如 scanf 这是我的代码 section bss num resb 5 section txt global start start mov eax 3 sys read mov ebx 0
  • 从 TypeScript 运行任何 Linux 终端命令?

    有没有办法直接从 TypeScript 类中执行 Linux 终端命令 这个想法是做类似的事情 let myTerminal new LinuxTerminal let terminalResult myTerminal run sudo
  • 适用于 KDE 和 Gnome 的 Gui [重复]

    这个问题在这里已经有答案了 我想为一个现在是 CLI 的应用程序编写一个 gui 它需要在 KDE 和 Gnome DE 中 看起来不错 充分利用用户的外观设置 如果我选择 Qt 或 GTK 我能够做到这一点吗 它们与两个 DE 集成良好吗
  • 如何查找连接到 AF_INET 套接字的客户端的 UID?

    有什么方法或类似的东西ucred for AF UNIX如果是AF INET插座 TCP在我的例子中 找出连接到我的套接字的客户端的UID 还有 proc net tcp但它显示了UID of the creator插座的而不是连接的cli
  • Docker:处理 tar 文件时出错(退出状态 1):设置枢轴目录时出错:不是目录

    我是 Docker 新手 不知道是什么原因导致此错误或如何诊断它 任何有关此问题的具体帮助或有关首先检查何处以诊断此类问题的提示将不胜感激 我的 Dockerfile FROM java 8 Install maven RUN apt ge
  • Linux shell 脚本中的 while 循环超时

    这工作正常 无限循环 while TRUE do printf done 我在尝试着timeout this while loop与timeout命令 所有这些都不起作用 timeout 5 while TRUE do printf don
  • 让 MongoDB 在 Linux 上监听远程连接

    我已在 Windows 本地计算机上 上成功安装 MongoDB 作为服务 但现在我想将 MongoDb 移动到单独的服务器 所以我将 tarball 解压到网络上的虚拟服务器 运行 Linux 当我从本地计算机使用 PuTTY 连接到服务
  • .NET Core 中的跨平台文件名处理

    如何处理文件名System IO以跨平台方式运行类以使其在 Windows 和 Linux 上运行 例如 我编写的代码在 Windows 上完美运行 但它不会在 Ubuntu Linux 上创建文件 var tempFilename Dat
  • xsel -o 对于 OS X 等效项

    是否有一个等效的解决方案可以在 OS X 中抓取选定的文本 就像适用于 Linux 的 xsel o 一样 只需要当前的选择 这样我就可以在 shell 脚本中使用文本 干杯 埃里克 你也许可以安装xsel在 MacOS 上 更新 根据 A
  • 何时使用 pthread 条件变量?

    线程问题 看来 只有在其他线程调用 pthread cond notify 之前调用 pthread cond wait 时 条件变量才起作用 如果在等待之前发生通知 那么等待将被卡住 我的问题是 什么时候应该使用条件变量 调度程序可以抢占
  • bluetoothctl 到 hcitool 等效命令

    在 Linux 中 我曾经使用 hidd connect mmac 来连接 BT 设备 但自 Bluez5 以来 这种情况已经消失了 我可以使用 bluetoothctl 手动建立连接 但我需要从我的应用程序使用这些命令 并且使用 blue
  • Elasticsearch 无法写入日志文件

    我想激活 elasticsearch 的日志 当我运行 elasticsearch 二进制文件时 我意识到我在日志记录方面遇到问题 无法加载配置 这是输出 sudo usr share elasticsearch bin elasticse
  • awk 子串单个字符

    这是columns txt aaa bbb 3 ccc ddd 2 eee fff 1 3 3 g 3 hhh i jjj 3 kkk ll 3 mm nn oo 3 我可以找到第二列以 b 开头的行 awk if substr 2 1 1
  • 创建 jar 文件 - 保留文件权限

    我想知道如何创建一个保留其内容的文件权限的 jar 文件 我将源代码和可执行文件打包在一个 jar 文件中 该文件将在使用前提取 人们应该能够通过运行批处理 shell 脚本文件立即运行示例和演示 然后他们应该能够修改源代码并重新编译所有内
  • 抑制 makefile 中命令调用的回显?

    我为一个作业编写了一个程序 该程序应该将其输出打印到标准输出 分配规范需要创建一个 Makefile 当调用它时make run gt outputFile应该运行该程序并将输出写入一个文件 该文件的 SHA1 指纹与规范中给出的指纹相同
  • 如何检测并找出程序是否陷入死锁?

    这是一道面试题 如何检测并确定程序是否陷入死锁 是否有一些工具可用于在 Linux Unix 系统上执行此操作 我的想法 如果程序没有任何进展并且其状态为运行 则为死锁 但是 其他原因也可能导致此问题 开源工具有valgrind halgr
  • 如何使用 xterm.js 创建基于 Web 的终端以 ssh 进入本地网络上的系统

    我偶然发现了这个很棒的图书馆xterm js https xtermjs org 这也是 Visual Studio Code 终端的基础 我有一个非常普遍的问题 我想通过基于网络的终端 不在网络中 可能位于 aws 服务器上 访问本地网络
  • 为什么 Linux perf 使用事件 l1d.replacement 来处理 x86 上的“L1 dcache misses”?

    在英特尔 x86 上 Linux用途 https stackoverflow com a 52172985 149138事件l1d replacements来实施其L1 dcache load misses event 该事件定义如下 计数

随机推荐

  • SpringBoot启动时初始化资源的几种方法

    SpringBoot提供了多种方法可实现在启动过程中初始化资源 使用注解 PostConstruct 实现InitializingBean接口 实现CommandLineRunner接口 实现ApplicationRunner接口 监听Sp
  • STM32F103实验定时器

    目录 本文 在上一章的基础上 将介绍如下内容 定时器 上一篇 STM32F103实验外部中断和独立看门狗 https blog csdn net qq 40318498 article details 95980287 正文 STM32F1
  • 利用电影直播赚钱的方法(几乎零成本、很多人不知道)

    每天都有人为了找好项目发愁 什么是大家理解的好项目 上来什么都不做就赚钱吗 边玩边赚钱吗 互联网确实有太多赚钱的项目 但是都是需要前期的积累和沉淀 你熬过去了吗 很多人看着别人后面躺赚的潇洒 觉得好后悔 可以当初自己做了吗 别人付出的时候自
  • 升级Struts2.5后使用DMI动态方法调用遇到问题

    转自 http www lvhongqiang com blog429 html 问题 升级Struts2 5后使用DMI动态方法调用报错 method 找不到 源码 struts xml
  • std:forward 完美转发

    概述 TEMPLATE CLASS identity template
  • leetcode214. 最短回文串

    给定一个字符串 s 你可以通过在字符串前面添加字符将其转换为回文串 找到并返回可以用这种方式转换的最短回文串 示例 1 输入 s aacecaaa 输出 aaacecaaa 示例 2 输入 s abcd 输出 dcbabcd 提示 0 lt
  • Linux脚本- 执行当前文件下前500个.c文件,并将每个文件对应的执行结果重定向到同名的.ok文件中

    需求 执行当前文件下前500个 c文件 并将每个文件对应的执行结果重定向到同名的 ok文件中 以下是一个用于实现该功能的 Bash 脚本 bin bash 计数器 用于限制处理的文件数量 counter 0 遍历当前目录下的所有 c 文件
  • ChatGPT到底怎么用?

    ChatGPT简介 ChatGPT Chat Generative Pre trained Transformer 全称为生成型预训练变换模型 由美国 OpenAI团队研发 现如今的ChatGPT不仅可以根据聊天上下文进行交互 还可以进行文
  • nodejs之express(二)get和post请求

    获取请求中的参数 nodejs的 express框架 提供了四种方法来实现 req body 解析body不是nodejs默认提供的 需要载入body parser中间件才可以使用req body 此方法通常用来解析POST请求中的数据 2
  • Hadoop3.1.3 集群环境搭建

    Hadoop3 1 3 集群环境搭建 1 集群环境配置 主机名 HDFS YARN IP地址 说明 hadoop0 DataNode NameNode NodeManager 192 168 108 10 主节点 master hadoop
  • 在Ubuntu 18.04系统上安装Jenkins

    该教程只介绍如何在Ubuntu系统上安装Jenkins 想要了解的更多 请访问Jenkins官方安装教程 一 系统要求 最低推荐配置 256MB可用内存 1GB可用磁盘空间 作为一个Docker容器运行jenkins的话推荐10GB 为小团
  • xe7 安装chrome组件(CEF4Delphi)

    缘起 大屏项目需要用到chrome组件 但为了实现firemonkey的矢量和强大的图形功能 所以只能重新在xe7中安装chrome组件 碰到了一些问题 都一 一化解了 将整个过程记录下来 以供大家采用 1 下载CEF4Delphi mas
  • 第5节 实现Callable 接口

    Java 5 0 在java util concurrent 提供了一个新的创建执行 线程的方式 Callable 接口 Callable 接口类似于Runnable 两者都是为那些其实例可能被另一个线程执行的类设计的 但是 Runnabl
  • 阿里代码规范检查工具的安装使用

    阿里巴巴于 10 月 14 日在杭州云栖大会上 正式发布众所期待的 阿里巴巴 Java 开发规约 扫描插件 简单了解一下这插件 该插件由阿里巴巴 P3C 项目组研发 代码已经开源 GitHub https github com alibab
  • 【python】emoji库,增添趣味!

    今天说一下python的外置库emoji 里面提供超多表情使用 一 安装环境 emoji库使用pip接口进行安装 pip install emoji 二 了解下emoji库函数的使用 两个主要用的函数 emoji emojize 根据 co
  • python网络通信时出现乱码_解决Python发送Http请求时,中文乱码的问题

    解决方法 先encode再quote 原理 msg encode utf 8 是解决中文乱码问题 quote 假如URL的 name 或者 value 值中有 或者 等符号 就会有问题 所以URL中的参数字符串也需要把 等符号进行编码 qu
  • 注册ActiveX控件的几种方法

    使用ActiveX控件可快速实现小型的组件重用 代码共享 从而提高编程效率 降低开发成本 但是ActiveX控件对于最终用户并不能直接使用 因为ActiveX控件必须先在Windows中注册 注册ActiveX控件一般来说有六种途径 它们有
  • 请确保此文件可访问并且是一个有效的程序集或COM组件

    重装系统后 打开项目发现一个dll引用失败 于是重新添加引用 结果报错 请确保此文件可访问并且是一个有效的程序集或COM组件 报错是因为此程序集 com组件未注册而导致不能直接引用 解决方法 首先复制程序集所在的路径 如 E aaaa bb
  • Transformer 综述 & Transformers in Vision: A Survey

    声明 因本人课题只涉及图像分类和目标检测 且此综述对这两个领域调查的比较多 所以此文章只对图像分类和目标检测进行精读 若是对 中的论文感兴趣 到原论文中查阅参考文献即可 下图是综述内容涉及的计算机视觉十大领域 图像识别 目标检测 语义和实例
  • Linux命令-推荐

    大侠必备 杀进程 命令 ps ef grep java 先查java进程ID kill 9 PID 生产环境谨慎使用 kill killall pkill命令的区别 kill 通过pid来杀死进程 killall killall 参数 进程