我有两个脚本可以让CPU达到峰值。
infinite_loop.bash:
#!/bin/bash
while [ 1 ] ; do
# Force some computation even if it is useless to actually work the CPU
echo $((13**99)) 1>/dev/null 2>&1
done
cpu_spike.bash:
#!/bin/bash
# Either use environment variables for NUM_CPU and DURATION, or define them
我正在尝试实现一个无限循环bash脚本,用于读取文件,做一些事情并检查计数器条件,当计数器条件达到0时,它就会脱离无限循环。我尝试过几次迭代,但没有一次对我有效。伪代码就是这一行..。
#!/bin/bash
counter=10
while true
do
read host from file
ping -c 1 host > /dev/null
if [ $? -eq 0 ]
then
(($counter+1))
do_something_to_the_host
else
(($counter-1))
if [ $counter
下面的bash脚本存在简单的语法问题。我不知道用什么语法将if语句嵌套到while语句中,或者使用bash shell脚本(对于所有linux都是新的)是否可能:
#!/bin/bash
myCombo=$((RANDOM%99999+10000));
echo ${myCombo};
myCracker=00000;
while [ (($myCracker<=99999)) ]; do
if [ $myCracker -eq myCombo ]
then
echo "The combination is " ${myCracker
我如何在Bash循环中在Docker映像中永远运行PHP脚本?
我在Bash中通过CLI运行了一个PHP脚本,如下所示:
while true; do if php script.php; then sleep 1800; else sleep 10; fi; done
说明:如果出错,脚本将返回非零错误代码。如果出了什么问题,我希望这个脚本在暂停10秒后再次运行,如果没有错误并且脚本成功完成,它应该等待1800秒直到下一次运行。这一切都很好,而且和预期的一样。
我想对这个脚本进行“对接”,这样它就可以在一个“永远”的对接者映像中运行。。
对于这个脚本,我已经在Gitlab的CI/CD中使用了
我想让shell脚本无止境地等待,并认为下面的代码可以做到这一点。
#!/bin/bash
while true
do
done
但是,上面的脚本报告语法错误。
./InfiniteLoop.sh:第4行:未预料到的令牌done'
./Infinite\_Loop.sh: line 4:完成时的语法错误
与编程语言不同的是,为什么shell脚本希望循环中至少有一条语句?
在默认的shell中,下面给出的for循环
for ((i=$llimit; i<=$ulimit; i++));
do
echo $i
done;
它抛出错误“(‘不是预期的’)
但是当切换到bash外壳时
for循环工作得很好
有没有办法改变shell脚本中的shell?
或任何其他解决方案,因为这个for循环位于shell脚本中。
编辑:
这是hte shell脚本
#!/bin/bash
nav_var=`sqlplus -s tcs384160/tcs#1234 <<\EOF
set pagesize 0 feedback off verify off he
我正在尝试写一个bash脚本,询问一个人是否想要一杯茶。Y返回“太好了,我现在就去给控制台泡茶”;N在停止循环之前再返回4次“你确定”。此外,如果在4次后续报价中,用户改变主意,按‘Y’键,电脑会将“很好,我现在就泡茶”打印到控制台上。
下面的脚本会产生一个无限循环,所以我需要在代码中进行一些增量计数,而我只是不知道在哪里?这可能是一个非常基本的问题,如果是这样的话,对于Linux Bash脚本来说,任何帮助都值得赞赏:
#!bin/bash
#tea2.sh
echo "Will you have a cup of tea?"
read answer
while [ "
我正在编写一个bash脚本,它应该在循环中自动重新启动我的autofs。但是当我试图运行它时,我只会得到一个语法错误。
#./dd_nfs.sh
./dd_nfs.sh: line 3: syntax error near unexpected token `/etc/init.d/autofs'
./dd_nfs.sh: line 3: `/etc/init.d/autofs reload'
# cat dd_nfs.sh
#!/bin/bash
for i in `seq 1 10`
/etc/init.d/autofs reload
sl
在我的主目录中,我有一个名为blabs的脚本,并且我将一个文件作为参数传递给这个bash脚本,如下所示:
./blabs \home\blabs\someFileName
这将给出结果,一切都运行得很好。
现在,我希望自动执行此任务。我希望将每个文件作为参数传递给脚本。位于主directory.So中的名为2016_10_1的目录中有1000个文件。
我写了一个小片断,但它不工作properly.Can有人能帮我吗?
for i in (find /home/blabs/2016_10_1/ -type f);do "./blabs /home/blabs/2016_10_1/$i
此脚本已在安装中列出。然而,它只是挂起,什么也不做。是不是有什么问题。 我已经尝试在多台计算机上运行此脚本。 #!/bin/bash
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root"
exit 1
fi
echo "Starting FanBase 1.0"
#Replace with any message
rm -rf b
while true
do
echo $(head /dev/urandom | tr -dc A-Za-z0-9 | head
我想让这个脚本在我写q之前重复somescript.sh。我想我已经非常接近了,但是如果它读到"q“,我不能让它设置为0,我在这里做错了什么?
#!/bin/bash
$actionLoop = 1
while [ ${actionLoop} 1 ]
do
echo "do another random review script?"
sh /somescript.sh
echo "Done. Press q to quit."
read response
do
{
print"CHOOSE ANY OF THE FOLLOWING OPTIONS:\n";
print"==========================================\n";
print"1-LOGIN & LOGOUT\n";
print"2-MAKE CALL\n";
print"3-EXIT\n";
print"==========================================\n";
我正在编写一个脚本,其中包含一个用于创建新用户的函数,该函数需要作为root运行才能工作,但当我运行脚本时,我的脚本如下:
sudo ./sample.sh
它引发以下错误:
./sample: 3:语法错误:"(“意外”)
但是当我在没有sudo的情况下运行它时,我得到了这个输出:
-
-
useradd: Permission denied.
useradd: cannot lock /etc/passwd; try again later.
chage: user 'yt' does not exist in /etc/passwd
chage: user &
我不习惯编写Bash脚本,Google也没有帮助找出这个脚本的错误所在:
#!/bin/bash
while read myline
do
done
echo "Hello"
while read line
do
done
exit 0
我得到的输出是:
./basic.agi: line 4: syntax error near unexpected token 'done'
./basic.agi: line 4: 'done'
我的bash版本是:
GNU bash, version 3.2.25(1)-release (i686-re
我正在尝试创建一个简单的bash脚本。(刚刚开始编写bash脚本)脚本很简单。rsyslog服务存在问题,有时会死机。我正在尝试编写一个脚本来检查服务是否死机,然后重新启动它,直到现在,我想检查我的条件是否正常,但似乎得到了一个错误。你能给我一些建议吗?
下面是脚本:
#!/bin/bash
a="dead"
b="running"
while i in $(/etc/init.d/rsyslog status | grep -o 'running\|dead');
do
if
[ "$a" == "$i" ];
我的问题真的很简单,但是自从我上次读bash脚本已经太久了,所以我不能再理解bash了……
我有一个文件夹(名称包含空格),它有x个子文件夹。现在,我想将每个子文件夹压缩到自己的zip归档中。
下面的脚本是我所拥有的:
#!/bin/bash
cd $1
for folder in $1/* do
zip -r "${folder%/}" "${folder%/}"
done
每次我尝试用./test.sh .来执行它时,我只需要
./test.sh: line 4: syntax error near unexpected token `zip'
./
我有一个Dockerfile,它意味着使用script1,如下所示:
# Pull from Debian
FROM debian
# Update apt and install dependencies
RUN apt update
RUN apt -y upgrade
RUN apt -y install wget curl
# Download script1.sh
RUN wget -O ./script1.sh https://example.com
# Make script1.sh executable
RUN chmod +x ./script1
当我想看的文件夹中没有任何写活动时,我正试图想出一种很好且简单的方法来检测。
基本上,我想要的是这样的:
#!/bin/sh
# colored red text (error)
function errorMsg () {
echo '\033[0;31m'"$1"'\033[0m'
}
# check for folder to monitor argument
if [ "$#" -ne 1 ]
then
errorMsg "add experiment (folder) to monitor for a