常用 Linux shell & vim 命令

简介: 常用 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
目录
相关文章
|
22天前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
144 3
|
18天前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
178 73
|
11天前
|
Linux Shell
Linux 中 Tail 命令的 9 个实用示例
Linux 中 Tail 命令的 9 个实用示例
40 6
Linux 中 Tail 命令的 9 个实用示例
|
7天前
|
设计模式 Java Linux
Linux的20个常用命令
Linux的23个常用命令
Linux的20个常用命令
|
16天前
|
Linux 应用服务中间件 nginx
|
2天前
|
机器学习/深度学习 存储 Linux
linux中强大且常用命令:find、xargs、grep
linux中强大且常用命令:find、xargs、grep
25 9
|
2天前
|
SQL 移动开发 Linux
linux下find、grep命令详解
linux下find、grep命令详解
36 8
|
9天前
|
存储 Linux 编译器
linux中vim介绍以及常用命令大全
linux中vim介绍以及常用命令大全
32 8
|
11天前
|
机器学习/深度学习 安全 网络协议
Web安全-Linux网络命令
Web安全-Linux网络命令
13 1
|
15天前
|
Shell Linux 开发工具
linux shell 脚本调试技巧
【9月更文挑战第3天】在Linux中调试shell脚本可采用多种技巧:使用`-x`选项显示每行命令及变量扩展情况;通过`read`或`trap`设置断点;利用`echo`检查变量值,`set`显示所有变量;检查退出状态码 `$?` 进行错误处理;使用`bashdb`等调试工具实现更复杂调试功能。