我有一个Windows shell命令,我想为表中的每一行运行一次(通过EXEC master..xp_cmdshell).我正在使用各个领域的信息来构建命令输出.
我是编写T-SQL程序的新相对论(而不是单个查询),并且不能完全理解这个语法,或者甚至可能/推荐它.
我尝试创建一个列表变量,然后使用我想要运行的命令填充每一行.我对如何迭代这个表变量并实际运行命令感到窒息.谷歌搜索已被证明无益.
在此先感谢您的帮助!
这很奇怪.虽然ls,date,whoami等基本命令正在运行.我似乎无法使用exec使用mkdir命令创建一个目录
$output=exec("mkdir helloworld");
Run Code Online (Sandbox Code Playgroud)
如果发生这样的错误,也值得一提.是否有任何参数或我可以用来捕获此错误.像下面的例子一样?
exec("mkdir helloworld 2>&1",$output,$return_val)
if($return_val !== 0)
echo "there was an error"
Run Code Online (Sandbox Code Playgroud) 我有一个非常讨厌的错误,我无法摆脱.这是引起问题的函数:
function get_info_by_WatIAM($WatIAM, $info) {
$users_info = array();
exec("uwdir -v userid={$WatIAM}", $users_info);
foreach ($users_info as $user_info) {
$exploded_info = explode(":", $user_info);
if (isset($exploded_info[1])){
$infoArray[$exploded_info[0]] = $exploded_info[1];
}
}
return $infoArray[$info]; }
Run Code Online (Sandbox Code Playgroud)
这是调用函数的内容:
} elseif ( empty(get_info_by_WatIAM($_POST['ownerId'])) ) { ...
Run Code Online (Sandbox Code Playgroud)
我真的很感激任何建议.非常感谢!
如果代码没有意义,这里有一个进一步的解释:exec使用一个程序来存储学校中所有用户的信息.这些包括教师,姓名,用户ID等.这$_POST['ownerId']是一个用户名 - 想法是,输入用户名后,所有用户的信息将自动填写
我正在Linux下编写一个小的Python脚本,该脚本会libnotify通过使用以下语法弹出许多弹出窗口:
import os
os.execv('/usr/bin/notify-send', ['App Title', 'Message'])
Run Code Online (Sandbox Code Playgroud)
不幸的是,由于某种奇怪的原因,它杀死了解释器,直到命令提示符。
它不会与脚本执行的任何其他命令一起执行此操作notify-send。
没有给出任何错误,没有引发任何已知的异常,没有任何错误的迹象,它只会消失在命令提示符下。
是否有人有同样容易做到的建议或替代方案?
我想在我的PHP exec函数中使用我的变量:
exec('ffmpeg -i $audio_input $audio_output');
Run Code Online (Sandbox Code Playgroud)
这样做的正确方法是什么?我不想改变ffmpeg脚本.可能吗?
谢谢
我想通过php连接到java并在php中打印出结果.现在我想向java发送一个参数并将其返回给php以查看它是如何工作的.我怎样才能做到这一点?到目前为止我有这个代码:
PHP:
exec("java jar/name.jar", $output);
print_r($output);
Run Code Online (Sandbox Code Playgroud)
Java的:
public class Main {
public static void main(String[] args) {
System.out.print(args[0]);
}
}
Run Code Online (Sandbox Code Playgroud)
结果是
Array ( )
Run Code Online (Sandbox Code Playgroud) 我在Go程序中执行shell命令时遇到了一些麻烦:
var command = pwd + "/build " + file_name
dateCmd := exec.Command(string(command))
dateOut, err := dateCmd.Output()
check(err)
Run Code Online (Sandbox Code Playgroud)
如果command变量等于单个单词/home/slavik/project/build(构建是shell脚本),它可以工作,但是如果我尝试传递一些arg ie /home/slavik/project/build xxx或者/home/slavik/project/build -v=1Go程序引发异常,就像file /home/slavik/project/build not found
我的代码出了什么问题?
我有一个非常简单但很难的问题:我没有通过python执行python脚本.
这个想法非常简单,我想构建一种类似于相互关联的"脚本".它会像HTML中的链接一样工作,我有一个不同屏幕的游戏(例如主游戏,设置等),当用户点击"链接"(例如Play游戏)时,它会执行maingame.py主游戏子文件夹中的脚本.
现在出现了问题:我尝试使用exec(open('somescript.py').read())打开其他脚本.但是,"python工作文件夹"不会更改(它不会更改为子文件夹),并且这些脚本中的导入因此而无效.
有人可以建议替代方案吗?
我有简单的C程序,它使用fork()和execl()执行应用程序.如果execl()无法运行应用程序,那么我必须在父进程中调用一个函数并退出子进程.如果execl()成功运行应用程序,那么我已从父进程显示成功日志.因此,父进程应该等待子进程的execl()调用(只是调用,直到应用程序执行结束),获取有关其状态的一些信息,然后做出决策并继续自己的执行.这是我的代码.
int main()
{
int iExecRetVal, pid;
pid = fork();
if (pid == -1)
{
}
else if (pid > 0)
{
}
else
{
iExecRetVal = execl("./flute-static", "./flute-static", "-send", "-a192.168.190.1/6666", "JFlute.1.2.tar.gz", NULL);
if (iExecRetVal == -1)
{
/*execl() failed, need some error handling in the parent process*/
}
_exit(0);
}
/*Parent's normal execution*/
}
int HandleSuccessFromParent()
{
/*Should be called when exec call was successful*/
}
int HandleFailureFromParent()
{
/*Should be called when exec call was NOT successful*/
} …Run Code Online (Sandbox Code Playgroud) 我对linux编程比较陌生.我想知道exec()调用后的函数是否fork()会导致父进程中的数据丢失.