学习Perl有shell脚本知识-需要帮助
我有 shell 脚本知识。 我编写了一个小型 shell 脚本,它将采用一个参数。 在这个论点的帮助下。
文件名格式为 axeA10_
我的脚本只获取当前目录中的所有文件并更改序列号。 这样我就有了带有序列号的文件。 编写此脚本的需要是我没有带有序列号的文件,因为某些序列丢失了。
我知道 perl 可以更快地完成此类任务。所以我想学习同样的知识。 任何人都可以将这个小 shell 脚本转换为 perl
。这确实会增强我学习 perl
的信心。提前谢谢。下面是运行良好的脚本。
#!/bin/ksh
counter=1
for i in ${1}*.DAT
do
if [ $counter -lt 10 ]
then
new_name=`echo "$i"|awk -vcount=$counter 'BEGIN{FS="_";OFS="_"}{$3=count}{print $1"_"$2"_0"$3".DAT"}'`
else
new_name=`echo "$i"|awk -vcount=$counter 'BEGIN{FS="_";OFS="_"}{$3=count}{print $0".DAT"}'`
fi
mv $i $new_name
counter=$(($counter+1))
done
exit
I have shell scripting knowledge.
I have written a small shell script which will take a single argument.
with the help of that argument.
the file name format is axeA10_<date_time_stamp>_<sequence_number>.DAT
my script just takes all the files in the current directory and changes the sequence number.
so that i have the files with sequence numbers.
the need to write this script is that i dont have the files with the sequence number as some of the sequences are missing.
I know that perl
can be more fast in doing this kind of tasks.And so i want to learn the same.
Can anyone convert this small shell script to perl
.this would really boost my confidence in learning perl
.Thanks in advance.Below is the script which works fine.
#!/bin/ksh
counter=1
for i in ${1}*.DAT
do
if [ $counter -lt 10 ]
then
new_name=`echo "$i"|awk -vcount=$counter 'BEGIN{FS="_";OFS="_"}{$3=count}{print $1"_"$2"_0"$3".DAT"}'`
else
new_name=`echo "$i"|awk -vcount=$counter 'BEGIN{FS="_";OFS="_"}{$3=count}{print $0".DAT"}'`
fi
mv $i $new_name
counter=$(($counter+1))
done
exit
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
“任何人都可以将这个小 shell 脚本转换为 perl。这确实会增强我学习 perl 的信心。”
有人为你这样做会如何增强你的信心?
访问以下 URL
http://learn.perl.org/
"Can anyone convert this small shell script to perl.this would really boost my confidence in learning perl."
How would someone doing this for you boost your confidence?
Visit the following URL
http://learn.perl.org/