标签: shell-script

Tunnelblick Mac 脚本

我想在 OpenVPN 连接时在我的 Mac 上运行一个脚本。我检查了 Mac 上的配置,但没有在任何地方看到脚本的位置。我正在运行最新的 Tunnelblick (3.7.0)。

在 Mac 版 Tunnelblick 上哪里可以设置脚本?

openvpn shell-script tunnelblick macos

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

svcutil.exe 不被识别为内部或外部命令、可操作程序或批处理文件

希望使用 SvcUtil.exe 而不是命令wsdl

哪里SvcUtil.exe

thufir>
thufir> ls 'C:\Program Files\'


    Directory: C:\Program Files


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
da----       2016-10-26   1:40 PM                7-Zip
d-----       2016-10-04  11:06 AM                Common Files
d-----       2017-08-15   4:31 AM                Intel
d-----       2018-01-13  12:19 AM                Internet Explorer
da----       2017-08-15   7:56 AM                Managed Defender
d-----       2016-10-04  11:03 AM                Microsoft Analysis Services
da----       2017-08-15   8:04 AM                Microsoft Office
da----       2017-08-15   7:39 AM                Microsoft Policy Platform
d-----       2016-10-04  11:06 AM                Microsoft SQL …
Run Code Online (Sandbox Code Playgroud)

windows powershell command-line shell-script .net-framework

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

如何检测 qBittorrent 是否正在下载?

如何编写批处理/脚本文件来查询qBittorrent以查明它是否正在下载某些内容?

根据结果​​,我想执行进一步的命令。

windows linux batch shell-script qbittorrent

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

当按下 ctrl+c 时,仅中断当前函数,而不是整个 bash 脚本

我正在尝试编写一个脚本,其中如果有人按下CTRL+ C(键盘中断),那么它不应该退出整个脚本,而只是退出当前的执行函数。

谁能建议我在这里可以使用什么逻辑?这是相同的一些示例代码

#!/bin/bash

func1()
{
wget https://example.com/test1.txt
cat text1.txt |awk '{print $3}'|tr -d '.' > temp1.txt
}

func2()
{
cat temp1.txt|<stdin-to-some-tool> > temp2.txt
}

func3()
{
<some-tool> temp2.txt > temp3.txt
}
Run Code Online (Sandbox Code Playgroud)

同样,如果我们在此之前停止该函数,其他函数仍应执行。

linux bash command-line shell-script bash-scripting

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

mv: 目标“XXX”不是目录

我正在尝试编写一个 bash 脚本,该脚本将遍历目录\n并将文​​件重命名为“Chapter1.mp3”、“Chapter2.mp3”(文件名真的很疯狂,任何人都无法识别它们是什么)等,\n但是当我这样做时,出现以下错误:

\n
mv: target \'Chapter##.mp3\' is not a directory\n
Run Code Online (Sandbox Code Playgroud)\n

我记得,mv命令允许您指定文件名和目录...为什么我会收到此错误?以下是我的代码:

\n
cptr=0;\n\nfor i in ./myFolder/*; do\n    cptr=$(($cptr+1)); # I can\'t remember, can I use cptr++?\n    mv -v $i "Chapter$cptr.mp3";\ndone;\n
Run Code Online (Sandbox Code Playgroud)\n

我尝试过删除文件扩展名,删除引号,甚至使用cp代替,但我尝试过的任何方法都不起作用。\xc2\xa0\n为什么它要求目标只能是目录而不是文件名?

\n

我正在使用带有适用于 Linux 的 Linux 子系统的 Ubuntu 20.04 LTS 终端;\n这有什么区别吗?

\n

bash shell-script mv

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

如何在 shell 脚本函数完成时始终执行命令?

我需要编写一个zsh具有多个退出点的函数,并在每个退出点处执行相同的清理命令:

function foo {
    if ... ; then
        ...
        run_cleanup
        return
    elif ... ; then
        some_command || (run_cleanup ; return 1)
    else
        ...
    fi
    ...
    run_cleanup
}
Run Code Online (Sandbox Code Playgroud)

有没有办法避免run_cleanup在每个退出点重复(这很容易出错)?

linux script bash zsh shell-script

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

如何实现易变的“用户配置文件”

我想设置一台 Linux 机器,这样当名为student的特定用户注销时,他们的 /home 目录会被清除并重置。

基本上我想在用户注销时执行这些操作:

userdel student
rm -r /home/student
useradd -m student
echo student | passwd --stdin student
Run Code Online (Sandbox Code Playgroud)

有没有比删除和重新创建用户更简单的方法?

注意:这里的目标是擦除用户主目录的内容并从 /etc/skel 重新填充用户主目录。我想我只是想解决在将 /etc/skel 复制到 /home/student 时出现的文件所有权问题。

编辑:我需要做的是模仿useradd -m/etc/skelto复制内容/home/student并更改所有者、组和权限的方式。我该如何做useradd -m而不必删除然后重新创建用户?

linux gnome user-accounts gdm shell-script

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

如何在 bash 中创建两个相同的别名?

我想为同一个命令创建两个不同的别名而不重复我自己。我怎样才能在 bash 中做到这一点?例如,我希望 listlong 和 longlist 都是“ls -al”的别名。

bash shell-script bash-alias

3
推荐指数
2
解决办法
279
查看次数

bash脚本的多个参数

我需要在我的 bash 脚本中检查用户提供的选项,但在调用脚本时并不总是提供这些选项。例如,可能的选项可以是 -dontbuild -donttest -dontupdate 的任意组合,有没有办法检查它们?对不起,如果这个问题真的很基础,我是 bash 脚本的新手。

谢谢

编辑:我尝试了这段代码,并使用选项 -disableVenusBld 调用了脚本,但它仍然打印出“开始构建”。难道我做错了什么?提前致谢!

while [ $# -ne 0 ]
do
    arg="$1"
    case "$arg" in
        -disableVenusBld)
            disableVenusBld=true
            ;;
        -disableCopperBld)
            disableCopperBld=true
            ;;
        -disableTest)
            disableTest=true
            ;;
        -disableUpdate)
            disableUpdate=true
            ;;
        *)
            nothing="true"
            ;;
    esac
    shift
done

if [ "$disableVenusBld" != true ]; then
    echo "Starting build"
fi
Run Code Online (Sandbox Code Playgroud)

linux unix bash shell-script

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

将 shell 脚本变量传递给 AWK 命令

我希望能够调用包含以下命令的 shell 脚本。

awk -F $'\xE7' '{OFS ="¬"} { $3 = sprintf("%010s". $3) ; print $0 }' > outputfile
Run Code Online (Sandbox Code Playgroud)

但是我希望能够将一个 shell 脚本变量传递到这个命令中,该命令将用于替换$3AWK 命令中的 。

如何将 shell 脚本变量传递到此 AWK 命令中?

awk shell-script

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