我想使用 gzip 命令行工具压缩文本文件,同时保留原始文件。默认运行以下命令
gzip file.txt
Run Code Online (Sandbox Code Playgroud)
导致修改此文件并重命名它file.txt.gz。而不是这种行为,除了现有的file.txt. 现在我使用以下命令来做到这一点
gzip -c file.txt > file.txt.gz
Run Code Online (Sandbox Code Playgroud)
它有效,但我想知道为什么没有更简单的解决方案来完成如此常见的任务?也许我错过了这样做的选择?
我有一个文本文件编码如下file:
ISO-8859 文本,带有 CRLF 行终止符
该文件包含带有重音符号的法语文本。我的 shell 能够显示重音,并且emacs在控制台模式下能够正确显示这些重音。
我的问题是more,cat和less工具不正确显示此文件。我猜这意味着这些工具不支持此字符编码集。这是真的?这些工具支持哪些字符编码?
在双插槽 Xeon X5650 六核板上运行的 Linux 3.11.0-13-generic 上,htop显示不同的 kworker 线程。按名称排序(我稍微调整了此处显示的结果,使内核 2 上的线程先于内核 10 上的线程),结果如下:
kworker/0:0H
kworker/0:1
kworker/0:2
kworker/1:0
kworker/1:0H
kworker/1:1
kworker/2:0
kworker/2:0H
kworker/2:1
.....
kworker/11:0
kworker/11:0H
kworker/11:1
kworker/u48:0
kworker/u49:4
kworker/u49:5
kworker/u50:1
kworker/u50:2
.......
Run Code Online (Sandbox Code Playgroud)
名称以数字开头的线程被固定到具有相同数字的核心。所以第一个数字是运行线程的核心,我想知道:(0或0H或1)后面的符号是什么?
我也想知道这些uXX:Y符号的含义是什么?
我对 kworker 线程的作用只有模糊的了解:它们处理由执行 I/O 的系统调用引起的异步事件。他们在某处记录了吗?
如上一个问题所述,我想同时连接到 2 个 VPN 服务器,并为每个连接指定我想使用它访问的计算机的 IP。这个 VPN 连接之一是用vpnc一个default.conf文件完成的,另一个是用 Cisco 客户端完成的(我现在无法连接,vpnc因为我没有连接所需的 IPSecrete 元素)。
我可以通过vpnc以下方式完成连接:我能够连接配置目标 IP 以使用创建的接口,如下所示:
#!/bin/sh
#Get default gateway
DEFGW=`ip route list | grep default | awk -F' ' '{print $3 }'`
DEVICE=`ip route list | grep default | awk -F' ' '{print $5 }'`
echo "Default Gatway is: $DEFGW on device $DEVICE"
echo "Starting vpnc"
sudo vpnc
echo "Adding routes to known computers through VPN network interface"
sudo route …Run Code Online (Sandbox Code Playgroud) 在top和htop工具中,具有最高实时优先级(从用户态 API 的角度来看为 99)以及调度策略SCHED_RR或SCHED_FIFO优先级的进程(或/和线程,取决于显示设置)显示为RT。
对于所有其他实时进程,优先级显示为由以下定义的数字 p:
p = -userprio -1
Run Code Online (Sandbox Code Playgroud)
我很奇怪,为什么top和htop不显示-100的higest优先级实时进程?