我必须替换 shell 脚本中数组中所有值的空格(“”)。所以,我需要创建一个像这样的数组:
$ array[0]="one"
$ array[1]="two three"
$ array[2]="four five"
Run Code Online (Sandbox Code Playgroud)
看起来像这样:
$ array[0]="one"
$ array[1]="two!three"
$ array[2]="four!five"
Run Code Online (Sandbox Code Playgroud)
用循环或其他东西将每个空格替换为另一个字符,而不是按值更改值。
对于负载测试,我想在我用jmeter运行测试之前随机化我的测试值.为此,我想使用这个bash脚本:
#! /bin/bash
cat data.dsv | shuf > randomdata.dsv
Run Code Online (Sandbox Code Playgroud)
这应该用jmeter执行.我尝试使用BeanShell Sampler和这个命令(我使用这个命令总是找到正确的文件,无论我想在哪台机器上执行它):
execute(${__BeanShell(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)}${__BeanShell(File.separator,)}random.sh)
Run Code Online (Sandbox Code Playgroud)
但我总是收到此错误消息:
ERROR - jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval In file: inline evaluation of: ``execute(/home/user/git/path/'' Encountered "( /" at line 1, column 8.
Run Code Online (Sandbox Code Playgroud)
任何想法做什么或有什么最好的做法我还没找到?
我有两个输出文件:
FILE-A:
TOM
JACK
AILEY
BORG
ROSE
ELI
Run Code Online (Sandbox Code Playgroud)
文件-B 内容:
TOM
ELI
Run Code Online (Sandbox Code Playgroud)
我想从File-A中删除FILE-B中列出的任何内容.
FILE-C(结果文件):
JACK
AILEY
BORG
ROSE
Run Code Online (Sandbox Code Playgroud)
我想我需要一份while r for i
声明.有人可以帮我弄这个吗?我需要cat
阅读FILE-A并且对于FILE-B中的每一行我需要从FILE-A中删除它.
我应该使用什么命令?
我是shell脚本和sed
命令的新手.
以下sed
命令在Solaris中有效但在Linux中出错:
sed -n 's/^[a-zA-z0-9][a-zA-z0-9]*[ ][ ]*\([0-9][0-9]*\).*[/]dir1[/]subdir1\).*/\2:\1/p'
Run Code Online (Sandbox Code Playgroud)
错误是:
sed: -e expression #1, char 79: Invalid range end
Run Code Online (Sandbox Code Playgroud)
我不知道为什么它会给出无效的范围结束错误.
如何检查我的范围变量是否实际包含NaN?
isNaN($scope.variable)
即使返回true也是如此 $scope.variable == undefined.
form validity
如果范围变量实际包含NaN
但不是,则我想设置true undefined
.
function deleteNews($selected) {
$file = file_get_contents('news.json', true);
$data=json_decode($file,true);
unset($file);
foreach($selected as $index){
unset($data[$index]);
}
$result=json_encode($data);
file_put_contents('news.json', $result);
echo $result;
unset($result);
$url="./deleteNews.php";
//redirect($url);
}
Run Code Online (Sandbox Code Playgroud)
上述函数应该从JSON中删除条目,如:
[
{
"dummy":"dummy",
"dummy1":"dumy"
},
{
"dummy":"dummy1",
"dummy1":"dummy"
}
]
Run Code Online (Sandbox Code Playgroud)
但最后该函数在JSON中插入数字索引,这是不可取的.
结果是这样的
[
"0":
{
"dummy":"dummy",
"dummy1":"dumy"
},
"1":
{
"dummy":"dummy1",
"dummy1":"dummy"
}
]
Run Code Online (Sandbox Code Playgroud)
如何从中获取原始JSON格式?我不想要0 1 2索引部分.
NB:就是foreach
这样做.如果没有foreach
,则按预期创建JSON.
#include <stdio.h>
#include <stdlib.h>
typedef struct contact
{
my_string name;
my_string email;
int age;
} contact;
typedef struct contact_array
{
int size;
contact *data;
} contact_array;
void print_contact(contact *to_print)
{
printf("%s (%s) age %i\n", to_print->name.str,
to_print->email.str, to_print->age);
}
int main()
{
int i;
contact_array contacts = { 0, NULL };
for(i = 0; i < contacts.size; i++)
{
print_contact(contacts.data[i]);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
error: incompatible type for argument 1 of 'print_contact'
note: expected 'struct contact *' but argument is …
Run Code Online (Sandbox Code Playgroud) 我正在写一个bash脚本,我想验证一个字符串是否是一个shell保留字(如if
,for
,alias
,等...).
我怎么能这样做?
我正在写我的post-receive git hook的第二个版本.
我有一个GL_REPO
符合的变量:
/project.name/vhost-type/versioncodename
Run Code Online (Sandbox Code Playgroud)
它可能有也可能没有尾随和/或前一个斜杠.
我当前的代码误解了以下代码的功能,因此它清楚地复制$versioncodename
到每个变量中:
# regex out project codename
PROJECT_NAME=${GL_REPO##*/}
echo "project codename is: $PROJECT_NAME"
# extract server target vhost-type -fix required
VHOST_TYPE=${GL_REPO##*/}
echo "server target is: $VHOST_TYPE"
# get server project - fix required
PROJECT_CODENAME=${GL_REPO##*/}
echo "server project is: $PROJECT_CODENAME"
Run Code Online (Sandbox Code Playgroud)
从字符串后面一次一个地获取这些元素的正确方法是什么,或者保证三部分字符串分配这些变量?
我想分成一个数组可能会更好?
我想用f和v作变量.f*.mkv和v*.mp3
for f in *.mkv v in *.mp3; do
ffmpeg -i "$f" -i "$v" -vcodec copy merge_"$f"
done
Run Code Online (Sandbox Code Playgroud)
我不知道如何正确地做到这一点.我仍然是bash shell脚本的新手.
我希望有一个人可以帮助我.