• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

linux:for while 循环,2分钟

武飞扬头像
诸葛靓的文案
帮助1

for 循环和 while 循环都是编程中常用的控制结构,用于多次执行一段代码块。它们在语法和用法上有些差异,下面我将分别介绍一下如何使用 for 循环和 while 循环。

for 循环

for 循环适用于已知循环次数的情况,你可以指定一个计数变量和一个循环次数范围,然后在每次迭代中执行相应的操作。

语法:

for 变量 in 范围
do
    # 循环体,可以在这里编写要执行的操作
done

示例:

for i in {1..5}
do
    echo "Iteration number: $i"
done

这将输出:

Iteration number: 1
Iteration number: 2
Iteration number: 3
Iteration number: 4
Iteration number: 5

while 循环

while 循环适用于不确定循环次数的情况,你可以定义一个条件,只要条件为真,循环就会一直执行。

语法:

while 条件
do
    # 循环体,可以在这里编写要执行的操作
done

示例:

count=1
while [ $count -le 5 ]
do
    echo "Count: $count"
    count=$((count   1))
done

这将输出:

Count: 1
Count: 2
Count: 3
Count: 4
Count: 5

while 循环中,条件可以是任何返回真或假值的表达式。循环会在每次迭代时检查条件是否为真,只要条件为真,循环就会继续执行。

结合前面的命令

# 这样 直接列出 需要的文件 直接用上
ls *list|while read a
do 
  echo $a
done

多个变量的简单用法

# 一个三列的文件
cat mv_name.txt
G2      gene2
G4      gene4
G5      gene5
G6      gene6
# 两列两个变量,分别输入,也可以整成多列读取多个变量
cat vs.txt|while read a b
do
  mv $a.txt $b.txt # 批量修改文件名称
done
# 再或者 不用额外的文件 直接改
ls G*.txt|sed -e 's/G//g' -e 's/.txt//g'|while read a
do
  mv G$a.txt gene$a.txt
done
# 看懂没?
# sed -n '1p' 先看 一个的效果咋样再全部修改
ls G*.txt|sed -e 's/G//g' -e 's/.txt//g'|sed -n '1p'|while read a
do
  mv G$a.txt gene$a.txt
done

复习一哈之前的命令

这段命令是一个简单的 Shell 脚本,用于将以 "G" 开头并以 ".txt" 结尾的文件重命名。

  1. ls G*.txt:这部分命令使用 ls 命令来列出当前目录中所有以 "G" 开头并以 ".txt" 结尾的文件。
  2. sed -e 's/G//g' -e 's/.txt//g':这部分使用 sed 命令来处理输出的文件列表。第一个 -e 参数表示执行第一个替换操作,将文件名中的所有 "G" 替换为空字符串,即删除 "G"。第二个 -e 参数表示执行第二个替换操作,将文件名中的 ".txt" 替换为空字符串,即删除 ".txt"。这样,我们得到的是没有 "G" 和 ".txt" 的纯文件名列表。
  3. sed -n '1p':这部分使用 sed 命令来提取处理后的文件名列表中的第一行。参数 -n 表示只输出经过处理的内容,'1p' 表示输出第一行。
  4. while read a:这部分使用 while 循环来逐行读取前面处理的第一行内容,并将内容赋值给变量 a
  5. do:循环的开始,表示接下来要执行的操作。
  6. mv G$a.txt gene$a.txt:这部分使用 mv 命令将原始文件名 "Ga.txt"重命名为新文件名"genea.txt" 重命名为新文件名 "genea.txt"。这里的 $a 是前面 while 循环读取的文件名的内容。
  7. done:循环结束,表示循环体的结束。

无论是 for 循环还是 while 循环,都需要确保循环中的操作能够在某个条件下终止,以防止无限循环。在编写循环时,请确保适当地更新计数变量或条件,以确保循环会在合适的时机终止。

下期预告

得,还是画图的数据好,先整R语言画图的吧!大噶可以留言想要看的内容呀!

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgbbfbb
系列文章
更多 icon
同类精品
更多 icon
继续加载