在Linux中,for循环是一种常用的控制结构,用于Shell脚本中重复执行一系列命令,以下是一些常见的for循环案例及其输出:
1、遍历文件列表

(图片来源网络,侵删)
代码:
#!/bin/bash
for file in /path/to/directory/*
do
echo $file
done 输出:目录/path/to/directory下所有文件的路径。
2、遍历数字列表
代码:
#!/bin/bash
for i in {1..10}
do
echo $i
done 输出:从1到10的数字,每个数字占一行。

(图片来源网络,侵删)
3、遍历命令输出
代码:
#!/bin/bash
for user in $(cat /etc/passwd | awk -F ':' '{print $1}')
do
echo $user
done 输出:系统上所有用户的用户名,每行一个用户名。
4、多重循环
代码:

(图片来源网络,侵删)
#!/bin/bash
for i in {1..5}
do
for j in {1..3}
do
echo "$i,$j"
done
done 输出:组合输出1到5和1到3的所有数字对,如“1,1”、“1,2”等。
5、输出1到100之间所有质数的和
代码:
#!/bin/bash
sum=0
for i in {2..100}
do
is_prime=1
for ((j=2; j<i; j++))
do
if [ $((i % j)) -eq 0 ]
then
is_prime=0
break
fi
done
if [ $is_prime -eq 1 ]
then
sum=$((sum + i))
fi
done
echo "The sum of prime numbers from 1 to 100 is: $sum" 输出:1到100之间所有质数的和。
6、打印给定目录下的文件数
代码:
#!/bin/bash
dir="/path/to/directory"
count=0
for file in $dir/*
do
if [ -f $file ]
then
count=$((count + 1))
fi
done
echo "The number of files in $dir is: $count" 输出:指定目录下的文件数量。
7、批量修改文件名
代码:
#!/bin/bash
for file in *.txt
do
mv "$file" "${file/abc/def}"
done 输出:将当前目录下所有的.txt文件名中的“abc”替换成“def”。
8、批量复制文件
代码:
#!/bin/bash
for file in *.txt
do
cp "$file" /tmp/
done 输出:将当前目录下所有的.txt文件复制到/tmp目录下。
9、批量压缩文件
代码:
#!/bin/bash
for file in *.txt
do
tar czf "${file}.tar.gz" "$file"
done 输出:将当前目录下所有的.txt文件压缩成.tar.gz格式。
10、批量解压文件
代码:
#!/bin/bash
for file in *.tar.gz
do
tar xzf "$file" -C /tmp/
done 输出:将当前目录下所有的.tar.gz文件解压到/tmp目录下。
11、批量部署应用
代码:
#!/bin/bash
apps=(app1 app2 app3 app4 app5)
for app in "${apps[@]}"
do
mkdir "/var/www/${app}"
cp -r "/tmp/${app}"/* "/var/www/${app}/"
done 输出:将多个应用部署到不同的目录下。
这些示例展示了for循环在Linux Shell脚本中的多种用法,通过灵活运用for循环,可以简化重复任务,提高工作效率。
以上就是关于“linux for循环 输出”的问题,朋友们可以点击主页了解更多内容,希望可以够帮助大家!
本文来源于互联网,如若侵权,请联系管理员删除,本文链接:https://www.9969.net/77013.html