linux常用命令总结

1、在根目录下查找xxx文件

在根目录(包含所有子目录)下查找xxx文件,可使用通配符,如“bridge*”

find / -name “xxx”

在当前目录中,寻找包含指定字符串的.in文件

grep "thermcontact" ./*.in

在当前目录(包含所有子目录)中,寻找包含指定字符串“thermcontact”的文件

grep -r "thermcontact" .

在当前目录下,所有xxx.log打头的文件中,查找“123”,并将查找到的结果保存到result.txt中

grep "123" xxx.log* > result.txt

2、列出程序启动时搜索库路径的过程

可以在程序提示找不到库时进行查看搜索路径,如执行main.out:

LD_DEBUG=libs ./main.out

3、查看程序或so的依赖

命令为ldd,该命令只能查看隐式加载的so,是无法查看显式加载so的。所谓显式就是程序主动调用dlopen打开相关so。dlopen的so使用ldd是查看不到的。其次,使用dlopen打开的so并不是在进程启动时候加载映射的,而是当进程运行到调用dlopen代码地方才加载该so,也就是说,如果每个进程显式链接a.so;但是如果发布该程序时候忘记附带发布该a.so,程序仍然能够正常启动,甚至如果运行逻辑没有触发运行到调用dlopen函数代码地方。该程序还能正常运行,即使没有a.so。

(1)查看Test程序依赖的so文件

ldd ./Test

在这里插入图片描述

(2)也可以查看so依赖的文件

ldd ./hello.so

在这里插入图片描述

此时,若没有找到依赖文件,就会显示出来。

另外还有如下选项可使用:

// 打印ldd的版本号
ldd --version

// 打印所有信息,例如包括符号的版本信息
ldd -v ./Test

// 执行符号重部署,并报告缺少的目标对象(只对ELF格式适用)
ldd -d ./Test

// 对目标对象和函数执行重新部署,并报告缺少的目标对象和函数(只对ELF格式适用)
ldd -r ./Test

// 用法信息
ldd --help

4、SSH相关

查看ssh版本

ssh -V

查看ssh服务是否启动:

systemctl status sshd.service

启动ssh服务:

service sshd start
或
systemctl start sshd.service

重启ssh服务:

systemctl restart sshd.service

从一台linux通过ssh登录到另外一台linux(192.168.2.33)上,root是用户名,之后按提示输入密码,即可登录:

ssh root@192.168.2.33

5、查看当前登录的用户

w

在这里插入图片描述

6、查看重启、登录、历史命令

查看Linux系统最近重启记录

last reboot

在这里插入图片描述
查看最近用户登录情况:

last

查看操作系统的历史命令:

history | more

在这里插入图片描述

7、查看某进程下打开的线程数量

进程PID=10339

cat /proc/10339/status

在这里插入图片描述

8、查看某进程创建的文件所在路径

有时候运行别人程序,不知道程序中生成的文件路径,可以按这个方法进行查看,如下:
首先ubuntu16.04下,开始菜单->System->System Monitor;
在这里插入图片描述
选择需要查看的进程,右键->Open Files;
在这里插入图片描述
可以看到进程打开的文件描述符有572个,并可以查看每个文件描述符对应的路径。

当我们在软件中进行操作后,临时生成的文件,只要描述符没有关闭,那么也可以在这里进行查看。
在这里插入图片描述

9、为文件/文件夹建立软链接

// 当前目录下创建一个软链接mydir,链接至/root/mytestdir目录
ln -s /root/mytestdir ./mydir

// 当前目录下创建一个软链接mytxt,链接至/root/mytesttxt文件
ln -s /root/mytesttxt ./mytxt

10、修改文件权限

修改当前目录下所有文件权限为777

chmod 777 . -R

11、查看正在改变的日志文件

tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容。

tail -f xxx.log

12、将文件按大小拆分为多个文件

当日志文件很大时,vim打开很慢,可以将大文件拆分为多个小文件,再查看。

将xxx.log文件按1GB大小进行拆分,拆分后的若干个文件名分别为xxx.log00、xxx.log01、xxx.log*。

split -b 1G -d xxx.log xxx.log

13、查看文件内容的实际大小

ll -h



若对你有帮助,欢迎点赞、收藏、评论,你的支持就是我的最大动力!!!

同时,阿超为大家准备了丰富的学习资料,欢迎关注公众号“超哥学编程”,即可领取。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

百里杨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值