下面的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
我正在为linux创建一个具有恢复功能的回收站。到目前为止,我有一个脚本可以成功地将文件移动到回收站,但是我的恢复脚本不起作用。
恢复脚本的目的是提示用户输入一个目录,然后将所选文件从回收站移动到该目录。然而,当我运行脚本时,我遇到了一个错误,带有“意外的令牌;fi”或我试图用来结束文件的任何令牌。任何人都能看到我的脚本中的错误吗?
#!/bin/bash
#Changes directory to location of recycle bin
while read -r filename
echo "Where would you like the file to be rest
我在BASH (linux) shell脚本中有这个脚本,它可以自动将所有*.jar文件添加到类路径中。有没有办法做窗口中的批处理文件,或者我必须手动添加所有的文件?
CLASSPATH=.
for file in ./libs/*.jar; do
CLASSPATH=$CLASSPATH:$file
done
谢谢!
下面是一个名为wrapper.sh的bash脚本:
#!/bin/bash
data="ZAA:huhu;ZBB:blub;___uname" # actually coming from a Python script
i=1 # counter
while true ; do # loop infinitely
segment=$(echo $data | cut -d ';' -f$i)
if [ -z "$segment" ] ; then # is segment empty?
break
f
我不是Linux脚本专家,在这件事上我已经用尽了我的知识。这是我的情况。
我有一个作为命令行参数传递给shell脚本的状态列表(例如"AL,AK,AS,AZ,AR,CA...“)。Shell脚本需要提取每个州代码并将其写入一个文件( states.txt),每个州在一行中。见下文
AL
AK
AS
AZ
AR
CA
..
..
如何使用linux shell脚本实现这一点。
提前谢谢。
我有一个bash脚本,在这个脚本中我安装了一个ISO来循环设备:
mount -o loop my.iso /tmp/foo
同时,在我的操作系统(Linux 19)中,我使用GUI选项安装了一个ISO映像。
所以我得到了错误
山: /tmp/foo: /dev/loop0 0 ya estámontado o el punto de montaje estáocupado。
(...loop0挂载点忙.)
问题:
我是否可以选择可以挂载ISO的循环,比如:
mount - loop3 my.iso /tmp/foo
所以我不需要加入以前的ISO了?
我不习惯编写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
我们有一个运行两个程序的RHEL Linux服务器,它们的备份被复制到另一个运行Ubuntu Linux的服务器上。在cron作业中运行了一个"cleanup“脚本,该脚本应该删除这些超过10天的备份,但它不起作用。事实上,我无法让它工作,甚至手动运行它。脚本如下-
#!/bin/bash
# bash shell script to cleanup jira backup files
# The script will remove files that are 10 days or older
#
# Remove jira backup files
for FILE in `f
我如何才能完成脚本?
Linux版本3.10.0-957.21.3.el7.x86_64。(Red Hat 4.8.5-36)
#!/bin/bash
echo "Enter the file name"
read x
if [ -f $x ]
then
echo "This is a regular file"
else
echo "This is a directory"
fi
需要修改脚本,该脚本将输出/etc/目录中的所有文件和目录,并指明哪个是什么(例如:
dir1 is a directory
fileA is a f
我有一个针对文件运行的脚本,它接受用户的参数,并通过grep和awk发送以获得所需的列。它将返回多行。我想要做的是通过grep\awk的输出读取(或类似的东西),并通过另一个脚本(./lookup)运行它。我的问题是如何循环每一行,并通过脚本中的脚本运行该行上的内容。希望这是有意义的,我对脚本和linux还不熟悉。
#!/bin/sh
x=$(grep "$*" "$c"|awk '{print $6}')
while read LINE
do
./lookup $x
done
这似乎是可行的,但只适用于输出的第一行。它还要求我按enter
我见过监控程序在脚本中定期使用'ps‘或'service status (在Linux上)’检查进程状态,或者在C/C++中使用分叉并等待进程.
我想知道是否可以在SIGCLD接收到时使用bash和陷阱并重新启动子进程?
我已经用以下的想法在RedHat Linux上测试了一个基本套件(当然它不起作用.)
#!/bin/bash
set -o monitor # can someone explain this? discussion on Internet say this is needed
trap startProcess SIGCHLD
startProcess()
关于linux bash脚本中的for循环,我有一个小问题。
我有一个包含10000个文件的文件夹。我编写了for循环来列出10000中的100个文件。
For a in ~/Desktop/folder/*.txt
Do
Echo $a
Done
但是,我需要列出文件夹中最大的100个文件,而不是根据字母表列出前100个文件。
我在编程和使用Linux命令方面非常新手,以帮助我理解命令和脚本,但我正在创建的脚本给了我一个回显语法错误,我在挠头,为什么它会给我这个错误。整个脚本要求输入一个范围内的数字,读取键盘输入,然后循环,直到输入正确的数字。还会告诉用户他们的每个猜测都是对的或错的。
我不知道脚本是否会正确运行,脚本中还有什么是错误的,所以给我反馈,并告诉我如何解决这个问题。提前谢谢。
#!/bin/bash
loop=y
for i in $(seq 10)
echo Please pick a number between 1 and 10.
Read varnumber
echo you entered: $
我目前正在学习Linux,作为家庭作业,我们必须创建一些基本的shell脚本。没什么特别复杂的,但这次让我头疼。这是我的密码:
until [ "$toPrint" == 'fin' ]
do
echo "Enter file name to print out :" ; read toPrint
sh ./afficher.sh "$toPrint"
done
基本上,我有一个名为afficher.sh的脚本(我是法语,所以不介意使用的法语语言),它读取作为参数的任何文件名。然而,当我输入