Skip to content

EffectiveLinux

kcp edited this page Nov 21, 2020 · 4 revisions

title: 高效的Linux date: 2019-04-18 22:04:15 tags: - Effective categories: - Linux

目录 start

  1. 高效的Linux
    1. Terminal 对比
    2. 效率工具
      1. 协作工具
      2. 目录跳转
    3. 网络工具
      1. nmap
      2. whatportis
    4. 进程管理
    5. 零散工具集合
    6. 检测工具
      1. 硬盘
        1. smartmontools
    7. 文本处理
    8. 文件操作
    9. 安全工具
      1. gpg
  2. 图形化工具
    1. 剪贴板管理
    2. 系统资源监控
  3. 多媒体
    1. ffmpeg
    2. 图片处理
      1. ImageMagick
        1. convert
      2. asciinema
      3. 图片浏览器
      4. 截图
    3. 视频
    4. 音频
    5. PDF
  4. Tips

目录 end|2020-11-11 21:09|


高效的Linux

Linux Desktop Setup一整套工具

命令行:增强版
工具

Terminal 对比

列举出系统可安装终端

  1. Debian: sudo apt search terminal | grep -E terminal.+amd64
  2. Arch: yay terminal

终端可参考功能点: 终端透明化,终端背景图,快捷键设置,终端内颜色自定义,下拉式,标签水平垂直拆分,鼠标键盘交互性,资源占用少
终极工具 Tmux 远离终端模拟器的对比和选择

终端 优点 缺点 备注
xiki 鼠标和键盘高度交互
交互性和复杂度比较高
qterminal 设置设计清晰,功能完备 终端内容显示兼容性略有问题 资源消耗中等
xfce4-terminal
gnome-terminal 简洁 资源消耗少 缺 多标签时,标签栏太大,标签页底部有白边 无法透明化 鼠标中键无法复制时需安装 parcellite
mate-terminal 标签栏更简洁,其余和 gnome-terminal 一致
sakura 外观上和前两个几乎一样,标签页可以更简洁 配置复杂 繁琐
deepin-terminal 功能很多,主题很多,功能最为强大 字体仅可选择内置不可自定义
tilda 内嵌于桌面上, 小命令方便 需要查看文件时不方便
terminology 样式高度自定义

备注

  • sakura xfce4-terminal 快捷键配置

效率工具

提高工作和开发效率

通知提醒 Desktop notifications | xfce notify-send Desktop Notifications Specification
Notification Development Guidelines

Github notify-send.sh

协作工具

synergy

多系统间共享键鼠

目录跳转

Autojump

统计cd 目录,方便目录跳转 *shrc 中要有 : . /usr/share/autojump/autojump.sh

  • apt install autojump 设置为自动运行 echo '. /usr/share/autojump/autojump.sh' >> ~/.bashrc
    • j -v 查看安装版本
    • j --stat 查看统计信息
    • j --help
    • jo code 打开code文件夹
    • jco c 打开子目录
  • ls -l ~/.local/share/autojump/ 统计信息的目录,清除就相当于卸载重装了

z.lua

Github 与 Autojump 类似, 性能更好

  • pip install qrcode
    • qr --help 终端内生成二维码

网络工具

参考: Linux查看网络流量

iftop

  • nethogs 流量监控
  • slurm 网卡带宽监控
  • dig

nmap

端口扫描 参考博客

  • 扫描nmap <param> IP
    • -sP
    • -sT
    • -sR
    • -n 最简单直接的参数

whatportis

whatportis 是一款可以通过服务查询默认端口,或者是通过端口查询默认服务的工具

进程管理

Supervisor 进程监控管理


零散工具集合

最终都会安装到 /usr/bin/* 目录下

  • sudo 是需要安装的

    1. alias sudo='sudo' 能够在别名上使用 sudo 神奇
  • md5sum 报文摘要算法 Message-Digest Algorithm 5 的实现

    • md5sum file 计算出md5值
    • md5sum -c file.md5 file 和 file.md5 在同一目录下, 执行这个命令就是检查md5是否匹配, 确保文件的完整性和正确性
  • last 查看Linux登录信息

    • last -n 5 最近五次登录
  • w | uptime 查看启动情况

  • colrm

    • ps | clorm 20 30 colrm 删除输出的20 到30 列
  • xsel

    • cat a.md | xsel -b 将文件所有内容复制到剪贴板 但是处理大文件时会失效 xclip 更有效
  • strace -p PID 查看系统调用

  • cmatrix 装13,字符雨

  • logkeys 记录键盘输入 Github

  • expect 用于自动输入密码

  • WTF | Github Repo

    • 丰富的功能, 一个方便的终端控制面板
  • ag 在当前目录下, 快速全文内容搜索 ubuntu:silversearcher-ag alpine:the_silver_searcher

  • when-changed 监控文件变化 执行命令 pip install when-changed

  • dircolors Linux dircolors命令用于设置 ls 命令输出时的色彩

  • gtypist 用于练习打字

  • watch 周期执行命令并输出

xclip

便捷的文本复制

  • cat README.md | xclip -sel clip 将文件复制到剪贴板

uniq

report or omit repeated lines

统计出现次数 cat log.log | grep WARN | awk '{print $5}' | sort | uniq -c

notes

管理笔记 Github

todo.txt-cli

终端内的 todo Github

starDict

终端内字典

upx

upx压缩构建的可执行文件


检测工具

硬盘

smartmontools

  • 检测健康状况 smartctl -Hc /dev/sda9

文本处理

wc 单词 行数 统计 ccze 日志高亮


文件操作

iconv

可以将一种已知的字符集文件转换成另一种已知的字符集文件

zssh

便捷的文件传输

安全工具

gpg

参考博客

常用参数

gpg --list-key
    --gen-key
  • 生成的过程, 输入相关的提示信息, 最后输完密码后需要输入随机字符, 就也是按照提示, 但是1.4是正常的, 其他的直接假死,不是很理解这种操作

图形化工具

剪贴板管理

参考: 面向 Linux 的 10 款最佳剪贴板管理器

  • CopyQ,Manjaro 的 clipman

参考: 这9个Linux命令非常危险 请大家慎用

参考: 关于 Linux 你可能不是非常了解的七件事

系统资源监控

gnome-system-monitor


多媒体

ffmpeg

Official Site

  • 查看属性 ffprobe -pretty target.mp4

m3u8 URL 转换为mp4

  • ffmpeg -i http://xxx.m3u8 -c copy -bsf:a aac_adtstoasc output.mp4

  • 获取视频中的音频 ffmpeg -i input.mp4 -vn -y -acodec copy output.m4a

  • 去掉视频中的音频 ffmpeg -i input.mp4 -an output.mp4

  • 合并视频 ffmpeg -f concat -safe 0 -i file.cfg -c copy result.mp4

    • file.cfg 内容为多行文件 : file '/path/to/file'
  • 截取视频 ffmpeg -ss 00:00:00 -t 00:00:30 -i input.mp4 -vcodec copy -acodec copy output.mp4

    • -ss 开始时间 -t 截取时长 -q 0 无损 -c copy表示不必重新编码

图片处理

  • byzanz 录制屏幕为gif

ImageMagick

  1. display

convert

convert between image formats as well as resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and much more

  • 将图片转换成指定大小 这是保持比例的 convert -resize 600X600 src.jpg dst.jpg 中间是字母X
    • 如果不保持比例,就在宽高后加上感叹号
    • 可以只指定高度,那么宽度会等比例缩放 convert -resize 400 src.jpg dst.jpg
    • 还可以按百分比缩放

批量修改

如果没有 -path 语句,新生成的 png 文件将会覆盖原始文件 参考博客

  • mogrify -path newdir -resize 40X40 *.png 把png图片全部转成40X40大小并放在新文件夹下
  • mogrify -path newdir -format png *.gif 将所有gif转成png放在新目录下

将原有大小图片转换成其他指定大小的图片(保持比例)

  1. 原图片 a * b -> x * y
  2. x/y 得到比例 在 原图中裁剪出同样比例的图片 (Viewnior就很好用)
  3. 将裁剪出来的图片转换指定大小 convert -resize xXy src.jpg dst.jpg
  • 转PDF convert origin1.jpg origin2.jpg target.pdf

asciinema

  • asciinema 终端屏幕录制和分享网

  • 执行 asciinemaasciinema rec 即可开始录制

  • 要注册就运行 asciinema auth 进入输出的网址,填邮箱和名字即可(每次登录都要这样。或者使用邮件来确认,麻烦ing)

图片浏览器

  1. gthumb
  2. Viewnior
    • 安装 webp-pixbuf-loader 可支持浏览 webp
  3. Eye of GNOME Image Viewer 功能比上面多了一点
  4. ImageMagick

截图

  • Flameshot 截图工具 类似于 snipaste
    • Ctrl 鼠标滚动 调整线条粗细
  • deepin-screenshot

视频

参考: Top 10 Best Linux Video Players

音频


PDF

ghostscript

ghostscript.com 参考: Ubuntu上压缩PDF文件的方法

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dBATCH -dQUIET -sOutputFile=output.pdf input.pdf


pdftk

pdflabs | Docs


pdfunite

Portable Document Format (PDF) page merger

  • pdfunite 1.pdf 2.pdf merged.pdf

smallpdf.com 在线处理


Tips

  • 问题: sudo echo "Text I want to write" > /path/to/file 失败

参考: "sudo echo" does not work together in Ubuntu stack over flow

  • sudo sh -c 'echo "Text I want to write" >> /path/to/file'
  • echo "Text I want to write" | sudo tee -a /path/to/file > /dev/null

Summary

Clone this wiki locally