常用 Linux shell & vim 命令

以下是我在工作中常用的 Linux shell 命令,记下来,后续会不断补充。

  • 查看正在执行的进程

    ps -u username
    
  • 查询指定的进程ID(27380)打开的文件
    lsof -p 27380
    
  • 杀死指定PID的进程 (PID为Process ID)
    kill PID
    
  • 计算文件的行数、字数或字符数
    wc
    
  • 显示进程信息,并实时更新
    top
    
  • 调用top命令的“-H”选项,该选项会列出所有Linux线程
    top -H
    
  • 查看用户username的进程所打开的文件
    lsof -u username
    
  • 在ps命令中,“-T”选项可以开启线程查看。下面的命令列出了由进程号为的进程创建的所有线程
    nohup ps -T -p <pid> &
    
  • 比较两个文件
    diff file1 file2 -y -W 130
    
  • 后台执行,通过在shell中输入exit来退出终端
    nohup 命令 &
    
  • 查看正在执行的任务
    jobs
    
  • 多线程执行
    --num-thread 2
    
  • 查看进程和线程的树形结构关系
    pstree
    
  • ps命令-L参数显示进程,并尽量显示其LWP(线程ID)和NLWP(线程的个数)。
    ps -eLf | grep PID
    
  • ps命令还可以查看线程在哪个CPU上运行
    ps -eo ruser,pid,ppid,lwp,psr,args -L | grep PID
    ps -a
    ps aux | grep PID
    
  • 取出文件前面几行
    head [参数]...[文件]...
    -c, --bytes=[-]K 输出文件的前K个字节;如果有-参数,输出文件的所有内容但不包含最后K个字节。
    -n, --lines=[-]K 输出文件的前K行,默认输出前10行;如果有-参数,则输出所有内容但不包括最后K行。
    -q, --quiet, --slient 从不输出给出文件名的首部
    
  • 动态查看文件变化
    tail [必要参数][选择参数][文件]
    -f --follow 表示持续监测后面所接的文档名,直到按下`ctrl c`才会结束tail的监测
    -v --verbase 输出给出文件名的首部
    -c,--byte=K 输出最后的K个字节数的内容;或使用-c +k输出每一行的K个字节数的内容
    -n,--line=K 输出最后的K行,默认输出10行.或使用-n +K 输出从第K行开始的内容
    --pid=PID 与-f合用,表示在进程ID-PID结束之后也结束
    -q --quiet --slient 从不输出给出文件名的首部
    
  • 退出tail -f
    ctrl+c
    
  • tail程序放到后台去(ctrl+z)等处理完其他事情,再用fg命令将tail命令转到前台来
    ctrl+z
    
  • 查看文件夹和子目录的大小
    du -h --max-depth=1 Speech/
    
  • 设置定时任务
    1.命令格式:
    crontab [-u user] file
    crontab [-u user] [ -e | -l | -r ]
    2.命令功能:
    通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常设合周期性的日志分析或数据备份等工作。
    3.命令参数:
    -u user:用来设定某个用户的crontab服务,例如,“-u ixdba”表示设定ixdba用户的crontab服务,此参数一般有root用户来运行。
    file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。
    -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。
    -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
    -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。
    -i:在删除用户的crontab文件时给确认提示。
    4. crontab任务设置好后,应该是即时启动,如果没有启动,请检查任务涉及到的文件权限。
    
  • 查看Linux系统配置
    cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
    
  • vim 每行行首或行行尾插入
    每行的行首都添加一个字符串:%s/^/要插入的字符串
    每行的行尾都添加一个字符串:%s/$/要插入的字符串
    
  • vim 每行开头去除字符
    去除每行开头的两个字符:%s/^..//
    解释:
    % 代表针对被编辑文件的每一行进行后续操作
    $ 代表一行的结尾处
    ^ 代表一行的开头处
    
  • 查看二进制文件
    hexdump -C file_name
    
时间: 2024-10-03 07:44:49

常用 Linux shell & vim 命令的相关文章

python文件读写操作与linux shell变量命令交互执行的方法_python

本文实例讲述了python文件读写操作与linux shell变量命令交互执行的方法.分享给大家供大家参考.具体如下: python对文件的读写还是挺方便的,与linux shell的交互变量需要转换一下才能用,这比较头疼. 代码如下: 复制代码 代码如下: #coding=utf-8 #!/usr/bin/python import os import time #python执行linux命令 os.system(':>./aa.py') #人机交互输入 S = raw_input("

常用Linux Shell进阶部分小结_linux shell

如何计算当前目录下的文件数和目录数    # ls -l * |grep "^-"|wc -l ---- to count files # ls -l * |grep "^d"|wc -l ----- to count dir        如何只列子目录?    ls -F | grep /$ 或者  alias sub = "ls -F | grep /$"(linux)     ls -l | grep "^d" 或者

linux shell 管道命令(pipe)使用及与shell重定向区别_linux shell

看了前面一节:linux shell数据重定向(输入重定向与输出重定向)详细分析 估计还有一些朋友是头晕晕的,好复杂的重定向了.这次我们看下管道命令了.shell管道,可以说用法就简单多了. 管道命令操作符是:"|",它仅能处理经由前面一个指令传出的正确输出信息,也就是 standard output 的信息,对于 stdandard error 信息没有直接处理能力.然后,传递给下一个命令,作为标准的输入 standard input. 管道命令使用说明: 先看下下面图: comma

linux shell+vim处理不同数据库文本之间的转换

还是之前那个XENIX系统,作为某地公安部门的户籍查询与管理系统,记录的 是50多万人口的基本信息.这套系统是1989年开发的,当时并未用标准的数据库 理念设计(未设计兼容性),只允许查询,打印,或生成输出文本,输出文本的结 果大致如下: 参考附件示例中的结构,对这些文本文件 通过VIM(或VI),再加上SHELL脚本,将其组织成为标准数据库的可录入格式: 先编个脚本,暂起名为m.sh 内容如下: #从脚本命令行中 获取要操作的文件路径 vi $1<<end  >&/dev/nu

Linux SHELL if命令参数说明_linux shell

* -b 当file存在并且是块文件时返回真 * -c 当file存在并且是字符文件时返回真 * -d 当pathname存在并且是一个目录时返回真 * -e 当pathname指定的文件或目录存在时返回真 * -f 当file存在并且是正规文件时返回真 * -g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真 * -h 当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效 * -k 当由pathname指定的文件或目录存在并且设置了"粘滞"位时返

Vim命令高级用法_Linux

1.启动-R  只读方式打开,但打开后如果有权限,可以强制执行保存.-c (command) 加载后执行命令,比如"vim -c /most myfirst" 打开该文件后直接向后搜索most.更多的可以参考 -h 2.同时编辑多个文件vim [file1] [file2] ... 此时 :ar 查看当前编辑的文件名 :n  切换当前编辑的文件 另外还有 :e  切换到新文件 :w  读取已存在的文件并将其内容放入正在编辑的文件中 :w [起始行][终结行] [文件名]  将当前文件部

Linux中Vim工具的常用命令

在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用.作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来. 当然,直接在命令行上输入:vimtutor,就可以学习到Vim的所有命令了.Vim很强大,很多牛人在vim里集成很多插件什么的,但这里只介绍基本vim命令. 移动命令 h      "左 j      "下 k      "上 l      "右 w      "光标移动到下一个单词的首字符 a word fo

linux shell命令常用技巧

Linux系统提供了两个对Shell编程非常有用的特殊文件,/dev/null和/dev/tty.其中/dev/null将会丢掉所有写入它的数据,换句换说,当程序将数据写入到此文件时,会认为它已经成功完成写入数据的操作,但实际上什么事都没有做.如果你需要的是命令的退出状态,而非它的输出,此功能会非常有用,见如下Shell代码:  代码如下 复制代码     /> vi test_dev_null.sh         #!/bin/bash     if grep hello TestFile

Linux下Vim工具常用命令

原文地址: http://www.cnblogs.com/lizhenghn/p/3675011.html 在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用.作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来. 当然,直接在命令行上输入:vimtutor,就可以学习到Vim的所有命令了.Vim很强大,很多牛人在vim里集成很多插件什么的,但这里只介绍基本vim命令. 移动命令 h "左 j "下 k "上 l "右 w &