常用 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
目录
相关文章
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
151 8
|
2月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
614 6
|
2月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
108 3
|
2月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
91 2
|
4天前
|
安全 Shell 数据处理
使用Python执行Shell命令并获取结果
在实际应用中,可以根据需要选择适当的参数和方法来执行Shell命令,并处理可能出现的各种情况。无论是系统管理、自动化任务还是数据处理,掌握这些技巧都将极大地提高工作效率。
29 12
|
1月前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
57 14
Linux 10 个“who”命令示例
|
11天前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
32 8
|
21天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
112 20
|
21天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
51 7
|
2月前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
40 9