sh相关内容
如何在 Windows 7 命令提示符下运行 .sh?当我尝试在其中运行此行时,我总是收到此错误, app/build/build.sh 错误, 'app' 无法识别... 或者, bash app/build/build.sh 错误, 'bash' 无法识别... 任何想法我错过了什么? 这里是屏幕抓取, 解决方案 该错误信息表明您尚未安装 bash,或者它不在您的
..
我在 Bash 中有一个字符串: string="My string"; 如何测试它是否包含另一个字符串? if [ $string ??'富'];然后回声“它在那里!"菲 其中 ?? 是我的未知运算符.我使用 echo 和 grep 吗? if echo "$string";|grep '富';然后回声“它在那里!"菲 这看起来有点笨拙. 解决方案 您可以使用 Marcus
..
当我在 shell 中研究 this question,我注意到,即使 /bin/sh 在我的系统上指向 /bin/bash ,这两个命令的行为也不同.首先, 的输出 ls -lh/bin/sh 是: lrwxrwxrwx 1 root root 4 Apr 22 2013/bin/sh ->重击* 但是,通过/bin/sh调用以下命令: /bin/sh -c "script.sh 2
..
有没有什么聪明的方法可以通过 ssh 在远程主机上运行本地 Bash 功能? 例如: #!/bin/bash#函数定义f () { ls -l;}#我想在本地使用该功能F#在远程机器上执行函数.ssh 用户@主机 f#在另一台机器上重用相同的功能.ssh 用户@host2 f 是的,我知道这行不通,但有没有办法实现这一目标? 解决方案 您可以使用 typeset 命令通过 ssh
..
我在 /var/www/html/dbsync/index.php 中有我的 php 脚本文件.当 cd/var/www/html/dbsync/ 并运行 php index.php 时,它完美运行. 我想通过sh文件调用PHP文件,SH文件的位置如下 /var/www/html/dbsync/dbsync.sh 这是dbsync.sh文件的内容: /usr/bin/php/var/w
..
美元符号后跟 at 符号 (@) 在 shell 脚本中是什么意思? 例如: umbrella_corp_options $@ 解决方案 $@ 是传递给脚本的所有参数. 例如,如果您调用 ./someScript.sh foo bar 那么 $@ 将等于 foo bar. 如果你这样做: ./someScript.sh foo bar 然后在 someScript.sh
..
我想使用 cat > 将代码打印到文件中: cat >亮起.sh!/bin/bashcurr=`cat/sys/class/backlight/intel_backlight/actual_brightness`如果 [ $curr -lt 4477 ];然后curr=$((curr+406));回声 $curr >/sys/class/backlight/intel
..
我正在研究这个 preinst 文件的内容,脚本在从其 Debian 存档 (.deb) 文件中解压该软件包之前执行该文件. 脚本代码如下: #!/bin/bash设置 -e# 由 dh_installinit 自动添加如果 [ "$1" = 安装 ];然后如果 [ -d/usr/share/MyApplicationName ];然后echo "MyApplicationName 刚刚安
..
我有一个可执行文件 command.sh #/bin/bash别名 my_command='echo ok'我的命令 我的终端是 bash. 当我像 ./command.sh 一样运行它时,它工作正常. 当我像 /bin/bash ./command.sh 一样运行它时,它找不到 my_command 可执行文件. 当我像 /bin/sh ./command.sh 一样运行它
..
我正在尝试创建一个同时使用多个 Git 命令和位置参数的别名.每个都有 Stackoverflow 页面,两者都做似乎很明显,但我遇到了麻烦. 举个例子,我想切换到分支 foo 并执行一个状态.所以在我的 .gitconfig 中,我有: [别名]chs = !sh -c 'git checkout $0 &&git状态' 这不起作用.而像这样的事情会起作用. chs = !sh -
..
我有一个 shell 脚本,我想在不使用“sh"或“bash"命令的情况下运行它.例如: 代替:sh script.sh 我想使用:script.sh 我该怎么做? 附言(i) 我很少使用 shell 脚本,我尝试阅读有关别名的内容,但我不明白如何使用它们. (ii) 我还阅读了有关将脚本与 PATH 变量中的另一个文件链接的内容.我正在使用我的大学服务器,但我无权在
..
我的 32 位应用程序在 Wine 下运行,为了帮助它更好地与环境集成,它运行了一些 shell 脚本.我刚刚在 Ubuntu 14.04 64 位下测试,我的程序崩溃了这个错误: err:process:create_process 启动 64 位进程 L"Z:\\bin\\sh" 32 位 wineprefix 不支持 我尝试在我的系统上搜索 32 位版本的“sh",但找不到.关于如何解决
..
我在 .Net Core 中编写了以下代码来检索运行 Ubuntu 操作系统的机器的内核数. var proc = 新进程{StartInfo = 新的 ProcessStartInfo{文件名 = "/bin/sh",参数 = "-c 'grep \"$0\"/proc/cpuinfo | uniq | sed -e \"$1\"' \"cpu cores\" 's/[^0-9]*//g'",
..
我在 .Net Core 中编写了以下代码来检索运行 Ubuntu 操作系统的机器的内核数. var proc = 新进程{StartInfo = 新的 ProcessStartInfo{文件名 = "/bin/sh",参数 = "-c 'grep \"$0\"/proc/cpuinfo | uniq | sed -e \"$1\"' \"cpu cores\" 's/[^0-9]*//g'",
..
我正在尝试从另一个运行一个 .NetCore 程序. ProcessStartInfo psi = new ProcessStartInfo();psi.FileName = "sh";psi.Arguments = "-c dotnet/home/myuser/PublishOutput/myprogram.dll";psi.UseShellExecute = false;psi.Redir
..
在替换 shell 脚本中的外部命令时,我使用了一个数组来摆脱 awk 的 NF. 现在,由于我从 bash 转移到 POSIX sh,我无法正确标记数组: #!/bin/bash出口范围="0 1 4 6 8 16 24 46 53"范围=($范围)回声数组元素:$((${#RANGE[@]}))最后=$((${#RANGE[@]}-1))回声“最后一个元素(替换 NF):${RANGE
..
假设我有一个要运行的命令 (cmd) 和一个包含要传递给函数的参数的变量(类似于 --foo 'bar baz' qux).像这样: #!/bin/sh命令=cmdargs="--foo 'bar baz' qux" 参数包含引号,就像上面显示的那样,将包含空格的参数组合在一起.然后我想运行命令: $command $args 当然,这会导致运行带有四个参数的命令:--foo、'bar、b
..
我试图理解这个问题的答案之一: 无法将参数传递给 python"#!/usr/bin/env python" #!/bin/sh''''exec python -u -- "$0" ${1+"$@"} # ''' 这很好用,但我不明白为什么它在该行的开头用四个刻度而不是三个刻度起作用. 另外,为什么在该字符串末尾附近有散列? 解决方案 Python 支持三重引号字符串:
..
$ bl 1$ sh -c 'bl 1'sh: bl: 找不到命令 bl 脚本位于用户的 PATH 扩展名 (/home/user/.local/bin) 中,但 sh 环境确实如此似乎没有意识到这一点,bash 是.主要的 /usr/bin/sh 可执行符号链接到 /usr/bin/bash. 在 /usr/local/bin 中放置一个指向本地 bl 脚本的符号链接似乎可以解决这个问题
..
我有一个需要管理员权限才能执行 cmd 的 Cocoa 应用程序,但在某些极端情况下,例如包含双引号的文件名,此代码不起作用. NSString *fileName = @"~/Documents/My\" File/";NSString *cmd = [NSString stringWithFormat:@"chown -R '%@' '%@';NSUserName(), fileName]
..