我试过shellexecute,我试过createprocess,我似乎什么都做不了
在控制台窗口中的实际命令提示符下手动运行命令行,但到目前为止,我没有尝试过从C++ Builder应用程序运行它。
显然,文件名只是一个占位符。它将被赋予一个有效的文件名,例如
explorer/n,/select,c:\123.doc文件名中是否使用转义反斜杠?例如:
"c:\123.doc"
应该是:
"c:\\123.doc"
编辑:
对我有用
为了避免替换当前进程,请改用spawnlp。我确信有某种
我正在通过plink从windows机器上运行shell脚本。
我想将“*”(作为命令行参数传递)与脚本中的文字进行比较。
有人能给我推荐一种比较的方法吗?。
我已经尝试了所有可能的方法,比如在双引号中包含$1,单引号,[]。它由shell展开,因此您必须将它以引号或转义形式传递给脚本:
echo '*'
echo "*"
echo \*
您的问题是需要引用常量*,而不是与之比较的参数。这不应该是问题,脚本:
#! /bin/bash
if [[ "$1" == '*' ]]
then
最近,我参与了使用CSHShell在SunOS上编写shell脚本的工作。我将有多个查询,但首先短程序不起作用
[username]% expect - << EOF
Spawn telnet 74.125.71.103
expect "Password:"
send "google\r"
EOF
请告知
此脚本应以以下方式运行:
远程发送IP并使用现有的passwd(在脚本中明确给出)
在telnet之后,它显示菜单选项
MB站
钢筋混凝土
ODU
美联社
苏
我正在使用Chef编写服务器自动化脚本,需要检查PEAR包管理器的安装版本。命令行开关-V将详细的版本信息打印到控制台:
PEAR Version: 1.9.0
PHP Version: 5.3.5-1ubuntu7.2ppa1~lucid
Zend Engine Version: 2.3.0
Running on: Linux ubuntu-lucid-32-generic 2.6.32-33-generic #72-Ubuntu SMP Fri Jul 29 21:08:37 UTC 201
ls/home/user/new/*.txt打印该目录中的所有txt文件。但是,它会按如下方式打印输出:
[me@comp]$ ls /home/user/new/*.txt
/home/user/new/file1.txt /home/user/new/file2.txt /home/user/new/file3.txt
等等
我不希望从/home/user/new/目录运行ls命令,因此我必须给出完整的目录名,但我希望输出仅为
[me@comp]$ ls /home/user/
我有以下shell脚本:
#!/bin/sh
output=`./process_test.sh status_pid | grep "NOT STARTED: process_1" --line-buffered`
if[[ -z ${output} ]]
then
echo "process is not running"
else
echo "process is running"
fi
其中,/process\u test.sh status\u pid是查找进程是
我想从多个文件中创建一个单词列表。所有文件中都有关键字,前面有一组单词。例如:
Keywords: engine, motor, car, etc.
我想用shell脚本列出所有这些单词
从评论中:
这是一组包含电子邮件的文本文件。每个文件都有一个标题,标题行如下:
Keywords: photo, camera, color
我想用这些关键词构建一个单词包。也就是说,最后我希望有一个单词数组 (我真的希望您指的是基于unix/linux的shell)
如果你编辑你的文章,包括预期输入的例子
我正试图让这个KornShell(ksh)起作用,但if语句似乎不起作用(我肯定可能是错的)
每当我运行它时,平均值和总数都会正确计算,但无论平均值是否小于11.5,结果总是“失败”
非常感谢您的帮助。您必须显式声明ksh变量以进行隐式转换:
integer total_i
integer average_i
Total=`echo ${marks[1]}+${marks[2]}+${marks[3]}+${marks[4]}+${marks[5]} | bc`
Average=`echo "
想象一下我会:
echo $PATH
在终点站。是否有可能自动复制结果,以便在执行Ctrl+y时打印?据我所知,在终端上执行Ctrl+k操作时,文本保存在属于终端的内存缓冲区中,因此我认为这样做应该是可能的
有什么想法吗?视情况而定。Linux、Mac还是Windows
mac使用命令pbcopy和pbpaste从剪贴板复制和粘贴内容
复制示例(mac):
粘贴示例(mac):
Linux使用X,它有多个复制粘贴缓冲区(有点类似于剪贴板,但有点复杂)
您可以使用像复制/粘贴这样的小应用程序,该
在各种网站上使用的代码教程shell是什么,如codecademy、codeschool、mongodb、try-ruby等
有建造和维护这些东西的服务吗?还是你自己建造的
我发现了,但它似乎并不完全像人们正在使用的唯一一个?这些通俗地称为“web回复”(a)
通过将它们描述为“沙盒”,可以将它们与用于调试的不受限制的对象区分开来。虽然您可能会发现(它使用大量编译成javascript的解释器来运行多种语言的客户端REPL),但没有一个单一的通用工具包用于构建它们。这些工具通俗地称为“web R
我有一个bash脚本调用一个jar文件,如下所示:
awk -f fileformat.awk list.txt | while read arg1 arg2 arg3 arg4 arg5; do
java -jar /bin/2dbf.jar arg1 arg2 arg3 arg4 arg5
if [[ ${?} -eq 0 ]]; then
echo "2dbf.jar finished at: `date "+%F %T"`"
ec
我不熟悉Shell脚本编写,但是我对Java映射很友好。我只是想知道如何使用Shell脚本中的Map工具。下面是我需要在shell中使用的工具-
HashMap<String, ArrayList<String>> users = new HashMap<String, ArrayList<String>>();
String username = "test_user1";
String address = "test_
我已经将CakePHP1.2站点升级到2.x
此站点使用一个核心来支持多个应用程序。除了贝壳,一切都很好
我无法从控制台运行一个现有shell
当我尝试使用cake-app store更改应用程序时,出现以下错误:
#!/usr/bin/php -q
PHP Fatal error: Cannot redeclare class ShellDispatcher in C:\www\domains\cakes\lib\Cake\Console\ShellDispatcher.php on lin
我需要在代码中集成第二个参数,允许用户指定脚本在什么时候检查谁登录。我现在把它设置为60秒,这需要是默认频率。我试图使用另一个功能,但没有用。我想到了这样的事情
username=$1
freq=$2
checkuser()
{
if who grep "$1"
then
sleep 60
fi
}
if [ -n "$1" ]
then
echo "Enter username"
read username
checkuser
echo -e "$1 is logged o
我想搜索一些开始字符大致相同的文件
然后我在搜索中收集文件中的所有信息,并将其重新定向到1个txt文件中
我该怎么做呢
以下是我的努力:
(dir/s unixinv*.csv do type unixinv*)>summary2.txt
就像:
查找xxx*
如果是,则收集数据>>summary2.txt
否则,请继续查找
此文件夹和每个子文件夹中的每个文件
谢谢你,我正在努力学习
也许某个时候我的尝试结果很糟糕:)像这样的事情
for /r C:\folder %%a in (*.csv)
我希望使用一个shell脚本,它接受imagemagick脚本目录的for循环。shell脚本如下所示:
#!/bin/sh
# ~/scripts/mkhdr.sh
convert -gaussian $1 $2 - |
我有一个AWS EC2实例,通过它,我使用命令“EC2运行实例”创建新的AWS EC2实例
这个新实例预先配置了EC2命令行API和S3CMDAPI
在创建实例时,我将用户数据传递给新实例,在新实例中,我编写了将文件从该实例传输到AWS s3 bucket的代码,如下所示
s3cmd put res.doc s3://BucketName/DocFiles/res.doc
但它不会将res.doc传输到bucket
在那之后,我知道这个脚本上载了存在于第一个EC2实例上的文件,我从中创建了新
我是python新手,但已经使用IDLE和EricIDE好几个星期了,没有出现任何重大问题
我正在编辑一个我编写的名为random.randint()函数的程序,但它无法工作。
在此之前,该程序一直在运行,我没有更改该调用。
然后,我加载了另一个程序,该程序使用的函数与以前的相同,但也不会运行。
我试图在空闲时加载程序,但空闲时无法加载。在尝试多次重新启动和重新加载后,EricIDE也不会加载。当我试图从以前的桌面快捷方式启动任意一个IDE时,我注意到一个黑色窗口快速弹出并消失。
搜索帮助使我从
标签: Shell
text-filessolaris
我正在尝试将两个文件合并为一个具有特定格式的文件,这些文件包含以下内容:
fileA.txt:
二,
一,
一,
fileB.txt:
0023412322
1241231132
1234411177
因此,输出应为:
fileC.txt:
A B
2002341322
1241231132
1234411177
其中A和B表示列的名称,也构成输出文件的初始行
该脚本应该在Solaris上运行,但我对awk指令也有问题,我不允许在系统上更改或安装任何内容。现在我有了一个使用循环的解决方案,
如果我在emacs中访问一个文件,我希望能够运行一个简单的awk命令,例如
awk /Sam/ { print $0 }.
我将如何构造这个
我试过:
m-! - to be able to run a shell cmd
awk '/Sam/ { print $0 }' test.txt
但是我得到了这个错误:
awk: c:/MinGW/msys/1.0/Sam/ { print }
awk: ^ syntax error
awk: c:/MinGW/msys/1.0/Sam/ {
我有几个文件在很多地方都包含像JOY\u DOL\u XXX这样的字符串。我想用另一个带双引号的字符串替换它,如“JOY.DOL.XXX”,但这里XXX可以是任何东西,例如MAN,CAT,DOG,所以在本例中,我想编写一个脚本,在不明确指定的情况下相应地替换它
例如:
JOY_DOL_MAN ==> "JOY.DOL.MAN"
JOY_DOL_CAT ==> "JOY.DOL.CAT"
你能帮我一下吗,我该怎么做。Sed似乎最简单:
sed 's|JOY_DOL_\(...
我需要修复路径是否可以包含空格。我读到在bash中可以使用IFS。有适合tcsh的东西吗
谢谢。您可以在tcsh中使用\分隔符
例如,如果要访问的目录名为“我的目录”,则应按如下方式编写:
set mypath = "/usr/home/My\ Directory"
您可以在tcsh中使用\分隔符
例如,如果要访问的目录名为“我的目录”,则应按如下方式编写:
set mypath = "/usr/home/My\ Directory"
我有一个脚本,可以打印ping服务器时的平均时间,如下所示:
ping -c3 "${I}" | tail -1 | awk '{print $4}' | cut -d '/' -f 2 | sed 's/$/\tms/'
在ping服务器列表时,如何将行号添加到上面脚本的输出
ping 3主机列表时的实际输出为:
6.924 ms
100.099 ms
7.756 ms
我希望输出如下:
1,6.924 ms
2,100.099 ms
3,7,756 ms
以便可以通过excel读取:)
好的,我为我的一个脚本准备了一个缓存文件,它基本上只是一个文件路径列表,但我喜欢将其压缩,否则它会变得非常巨大
然而,在我的脚本中,我需要逐行读取它,然而,我目前只需将整个文件解压缩为/tmp,然后使用文件描述符(通过exec)从中读取,这样每次需要下一个条目时,我就可以从中读取
不管怎样,我想知道是否有一种更有效的方法,我可以这样做;我知道如何通过管道将gzip的输出放入循环中逐行读取文件,但是我只定期从缓存文件中读取行,也就是说,我已经在从不同的数据集进行循环,因此我也无法以这种方式从缓存中
我想找到SVN中所有包含空格和特殊字符的文件名,并将它们放入temp.txt。我没有这条路。我还需要在子文件夹中查找文件名
我尝试了以下命令,但它不起作用
find.-type f|egrep-i"~||&|@|#|<|>|;|:|!|'^'|,|-|_"|tee temp.txt
find.-键入f | egrep-i“~ | |&|@| | | | | | | | | | | | | | | | | | | | | | | |
它做错了什么?你的正则表达式错了。试试这
我有一个txt文件,其中包含前缀Id的列表,我需要将其与源目录进行匹配,获得匹配的文件名并构建一个列表
我目前正在使用下面的代码来实现这一点,但我只得到列表中最后一个文件名的文件
set -A flist $(find $1 -name "*.csv" | grep "`cat ${tempfile}.txt`"
大约有10个匹配文件,但此命令仅返回最后一个文件,如有任何帮助,将不胜感激
$ cat prefixes.txt
foo_[^/]*$
bar_[^/]*$
$ find
.
./
我有一个大文件,其中每一行由24个用空格分隔的小整数组成。我想找到,每一条线,最长的重复段,允许线环绕。例如,给定一行
0 10 4 2 7 9 11 8 6 5 0 10 4 2 7 11 9 3 8 3 1 1 6 5
序列65010427最长;它的长度为7,两个引用之间由10个位置或14个位置分隔
有人能告诉我如何拼凑一个脚本来返回每行最长序列的长度和两个开头之间的间隔吗
按照文件的构造方式,任何段都不可能重复多次,即出现两次以上,因为0到11之间的每个数字都被限制为正好出现两次
非常感
我已经编写了以下shell脚本
if [ "$LOCALE" == "US" ]
then
#do something
elif [ "$LOCALE" == "DE" || "$LOCALE" == "FR" || "$LOCALE" == "IT" || "$LOCALE" == "UK" ]
then
#do something else.
fi
它给了我一个错误[:missing]。有人能解释一下这里的错误吗?在[…]中,使用-a(和)和-o(或):
在[…]]内部,您
我想将当前文件夹中的所有.jpg文件重命名为.jpeg。
我见过很多使用rename命令的解决方案,但在我的书中,他们说我可以使用ls、mv和cut。我知道我可以使用管道,但我不知道我可以按什么顺序使用。你可以使用ls和mv和一个循环(我只看到一个地方你可以使用cut,这对cut)但你不想这样做。有关原因的详细信息,请参阅
使用mv和循环即可。使用ls驱动环路是不正确的
for file in ./*.jpg; do
mv -v "$file" "${file%.jpg}.jpeg"
d
我有这个命令:
grep -E '^nothing' List.txt | echo $?
这里grep不匹配任何东西,我只是输出它的退出代码。根据grep的文件:
通常,如果选择了一行,则退出状态为0,如果没有行,则退出状态为1
已选择,如果发生错误,则为2。但是,如果-q或
--如果使用quiet或--silent选项并选择一行,则即使发生错误,退出状态也为0。其他grep实现可能会
退出时,错误状态大于2
但是:
但是,为什么即使不存在匹配项,也要将0作为输出,难道我不应该获得预期的1退
假设我有一个表示要执行的shell命令的Strings列表
commands = ["git clone https://github.com/test/repo.git", "git checkout origin"]
另外,假设我有一个命令,execCommand,它接受一个字符串,作为shell命令执行,检索退出代码stdout和stderr,如果退出代码为非零,则返回stdout和stderr的串联;否则,它将返回Nothing
现在,我如何顺序执行命令列表,同时确保后续命令不会在一个
我需要通过Latex将引号(“)字符传递给shell,以便使用printf命令:
\makeatletter
\newcommand{\calcCorrelation}[1]{{\input{|"awk '
{
...
}
END{...
printf("\@percentchar.2f",r);
}
' #1;
"}
}}
\makeatother
我遇到语法错误,因为\@percentchar.2f周围的引号未传递。我如何修复此问题?请提前感谢!尝试使用一个变量--类似于以下内容:
\
这适用于CMD:
rar a c:\new.rar c:\*.*
这可以在运行script.vbs时工作,但不会太多!:
Function qq(strIn)
qq = Chr(34) & strIn & Chr(34)
End Function
Set sh = CreateObject("WScript.Shell")
MyCmd = "Cmd /c CD /D " & qq("C:\Program Files (x86)\WinRAR")
我是一名unix新手,正在探索shebang line的功能
例如,假设我有一个program.py要执行
执行的一种方法是直接调用解释器命令:
python program.py
如果使用shebang行,我将包括:
#!/usr/bin/env python
在文件的开头告诉系统使用什么解释器
那么,在这种情况下,我们为什么需要通过调用以下命令使文件“可执行”:
chmod +x program.py
program.py
然后打电话:
./program.py
要执行它
而不是
我怎样才能写出一个简单的差分响应呢。用于对文件中的行列表应用添加和删除的修补程序脚本
这可能是原始文件(已排序且每行都是唯一的):
一个简单的补丁文件可以如下所示(或者简单到):
生成的文件应如下所示(或以任何其他顺序,因为sort可以以任何方式应用):
正常的补丁格式无法使用,因为它们包含上下文,在这种情况下可能会发生变化。由于没有人能给我答案,我创建了一个小python脚本,它正好可以完成这项工作
要应用此修补程序,请使用调用它(其中生成outfile.txt)
要生成修补程序/diff,请
我想用shell脚本中的空字符串替换第一行
例如:
输入
输出
我可以使用哪个Unix命令执行相同的操作?有什么想法吗?如果它在一个文件中,你可以用它来删除第一行:
sed -i '1d' ../file.txt
如果在文件中,可以使用此选项删除第一行:
sed -i '1d' ../file.txt
如果在文件中,可以使用此选项删除第一行:
sed -i '1d' ../file.txt
如果在文件中,可以使用此选项删除第一行:
sed -i '1d' ../file.txt
你的意思
我尝试使用C语言编程,但这会产生错误“sh:1:
历史记录:未找到。“
我的c编程代码
int main ()
{
char command[50];
strcpy( command,"history | tail -20" );
system(command);
return(0);
}
在bash中,可以访问环境变量$HISTFILE。使用参数-ci调用shell-c运行命令,并-i为shell提供一个包含所有可用环境变量的交互式环境
bash -ic 'tail
我想把partition和replicationfactor作为for循环中的参数来读取,我该怎么做呢?而不是2和3,我想从rf读取数据,并将相应的值划分为原始的好值和坏值
topics=(raw good bad)
rf=(4 6 8)
partition=(2 3 4)
for topic in ${topics[*]}
do
bin/kafka-topics.sh --create --replication-factor 2 --partitions 3 --topic "$topi
我有一个名为a.sh的脚本,从中调用b.sh并将一些参数从a.sh传递到b.sh。在b.sh完成后,我将从b.sh导出一些变量,并希望从a.sh回显它。我在b.sh中使用export命令,但在执行echo命令时,它在a.sh中没有显示任何内容
#b.sh
x=1
#some function is there
export $x
#a.sh
sh b.sh
echo "X value is : $x"
#output
# X value is :
您希望源代码而不是执行:。另外,您可以使用x
我正在使用windows 10 home。我试图从安装jq
下载了jq-win64.exe文件,但当我打开它时,它会立即打开和关闭。我想运行一个需要安装jq的.sh文件。这里有任何帮助。在获得jq.exe(通过任何方式)后,您通常会从批处理脚本或Windows命令行运行它。例如,见
如果让“choco”为您安装(choco install jq),您可能会发现使用jq更容易
安装choco非常简单:我建议您先安装,然后再安装JQLinux版本,使用apt cyg install jq这不是安装程
我用的是这样的东西:
echo "get 'myfiles', '3ifecre1Row', {COLUMN=>'file:data', FILTER=>'ValueFilter(=,\'binaryprefix:%\')'}" | hbase shell | grep "^ " > testfile.pdf
PDF以%PDF-1.6开头
我不知道为什么,但它不会正确地出来。上面说腐败。我也尝试过不使用valueFilter
每次当您“vi”文件时,它都会收到PDF,并显示:
我正在尝试在iterm2中设置终端的选项卡标题。当我在shell中使用
echo -ne "\033];foobar\007"
但当我在neovim中这样做时,选项卡标题不会改变。在neovim,我正在尝试
!echo -ne "\033];foobar\007"
我的shell是zsh,而不是我在使用tmux或类似的东西(tmux标签在这个问题中故意丢失,尽管它经常与这样的东西相关)。我尝试了echo命令的一些变体(例如,\a而不是\007,但这只是zsh sugar),并尝试使用我在中找
我的程序模拟的结果是几个数据文件,第一列表示成功(=0)或错误(=1),第二列表示模拟时间(秒)
这两列的一个例子是:
1 185.48736852299064
1 199.44533672989186
1 207.35654106612733
1 213.5214031236177
1 215.50576147950017
0 219.62444310777695
0 222.26750248416354
0 236.1402270910635
1 238.5124609287994
0
现在,我在bash中执行以下命令:
sudo tee /proc/acpi/nvhda <<<ON
作为一种在fish中工作的方法,其效果与在POSIX系列外壳中的效果一样:
echo ON | sudo tee /proc/acpi/nvhda
sudo-echo--echo没有意义,它只会写入从父进程继承的已经打开的标准输出句柄;它不打开任何文件,因此不需要任何权限
指向tee的点是在shell外部有一个进程,因此该进程可以位于sudo的另一端。无论您是否使用hered
在shell脚本的帮助下,我正在编写一个Jenkins作业,将Confluence中的页面导出为PDF,并在构建后将其存储为输出。
如何实现这一点?使用wkhtmltopdf执行从html到pdf的转换
您还可以将现有网站转换为PDF
$wkhtmltopdf https://wiki.jenkins.io/display/JENKINS/Confluence+Publisher+Plugin#space-menu-link-content demo.pdf
注意:从技术上讲,Google
我正在尝试设置一个变量作为sqlplus语句的登录信息:
#!/bin/ksh
DB_AUTH=`cat $BASEDIR/src/env/.$1`@$2
export DB_AUTH
echo DB_AUTH=$DB_AUTH
sqlplus -s $DB_AUTH <<ENDOFSQL...(sql statement)
#/bin/ksh
DB_AUTH=`cat$BASEDIR/src/env/$1`@$2
导出DB_AUTH
echo
我有下面的字符串格式,我只想从下面的字符串中得到第二个数值
输入(jq的输出):
"Test Result: 21 tests failing out of a total of 5,670 tests."
5,670
215670
预期输出:
"Test Result: 21 tests failing out of a total of 5,670 tests."
5,670
215670
我使用了下面的命令,但它返回了所有数值,无法获取第二个数值
echo "$getTotal
在开始滚动此脚本生成的视频之前,我需要在第一帧上暂停2秒:
ffmpeg -f lavfi -i color=s=1200x1200 -loop 1 -t 0.08 -i cut.png -filter_complex "[1:v]scale=1200:-2,setpts=if(eq(N\,0)\,0\,1+1/0.02/TB),fps=30[fg]; [0:v][fg]overlay=y=-'t*h*0.01':eof_action=endall[v]" -map "[v]" output.m
我一直在尝试这样做:
dune runtest > test.txt
但是,每当我尝试此操作时,都会创建一个空的test.txt文件。我希望dune runtest的输出保存到test.txt中,理想情况下终端不输出任何内容(输出只能在文件中查看)。任何帮助都将不胜感激 dune runtest最有可能写入stderr,而只会重定向stdout
要仅重定向stderr:
dune runtest 2> test.txt
dune runtest > test.txt 2&a
我正在做一个关于GUI的演示,但我无法找到显示服务器协议的确切功能。
你能回答我的“简单”问题吗
更准确地说,对这张图的解释会有所帮助
1 2 3 4 5 6 ...
下一页 最后一页 共 430 页