小编Maj*_*imi的帖子

使用带 ssh 的手表

我有一个脚本:

export TERM=xterm
watch -t -d -n 1 'netstat -veeantpo | grep 43597
Run Code Online (Sandbox Code Playgroud)

当我们通过 ssh 运行此脚本时,它不会确定显示器分辨率。所以尽管有空间显示结果,但行被换行。你可以在图片中看到结果。(我已经删除了后面的空格ESTABLISHED)。

在此处输入图片说明

ssh xterm watch

4
推荐指数
1
解决办法
3023
查看次数

将 N 命令与 sed 一起使用时,最后一行会发生什么

这是我的 sed 命令:

echo -e "AB\nCD\nEF\nGH" | sed 'N; D;'
Run Code Online (Sandbox Code Playgroud)

它打印:

GH
Run Code Online (Sandbox Code Playgroud)

sed逐行处理输入时,最后一行会发生什么?(之后什么时候sed看到文件结束)?我的意思是模式缓冲区只包含 1 行。

sed text-processing

4
推荐指数
1
解决办法
152
查看次数

Debian 在重启后没有检测到串行 PCI 卡

我已经安装了一个带有两个串行端口和一个并行端口的 PCI 卡。芯片组是MCS9865。我从这里下载了最新的驱动程序(V1.0.12)。我跑makemake install。现在两个串口是/dev/ttyD0/dev/ttyD1。我已经对它们进行了测试,picocom并且运行良好。问题是,当我重新启动系统时,没有/dev/ttyD0/dev/ttyD1。我需要做另一个make install。有什么解决办法吗?

输出lspci -v显示:

03:01.0 Serial controller: NetMos Technology PCI 9865 Multi-I/O Controller (prog-if 02 [16550])
    Subsystem: Device a000:1000
    Flags: bus master, medium devsel, latency 32, IRQ 19
    I/O ports at df00 [size=8]
    Memory at fbeff000 (32-bit, non-prefetchable) [size=4K]
    Memory at fbefe000 (32-bit, non-prefetchable) [size=4K]
    Capabilities: [48] Power Management version 2
    Kernel driver in use: …
Run Code Online (Sandbox Code Playgroud)

linux drivers kernel-modules serial-port

4
推荐指数
1
解决办法
4543
查看次数

sed中替换命令前模式的用法是什么

链接中有一个关于以下内容的示例sed

要删除所有以“#”开头的行的第一个数字,请使用:

sed '/^#/ s/[0-9][0-9]*//'
Run Code Online (Sandbox Code Playgroud)

第一个模式(/^#/)的好处是什么?可能很简单:

sed 's/^#[0-9][0-9]*//'
Run Code Online (Sandbox Code Playgroud)

sed regular-expression

3
推荐指数
1
解决办法
224
查看次数

如何使用 qemu 运行 Buildroot Linux 镜像?

我已经为 i386 编译了一个带有 Buildroot 的嵌入式 Linux。我没有编辑太多,只是默认。现在我想在qemu下运行它。但我看到的唯一一件事是: 在此处输入图片说明

我正在使用以下选项运行 qemu:

qemu-system-i386 -kernel vmlinux -hda rootfs.ext2 -m 256
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况?我已经按照 buildroot 文档中的示例进行了编译。

embedded qemu buildroot

3
推荐指数
1
解决办法
5589
查看次数

基于全局 MAC 地址的 UUID

我使用包中的uuid命令uuid-1.6.2-8.fc17.x86_64生成版本 1 UUID。手册页说默认是使用主机的真实MAC地址,但是当我解码生成的UUID时,它使用的是本地多播地址。uuid v 1显示:

5fc2d464-e1f8-11e1-9c3d-ff8beec65651
Run Code Online (Sandbox Code Playgroud)

uuid -d 5fc2d464-e1f8-11e1-9c3d-ff8beec65651节目解码:

encode: STR:     c7ee12de-e1f7-11e1-99f1-53d638ec6296
        SIV:     265752520555487307909286258714002350742
decode: variant: DCE 1.1, ISO/IEC 11578:1996
        version: 1 (time and node based)
        content: time:  2012-08-09 07:56:52.526563.0 UTC
                 clock: 6641 (usually random)
                 node:  53:d6:38:ec:62:96 (local multicast)
Run Code Online (Sandbox Code Playgroud)

我怎样才能让它使用我的实际 MAC 地址和我的时区(Asia/Tehran,而不是 UTC)?

mac-address uuid

3
推荐指数
1
解决办法
5003
查看次数

OpenVPN 点对点隧道应该在不同的端口上吗?

OpenVPN 说明书显示了站点到站点 VPN(3 个站点)的示例。他们在一个唯一的端口上配置了每个隧道:

  1. 站点 A 到站点 B:1194
  2. 站点 A 到站点 C:1195
  3. 站点 B 到站点 C:1196

作者没有提供任何有关它的信息。我在手册页中没有找到任何有用的东西。
这是规则吗?我们应该为每个点对点隧道分配一个唯一的端口吗?

ip openvpn tunneling

2
推荐指数
1
解决办法
1005
查看次数

在这里使用带有 su 命令的脚本 I/O 重定向

这是我的脚本。我想用另一个用户登录并执行以下操作ls -lih

#!/bin/bash

su - testuser <<- _EOF_
    123456 #password
    _EOF_

ls -lih
Run Code Online (Sandbox Code Playgroud)

这是我运行脚本时的输出:

./script.sh
-bash: line 1: 123456: command not found
total 127M
 262210 drwxr-xr-x.  9 mazimi mazimi 156K Feb 14 19:05 Desktop
 262211 drwxr-xr-x.  2 mazimi mazimi  36K Feb 14 18:26 Downloads
 278106 -rw-r--r--   1 mazimi mazimi  64K Feb 14 22:30 ems.cfg
 ... # list of files
Run Code Online (Sandbox Code Playgroud)

ls -lih在我的主目录中不是testuser吗?我该如何解决?

su

2
推荐指数
1
解决办法
3229
查看次数

apt 是否更新手动安装的软件包

我正在尝试在 Debian wheezy 上安装 bnx2 非免费驱动程序。该驱动程序位于非免费存储库中。由于没有网络连接,我应该下载 .deb 文件并将其安装在盒子上。安装后是否会apt在新版本发布时更新该软件包,或者因为它是手动安装的,所以会忽略它?

debian apt

2
推荐指数
1
解决办法
420
查看次数

util-linux 的 getopt 忽略第一个参数

我按照 stackexchange 网站上的帖子来解析命令行参数。我的程序只解析长参数,所有参数都是强制性的。这是我所做的:

getopt --test > /dev/null
if [[ $? -ne 4 ]]; then
    echo "getopt --test failed in this environment."
    exit 1
fi

function quit {
    echo "$1"
    exit 1
}

# Option strings
LONG="producer-dir:,consumer-dir:,username:,password:,url:,kafka-host:,checkpoint-dir:"

# read the options
OPTS=$(getopt --longoptions ${LONG} --name "$0" -- "$@")
if [ $? != 0 ]; then 
    quit "Failed to parse options...exiting."
fi

eval set -- "$OPTS"

# extract options and their arguments into variables.
while true ; do
  case "$1" in
    --producer-dir …
Run Code Online (Sandbox Code Playgroud)

command-line arguments

1
推荐指数
1
解决办法
843
查看次数