linux笔记

文章目录

  • 问题一
  • Ubuntu下批量修改文件名以及后缀名
        • 1 批量修改文件名
        • 2 批量修改后缀名
  • Linux 打包可执行程序的所有依赖的so 库

问题一

安装图形桌面后,Linux通过终端命令无法启动图形应用,报错“Could not connect to any X display.”或“Gtk-WARNING **: 10:49:06.625: cannot open display: :0”等。
解决:以当前用户身份重新打开一个终端,输入“xhost +”命令后即可,如图:
在这里插入图片描述
注:xhost 是用来控制X server访问权限的,网上已有其他人对此命令做过解释,此处不再重复。

Ubuntu下批量修改文件名以及后缀名

1 批量修改文件名

  • n表示预览, 执行以下操作并不会修改你的文件名,但是可以在终端看到你的命令修改的对不对
  • x1是你不想要的字符
  • x2是你想要替换的字符
  • .jpg是想要替换的文件的后缀,可以改成其他后缀名
rename -n 's/x1/x2/' *.jpg

如果此时你的终端显示是正确的,那么把n改成v就是执行

rename -v 's/x1/x2/' *.jpg

例如有一堆文件
linux笔记_第1张图片

  • 执行
rename -n 's/frame/left-/' *.jpg

linux笔记_第2张图片

2 批量修改后缀名

  • 把上面的jpg后缀的文件全部重命名为png,预览:
rename -n 's/\.jpg/.png/' *.jpg
  • 执行
rename -v 's/\.jpg/.png/' *.jpg

Linux 打包可执行程序的所有依赖的so 库

  • 使用ldd 可以查询一个执行程序的依赖的所有so库
    比如ls 命令:
cd /bin/
ldd ls
  • 根据ldd 查询的到的结果然后拷贝到指定目录
ldd face_server | awk '{print $3}' | xargs -i cp -L {} /home/zhou/tmp/

face_server : 可执行文件
awk '{print $3}': 每行按空格或TAB分割,输出文本中的第3项
xargs -i cp -L {} /home/zhou/tmp/ : 复制到 /home/zhou/tmp/下

  • 所有依赖的so 库都被拷贝到指定目录
  • 测试在没有安装环境的linux 系统中或者docker 中测试
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/zhou/tmp/

你可能感兴趣的:(linux)