shell脚本的for
我比较认同“ssh之后是远程主机执行的命令
本地变量不起作用”这种说法
你的脚本之所以$aaa能回显,是因为在本地定义了这个变量,但本地没有定义$i这个变量,所以无法显示变量值,把aaa="u1 u2"一块塞<<ff.......ff这个内联重定向数据中去。再试试看。
⑵ 用for循环编写删除文件的shell脚本
#!/bin/bash
#2.sh
cd #进入加目录
touch 1 #创建文件1
read -p "请输入要删除的文件 1 :" file
if [ "$file" != "1" ];then
echo "请输入1 不许输入别的。谢谢!"
fi
for i in $file ;do #用for循环把$file代入$i
rm -rf $i #删除$i
echo "$i 被删除了。"
done #结束
⑶ Shell脚本中读取文件每一行的方法总结
这篇文章主要总结了在Shell脚本中循环读取文件每一行的方法。下面是两种常用的方法:使用while循环和使用for循环。
### 使用while循环
在while循环中,使用read命令从标准输入读取一行,并将内容保存到变量line中。为了确保读取的内容是原始的,避免反斜杠转义,这里使用了-r选项。通过输入重定向操作符<,可以将文件file作为read命令的标准输入,从而读取文件中的每一行。
### 使用for循环
对于使用for循环的情况,可以通过将文件内容重定向至命令的输入,然后在循环中逐行处理。具体做法是在for循环中使用read命令,同时使用-f选项,确保文件的每一行被作为单独的输入提供给read命令。这样,每执行一次循环,read命令就会读取文件中的一行,并将其内容赋值给变量。
这两种方法在实际应用中都十分常见,选择哪一种取决于具体需求和脚本的其他部分。在处理文件内容时,根据是否需要原始格式、循环次数等因素,灵活选择合适的循环结构。