我有一个脚本,它根据输入用一个变量替换另一个值: #!/bin/bash
prompt()
{
while true; do
read -p "Do you wish to install this program? " "ANSWER"
case "$ANSWER" in
[Yy]* ) printf -v "$1" %s "true"; break;;
[Nn]* ) printf -v "$1" %s
在下面的代码中,我不确定为什么会收到警告:当我在for循环中注释printf(“");语句时,iteration 5u调用未定义的behavior -warning loop -optimizations。printf语句如何导致此警告?
其次,这段代码会进入无限循环。当进入while循环时,我知道数组索引超出了限制。但是当I变为负值时,while循环应该已经终止。但这是不可能的。如果i--是在进入while循环之前完成的,则没有问题。如果索引越界了,我应该只是得到正确的垃圾结果。但是为什么没完没了!
int main (void)
{
int a[]={4,6,8,2,7};
您好,我的代码只运行一次,然后就停止了。我希望它是无穷大的。请帮帮忙。
#!/bin/bash
while true
do
read -p "make a choice (order/quit) " order
case $order in
order ) break;;
quit ) exit;;
* ) echo "is not a valid."; exec bash "$0";
esac
done
read -p " you
我的脚本正在进行中显示一个多列彩色表,但颜色代码干扰了格式化。颜色代码不能移动到格式字符串,因为某些列的颜色是可变的。在相关的问答中没有给出任何解决方案(引用如下)。我已经提供了削减的例子和工作周围的下文。
我实际使用的是一个bash脚本,它显示了一个具有不同颜色的不同列的11列表,这些表是在循环遍历一串jpg文件、分析各种exif数据并将结果作为表中的一行输出时生成的,根据exif分析结果,有些颜色也随行而异。
但正如我所说,我已经提供了削减的例子工作-周围的以下。
下面是一个简单的显示表片段,它演示了这个问题:
# RedBlk defined in .bashrc.local as Re
程序应该读取输入的数字,并确定它们是偶数还是奇数。然后,它需要显示奇数和偶数,以及输入的平均数。当输入0时,它将停止。
我的问题是它在输入第一个号码后就挂起了。
#include "stdio.h"
int main(void)
{
int oddcount = 0, evencount = 0; /* Count of even and odd numbers. */
int number;
float avge = 0, avgo = 0; /* Average for even and odd numbers. */
int
我有一个小脚本,它从文本文件中读取行并将它们存储在数组中。
#!/bin/bash
while read line
do
array+=("$line")
done < $1
for ((i=0; i < ${#array[*]}; i++))
do
echo "${array[i]}"
done
下面是我的文本文件中的行,它们是在我运行脚本之后打印出来的:
This is line1 of file1 with 10 words.
This is line2 of file2 with 100 words.
This is l
我试图找到与特定模式相匹配的所有变量,并打印它们的值。
test_a="apple"
test_b="banana"
test_c="carrot"
test_d="doughnut"
test_show_all () {
local i
for i in ${!test_*}; do
printf "..$i\n"
# printf "..$i-->${$i}\n"
done
}
循环是找到正确的变量。但是,如果我取消注释for循
这是我的程序,我得到了一些我不理解的语法错误。这是我的main,它将接受我的函数数据:
int main() //main program
{
float num1, num2, total;
printf("Enter first number: ");
scanf("%f", &num1);
printf("Enter Second number: ");
scanf("%f", & num2);
total = multiNumbers(num1, num
这两个命令具有相同的结果是有意义的:
$ if 1; then printf "success\n"; else printf "failure\n"; fi
-bash: 1: command not found
failure
$ if $(printf 1); then printf "success\n"; else printf "failure\n"; fi
-bash: 1: command not found
failure
因为$(printf "1")正在打印1,然后在if中执行1。
然而,考
我注意到,OSx和Linux之间的printf内置似乎不一样。我的印象是内建物就是内建物。这与我正在处理的任何具体问题无关。我就是解释不了。
OSx
printf '%(+%s)T\n' -2
-bash: printf: `(': invalid format character
which printf
printf is a shell builtin
printf is /usr/bin/printf
Linux
printf '%(+%s)T\n' -2
+1431027100
which printf
printf is a shel
我已经做了一个脚本,要求你要一个字符串,然后你需要从一个列表中选择一个数字,如果你真的选择了一个数字,程序会打印这个字符串,但是用一个样式和你需要写的东西来将你选择的样式应用到字符串中(下面的代码)有什么方法可以缩短这个字符串吗?(特别是if和elif语句)
#!/bin/bash
clear
echo "Hello, who am I talking to?"
# Get string from user input
read -p 'String: ' string
echo $string
echo "Please select a modifie
我必须写一个C程序,它要求用户输入一个字符串,它返回每个字母在字符串中出现的次数(即。A出现3次)。例如,如果用户输入以下字符串: Hello 它应该返回以下内容 a or A appears 0 times
b or B appears 0 times
c or C appears 0 times
d or D appears 0 times
e or E appears 1 times
(it does this for the whole alphabet) 代码: #include<stdio.h>
#include<stdlib.h>
#define
首先,我想警告你,这里有很多代码!我希望客户端通过OpenSSL库使用RSA连接到服务器。当我启动服务器时,一切正常,但是当我尝试与客户端连接时,连接失败,错误为: error 1408A0C1: SSL routines:SSL3_GET_CLIENT_HELLO:no shared cipher。谢谢你的考虑,但我必须再次警告你,这里有很多代码。如果您感兴趣,我正在创建一个到受RSA保护的Java小程序的TCP连接。这不是我的程序,我发现它在网上乱七八糟。如果你能在评论中添加你自己的简单源码,我将不胜感激!
// THIS IS THE CLIENT FOR THE CONNECTI
我需要将关联数组的内容打印到bash中的一个文件中。控制台输出打印工作正常,但当我尝试将其打印到文件时,只有一个元素被打印出来。这是我的密码
for KEY in "${!SYMBOLICLINK[@]}"; do
printf "$KEY --> ${SYMBOLICLINK[$KEY]}" > /tmp/symlinks.txt
# Print the KEY value
echo " $KEY --> ${SYMBOLICLINK[$KEY]}"
done
有人能告诉我我在这
如何从bash中的键盘查找用户输入?我在想这样能行,
int b;
scanf("%d", &b);
但上面写着
-bash: /-bash/name/.-bash_profile:第17行:"%d",'
-bash: /Users/[name]/.bash\_profile: line 17:扫描意外令牌附近的语法错误(“%d”&b)
编辑
backdoor() {
printf "\nAccess backdoor Mr. Fletcher?\n\n"
read -r b
if (( b ==
我有一个大约250万个文件的目录,超过70 GB。
我想把它分成子目录,每个子目录中都有1000个文件。
下面是我尝试使用的命令:
i=0; for f in *; do d=dir_$(printf %03d $((i/1000+1))); mkdir -p $d; mv "$f" $d; let i++; done
该命令在小范围内适用于我,但我可以让它在这个目录下运行几个小时,而且它似乎什么也不做。
我可以通过命令行以任何方式完成这一任务: perl、python等。
我试图使用Python来捕获这个编译后的C程序的输出:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main() {
srand(time(NULL));
do {
int r = rand();
printf("%s\t%d\n", "my.key", r);
usleep(100000);
} while ( 1 );
}
如果我运行以下代码,我会看到我的二进制文件与我的python输出交织在一起的输出,正如我所
我正在尝试编写一个小脚本,它将获取一个文件的第四列,并将其存储在一个数组中,然后进行一些比较。如果数组中的元素大于0,小于500,则必须增加计数器。但是,当我运行脚本时,计数器总是显示0。这是我的剧本
#!/bin/bash
mapfile -t my_array < <(cat file1.txt | awk '{ print $4 }' > test.txt)
COUNTER=0
for i in ${my_array[@]}; do
if [["${my_array[$i]}" -gt 0 -a "${my_array[$i]}&
如何找到一个目录及其子目录中的所有零字节文件?
我已经这样做了:
#!/bin/bash
lns=`vdir -R *.* $dir| awk '{print $8"\t"$5}'`
temp=""
for file in $lns; do
if test $file = "0"; then
printf $temp"\t"$file"\n"
fi
temp=$file
done
但是,我只能在当前目录中获得结果,而不是子目录,并且如果任何文件名包含空格,那么