AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[scripting](unix)

Martin Hope
Gridzbi Spudvetch
Asked: 2025-04-07 07:03:20 +0800 CST

根据特定 HID 的原始事件运行脚本?

  • 8

对你来说,这个问题有点奇怪。我有一台旧的二合一笔记本平板电脑,运行良好,只是触摸屏驱动程序偶尔会崩溃,导致无法使用。我有一个简单的脚本可以重启它,但当它没有连接到键盘时,重启起来会很麻烦。我建议的解决方案是,当我同时按下两个物理音量键时运行脚本(这两个按钮是我唯一可靠连接的其他输入设备)。我使用的是 Fedora Wayland。这看起来可行吗?如果可行,该如何操作?

scripting
  • 3 个回答
  • 284 Views
Martin Hope
James78
Asked: 2025-02-06 09:02:37 +0800 CST

补丁线收到错误

  • 6

我有一个脚本和补丁,我带着它去某处编译图像(linux build root),我添加了一些行,现在我在修补期间收到一个错误,错误如下:

diff --git a/package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate

index fecf82fcaa..fff80d6efc 100755

--- a/package/base-files/files/bin/config_generate

+++ b/package/base-files/files/bin/config_generate

@@ -312,10 +312,10 @@ generate_static_system() {

问题似乎出在数字上 -312,10 +312,10

主意?

谢谢

编辑:这里还有一些信息,在 OpenWrt 编译期间,我想自动添加一些更改,这些更改将包含在脚本中,它将在某些文件中应用补丁。即:那部分

generate_static_system() {
    uci -q batch <<-EOF
        delete system.@system[0]
        add system system
        set system.@system[-1].hostname='OpenWrt'
        set system.@system[-1].timezone='EST5EDT,M3.2.0,M11.1.0'
        set system.@system[-1].zonename='America/New York'
        set system.@system[-1].ttylogin='0'
        set system.@system[-1].log_size='384'
        set system.@system[-1].urandom_seed='0'

到:

generate_static_system() {
    uci -q batch <<-EOF
        delete system.@system[0]
        add system system
        set system.@system[-1].hostname='james_router2'
        set system.@system[-1].timezone='EST5EDT,M3.2.0,M11.1.0'
        set system.@system[-1].zonename='America/Toronto'
        set system.@system[-1].ttylogin='0'
        set system.@system[-1].log_size='384'
        set system.@system[-1].urandom_seed='0'

这是一个更大文件的一部分,位于:

package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate

文件图像

scripting
  • 1 个回答
  • 173 Views
Martin Hope
John Smith
Asked: 2024-12-25 19:38:02 +0800 CST

我怎样才能使这个预期脚本始终按预期工作?

  • 8

我使用Spectrespectre-cli的交互式钱包,这种代币的设计与 Kaspa 类似。当我想要手动获取钱包余额时,我需要 在 中运行,然后运行​​。所有这些看起来都像这样:spectre-cliconnectopenspectre-cli

spectre-cli
Spectre Cli Wallet v0.3.16 (type 'help' for list of commands)
$ connect
Connected to Spectre node version 0.3.16 at ws://127.0.0.1:19110
$ open
Enter wallet password: 

Your wallet hint is: This is a hint.

$ $ 
• ****************
    • [********]: 4.47042578 SPR   1 UTXOs
      spectre:******************************************************

[********] • 4.47042578 SPR $ 

我编写了一个预期脚本来帮我完成这些步骤(这样我唯一需要输入的就是我的密码):

#!/usr/bin/expect -f

# Set a timeout (in seconds) for how long to wait for each prompt
set timeout 5

spawn spectre-cli

expect "$ "   
send "connect\r"

expect "$ "  
send "open\r"


interact

我从脚本中得到不一致的输出。大约 70% 的时间我得到:

./get_balance_works.exp 
spawn spectre-cli
Spectre Cli Wallet v0.3.16 (type 'help' for list of commands)
$ connect
connectopen
command not found: connectopen
$ 

其余时间脚本都按预期工作:

./get_balance_works.exp 
spawn spectre-cli
Spectre Cli Wallet v0.3.16 (type 'help' for list of commands)
$ connect
$ open
Connected to Spectre node version 0.3.16 at ws://127.0.0.1:19110
Enter wallet password: 

Your wallet hint is: This is a hint.

$ $ 
• ****************
    • [********]: 4.47042578 SPR   1 UTXOs
      spectre:******************************************************

[********] • 4.47042578 SPR $ 

有没有办法让脚本以一致的方式按预期工作?

PS 我在使用 Ubuntu LTS。

scripting
  • 2 个回答
  • 58 Views
Martin Hope
Manuel songokuh
Asked: 2024-11-13 17:43:57 +0800 CST

如何让它在 opensuse/openbox 中自动启动“startx -- -nocursor”?

  • 5

我想让它自动以无光标启动:startx -- -nocursor这可行,但这是命令..我想自动启动到用户:kiosk..(但我不想使用“unclutter”)

我不明白我可以在哪里添加脚本或文件配置无光标的 startx.. .xinitrc?或其他文件配置..

我使用带有 openbox 的 opensuse 15.6

所以我在这里问,我希望找到你的帮助手代码.. :-)

谢谢

scripting
  • 1 个回答
  • 24 Views
Martin Hope
user447274
Asked: 2024-10-05 12:03:49 +0800 CST

如何查找具有特定最小大小的文件?

  • 7

使用find,我将检查目录中是否存在任何最小大小为 1 字节的文件in,如果不存在则退出。

我尝试过类似的东西,但它不起作用

find ./in/ -type f -iname '*' -size 1c &> /dev/null
if [ "$?" != 0 ]
then
    echo file size is under 1 byte, aborting...
fi
scripting
  • 1 个回答
  • 134 Views
Martin Hope
Terry
Asked: 2024-04-27 19:47:13 +0800 CST

为什么 find ....-execdir 会重命名未命中的文件?桀骜

  • 5

我在 MX Linux 23.2 上使用 zsh。

多年来我一直试图弄清楚为什么像这样的命令

find . -depth -type f -execdir rename 's/_720p//' {} \;

跳过文件。

我知道我的文件管理器无法显示更改,因此我通过ls在终端中输入进行检查。你瞧!那里列出了名称中仍带有“_720p”的文件。

我尝试将进程发送到后台并使用wait,但我得到了相同的结果。我唯一发现的是类似的东西

while  [ ! .(NF) ]; do
filename=$(find . -type f -print0 -quit)
rename 's/_720p//' $filename
mv $filename $HOME/Videos
done

我从来没有见过另一个问题与这个问题有一点相似。我是 Linux 宇宙中唯一一个做不到这一点的人吗?问题是什么?

scripting
  • 1 个回答
  • 70 Views
Martin Hope
colinh
Asked: 2024-02-03 07:36:44 +0800 CST

Zsh:在脚本中终止行的惯用方法是什么?(分号、换行符)

  • 5

我很乐意将分号、换行符和与号放在需要的地方。但什么是“正确”的方法呢?这只是风格/个人喜好的问题,还是其中一个在某些方面比另一个更好?

while true; do
   cmd1
   cmd2
   cmd3
done
while true; do
   cmd1;
   cmd2;
   cmd3;
done

第二个使用更多的墨水/电子,但你可以简单地连接线,它仍然可以:

while true; do cmd1; cmd2; cmd3; done

scripting
  • 1 个回答
  • 39 Views
Martin Hope
kwyntes
Asked: 2023-11-11 02:57:38 +0800 CST

获取最后一个 tmux 窗格的当前目录

  • 5

我正在寻找一个tmux命令来获取最后一个焦点窗格的当前目录 ( #{pane_current_path}),不需要切换到它并切换回来。

以下作品:

tmux last-pane
echo "$(tmux display-message -pF "#{pane_current_path}")"
tmux last-pane

但是我想知道是否有一种方法可以做到这一点而不必调用tmux last-pane两次(也许是一个包含最后一个窗格的 ID 的变量?)。

scripting
  • 1 个回答
  • 30 Views
Martin Hope
Aleksander
Asked: 2023-10-28 15:10:17 +0800 CST

从 free 命令输出中记录 Mem 和 Swap 的总和

  • 5

与此相关:

https://unix.stackexchange.com/a/754252/582781

解决方案一:

free -g -s2 | sed -u -n 's/^Mem:\s\+[0-9]\+\s\+\([0-9]\+\)\s.\+/\1/p' >> memory.log

有没有办法将 Swap 添加到其中,以便我记录已用 Mem 和 Swap 的总和?

scripting
  • 1 个回答
  • 29 Views
Martin Hope
pming
Asked: 2023-09-12 23:09:16 +0800 CST

在 if 语句中使用重定向或写入文件如何以及为何会影响退出代码?

  • 7

在zsh中

echo 'a string' > test.txt
echo $?
0

和

[[ $(echo 'a string') ]]
echo $?
0

然而

[[ $(echo 'a string' > test.txt) ]]
echo $?
1

另一个例子

curl -so 'curl-8.2.1.tar.gz' https://curl.se/download/curl-8.2.1.tar.gz
echo $?
0

或者

[[ $(curl -so 'curl-8.2.1.tar.gz' https://curl.se/download/curl-8.2.1.tar.gz) ]]
echo $?
1

我的问题:

  1. 这是因为输出重定向吗?如果不是,是什么原因造成的?
  2. 命令执行成功:a string出现在test.txt并且curl将文件下载到我指定的输出文件中,为什么评估结果为false?
  3. 在脚本中是否有一种明智的方法来处理这个问题?假设我想执行某个命令,如果前一个命令执行成功(但false仍然返回),应该如何执行?我可以添加第二次检查来查看该行是否出现或文件是否已下载,但首先就不需要评估命令是否成功执行。

更多完整性示例(可读性与“正确性”?):

if ( $(echo 'a string' > text.txt) ); then echo yes; else echo no;fi
yes
if (( $(echo 'a string' > text.txt) )); then echo yes; else echo no;fi
no
if $(echo 'a string' > text.txt); then echo yes; else echo no;fi
yes
if echo 'a string' > text.txt; then echo yes; else echo no;fi
yes
scripting
  • 2 个回答
  • 89 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve