我在练习中遇到了一些问题。当我使用数字作为变量输入 (1="$variable") 通过文件传递参数时,每次使用变量 1 时都会收到以下错误消息:
"cancella_versioni_preliminari.sh: 27: cancella_versioni_preliminari.sh: 1=Prova: not found"
但是文件工作正常。如果我将数字作为变量输入放入命令中"read"
,也会遇到一些问题,例如:(读取 1)。
顺便说一下,这里有两个文件的截图:
(练习应该打开输入传递的一个目录(以及其中的所有目录,递归地)并找到第一行带有单词“preliminari”的所有 .txt 文件,然后删除它们。最后,程序在屏幕上打印哪个目录包含大量带有该词的文件。)
感谢您的帮助!
答案1
$1
您不能通过正常赋值来赋值。您可以使用set
来初始化位置参数:
set -- one two three
它设置$1
为one
、$2
到two
和$3
到three
。