Linux系统中安卓投屏软件scrcpy

Scrcpy

安装:sudo apt install scrcpy

使用注意事项:

  • 首先安卓手机要开启USB调试功能
  • 使用数据线将手机和电脑连接
  • 在终端下运行scrcpy,即可投屏使用

快捷键:

Scrcpy 快捷键列表
切换全屏模式 Ctrl+F
将窗口调整为1:1(完美像素) Ctrl+G
调整窗口大小以删除黑色边框 Ctrl+X | 双击黑色背景
设备 HOME 键 Ctrl+H | 鼠标中键
设备 BACK 键 Ctrl+B | 鼠标右键
设备 任务管理 键 (切换APP) Ctrl+S
设备 菜单 键 Ctrl+M
设备音量+键 Ctrl+↑
设备音量-键 Ctrl+↓
设备电源键 Ctrl+P
点亮手机屏幕 鼠标右键
复制内容到设备 Ctrl+V
启用/禁用 FPS 计数器(stdout) Ctrl+i
安装APK 将 apk 文件拖入投屏
传输文件到设备 将文件拖入投屏(非apk)
版权声明:本文为CSDN博主「小周求你了」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42747139/java/article/details/104163312

如需声音同步可借助USBaudio,详情如下

This tool forwards audio from an Android device to the computer over USB. It works on Linux with PulseAudio.

The purpose is to enable audio forwarding while mirroring with scrcpy. However, it can be used independently, and does not require USB debugging enabled.

Note that AOA audio, the feature used by USBaudio, is deprecated since Android 8.0. For Android 10, use sndcpy instead.

Build

Install the following packages (on Debian):

sudo apt install gcc git meson vlc libpulse-dev libusb-1.0-0-dev

Then build:

git clone https://github.com/rom1v/usbaudio
cd usbaudio
meson x --buildtype=release
cd x
ninja

To install it:

sudo ninja install

Run

Plug an Android device.

If USB debugging is enabled, just execute:

usbaudio

You can specify a device by serial or by vendor id and product id:

# the serial can be found via "adb device" or "lsusb -v"
usbaudio -s 0123456789abcdef

# the vid:pid is printed by "lsusb"
usbaudio -d 18d1:4ee2

To stop playing, press Ctrl+C.

To stop forwarding, unplug the device (and maybe restart your current audio application).

To only enable audio accessory without playing, use:

usbaudio -n

Blog post

  • Introducing USBaudio

基于目录深度的参数-maxdepth

-maxdepth
–max-depth: 遍历目录的最大深度

实例一:查找当前目录下的所有txt文档,查找范围限定在从当前目录开始的两个子目录之内

robin@robin-b450m:~$ sudo find -maxdepth 2 -name “*txt”

实例二:查看当前目录下文件夹大小

robin@robin-b450m:~/文档$ du -h
12K ./系统环境/212.64.54.19X密钥
20K ./系统环境
28K .
robin@robin-b450m:~/文档$ du –max-depth=1 -h
20K ./系统环境
28K .

可以很明显的看出使用参数–max-depth后,限定了目录的深度

注意事项

  • 使用-maxdepth基于目录深度的参数时,应该作为第一种参数出现,否则会进行一些不必要的检查影响执行效率。
  • 比如同时用-maxdepth和-type,如果-type在前,find会找出符合文件类型的所有文件接着再匹配符合指定深度的(相当于还是把当前目录及子目录遍历搜索个底朝天);而如果-maxdepth在前,find就能够在找到所有符合指定深度的文件后,在匹配这些文件的类型。

linux系统中使用ibus五笔输入法实现特殊字符录入

输入法:中文〔五笔输入法〕

ibus中文〔五笔输入法〕

输入方法

  1. 切换到五笔输入法;
  2. 按正常打字方法输入以下键码,即可实现特殊符号的文本输入。

特殊字符键码及字符示例

  • zzbd 标点符号 〔〕【】「」『』〖〗々ˇ
  • zzpy 拼音符号 āáǎàōóǒòǖǘǚǜü
  • zzts 特殊符号 ℃№♂♀‰
  • zzsx 数学符号 ≈∑∵∴∈∞≠≤≥≦≧
  • zzdx 单位符号 ΩΦΨΔΘ
  • zzjt 箭头符号 →↑←↓↖↗↘↙
  • zzys 圆圈数字 ①②③…⑩
  • zzpp 偏旁勹 灬冫艹屮辶刂匚阝廾…
  • zzds 带点数字 ⒈⒉⒊…⒑

特殊字符键码录入图例

Ubuntu中apt-mark命令使用

apt-mark功能

apt-mark 可以对软件包进行设置(手动/自动 )安装标记,也可以用来处理软件
包的 dpkg(1) 选中状态,以及列出或过滤拥有某个标记的软件包。

apt-mark用法

apt-mark [选项] {auto|manual} 软件包1 [软件包2 …]

apt-mark常用命令

  • auto – 标记指定软件包为自动安装
  • manual – 标记指定软件包为手动安装
  • minimize-manual – Mark all dependencies of meta packages as automatically installed.
  • hold – 标记指定软件包为保留(held back),阻止软件自动更新
  • unhold – 取消指定软件包的保留(held back)标记,解除阻止自动更新
  • showauto – 列出所有自动安装的软件包
  • showmanual – 列出所有手动安装的软件包
  • showhold – 列出设为保留的软件包

apt-mark使用案例

当安装更新时,提示有软件包未被升级

apt-get upgrade -y 安装可用更新……
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
正在计算更新… 完成
下列软件包的版本将保持不变:
libsmbclient samba-libs
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 2个软件包未被升级。

可通过apt-mak unhold 命令设置为不保留,再执行更新即可

  • robin@robin-b450m:~$ sudo apt-mark unhold libsmbclient samba-libs
  • robin@robin-b450m:~$ sudo apt update
  • robin@robin-b450m:~$ sudo apt upgrade

Ubuntu使用do-release-upgrade升级到新版本系统

命令参数

用法: do-release-upgrade [options]

Options:
-h, –help show this help message and exit
-V, –version 显示版本并退出
-d, –devel-release 如果使用最新的支持版本,则升级到开发版本
–data-dir=DATA_DIR 包含数据文件的文件夹
-p, –proposed 尝试通过 $distro-proposed 更新到最新版本。
-m MODE, –mode=MODE 以特定模式升级。 目前支持:用“桌面”为桌面系统,“服务器”为服务器系统升级。
-f FRONTEND, –frontend=FRONTEND
运行指定的前端
-c, –check-dist-upgrade-only
仅在有新的发行版发布时检查,并通过退出码(exit code)报告结果
–allow-third-party Try the upgrade with third party mirrors and
repositories enabled instead of commenting them out.
-q, –quiet

使用示例

将系统升级至最新的发行版

robin@robin-B450M-GAMING:~$ sudo do-release-upgrade

将系统升级至最新的开发版本,不建议生产环境使用

robin@robin-B450M-GAMING:~$ sudo do-release-upgrade -d

将Linux命令的执行结果作为下一个命令的参数

Linux命令参数传递

命令符号介绍

  • 符号:(`)
  • 名称:反单引号,上分隔符
  • 位置:反单引号(`)是西方符号,主要用在linux的bash中,这个字符一般在键盘的左上角,数字1的左边,与(~)在同一键上,不要将其同单引号(’)混淆。
  • 作用:反单引号括起来的字符串被shell解释为命令行,在执行时,shell首先执行该命令行,并以它的标准输出结果取代整个反引号(包括两个反引号)部分。

操作示例:将当前目录创建软链接(ln -s)至桌面

robin@robin-Lenovo-XiaoXin-I2000:~/图片/高清壁纸$ pwd
/home/robin/图片/高清壁纸
robin@robin-Lenovo-XiaoXin-I2000:~/图片/高清壁纸$ ls ~/桌面/
照片身份证
robin@robin-Lenovo-XiaoXin-I2000:~/图片/高清壁纸$ ln -s `pwd` ~/桌面/
robin@robin-Lenovo-XiaoXin-I2000:~/图片/高清壁纸$ ls ~/桌面/
高清壁纸 照片身份证
robin@robin-Lenovo-XiaoXin-I2000:~/图片/高清壁纸$

Ubuntu中创建程序软件连接

一、创建软件链接(快捷方式)的目的

当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个相同的文件,我们只需在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间,只生成目标文件的一个镜像。

二、软件链接命令

ln -s 源文件 目标文件

例如:将/media/robin/sdb-download这一磁盘,创建软链接至/home/robin/下并命名为download,以方便终端下命令调用,命令如下

ln -s /media/robin/sdb-download/ /home/robin/download

三、注意事项

  • (1)ln命令会保持你每一处连接文件的同步性,不论更改源文件还是目标文件,另一处文件也会有相 同的改动。
  • (2)ln命令分为软连接和硬链接(无参数-s)。与软连接不同的是,硬链接会在你选定的位置上生成一个与原来文件大小相同的文件。无论是软连接还是硬链接都具有文件的同步性。
  • (3)当一个存储空间,具有几个硬链接时,删除其中的一个,并不会对存储空间进行操作,所以其它的硬链接不会受到影响。
  • (4)ln默认时间里硬链接(无参数-s)。

四、扩展知识,linux中软链接、硬链接的区别及联系

  • ln命令不能对目录创建硬链接,但可以创建软链接。对目录的软链接会经常使用到。
  • 删除软链接文件,对源文件和硬链接文件无任何影响。
  • 删除文件的硬链接文件,对源文件及软链接文件无任何影响。
  • 删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状)。
  • 同时删除源文件及其硬链接文件,整个文件才会被真正的删除。
  • 很多硬件设备的快照功能,使用的就是类似硬链接的原理。
  • 软链接可以跨文件系统,硬链接不可以跨文件系统。

Ubuntu中安装RPM格式软件

RPM与deb格式区别

Ubuntu的软件包格式为deb,而RPM格式的包则是Red Hat系列所用的包格式。如果要安装的软件是RPM格式,而你的操作系统是Ubuntu,是不是就不能安装了呢?其实,在Ubuntu系统中我们可以通过终端来命令安装RPM格式包的。

Ubuntu下安装rpm格方法

一、alien软件安装

在ubuntu中安装RPM格式需要用到alien软件,该软件默认是没有安装的,使用之前先安装该软件:

robin@robin-B450M-GAMING:~$ sudo apt install alien

二、将rpm格式转换为deb格式

安装完alien后,还需通过该软件将RPM包转换这deb格式,如百度网盘linux版的RPM格式转换为deb

robin@robin-B450M-GAMING:~$sudo alien -d baidunetdisk_linux_2.0.1.rpm

三、安装生成的deb格式软件

转换完成后即可通过dpkg -i命令安装deb格式的软件了

robin@robin-B450M-GAMING:~$ sudo dpkg -i baidunetdisk_2.0.1-2_amd64.deb

四、Ubuntu下直接安装rpm软件

若不想转换格式,也可直接安装,命令如下

robin@robin-B450M-GAMING:~$ sudo alien -i baidunetdisk_linux_2.0.1.rpm

Ubuntu中snap包安装及更新常用操作介绍

Snap包概述

  • snap是一种全新的软件包管理方式,它类似一个容器拥有一个应用程序所有的文件和库,各个应用程序之间完全独立。
  • 使用snap包的好处就是它解决了应用程序之间的依赖问题,使应用程序之间更容易管理。但是由此带来的问题就是它占用更多的磁盘空间。
  • Snap的安装包扩展名是.snap,类似于一个容器,它包含一个应用程序需要用到的所有文件和库(snap包包含一个私有的root文件系统,里面包含了依赖的软件包)。它们会被安装到单独的目录;各个应用程序之间相互隔离。
  • 使用snap有很多好处,首先它解决了软件包的依赖问题;其次,也使应用程序更容易管理。
  • 现在支持snap的应用并不多,snap软件包一般安装在/snap目录下。

常用的命令

其实使用snap包很简单,下面我来介绍一下一些常用的命令

snap list
列出已经安装的snap包

snap find <snap name>
搜索要安装的snap包

snap install <snap name>
安装一个snap包

snap refresh <snap name>
更新一个snap包,如果你后面不加包的名字的话那就是更新所有的snap包

snap revert <snap name>
把一个包还原到以前安装的版本

snap remove <snap name>
删除一个snap包

注意事项

snap包的管理命令,需要root权限,在使用时请在命令前面加上sudo