ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Shell获取某个文件夹下的所有文件名(含文件夹)

2021-12-08 17:33:10  阅读:154  来源: 互联网

标签:bin Shell temp 文件名 echo 文件夹 file Folder


1. 获取某个文件夹下的所有文件名(含文件夹),并显示

#!/bin/sh 
#============ get the file name =========== 
Folder_A="/home/youname/shell/gotfilename/bin" 
for file_a in ${Folder_A}/*
do 
temp_file=`basename $file_a` 
echo $temp_file 
done

2、若要去掉文件名的后缀(假如该文件夹下的所有文件为.txt格式),则代码为

#!/bin/sh 
#============ get the file name =========== 
Folder_A="/home/youname/shell/gotfilename/bin" 
for file_a in ${Folder_A}/*
do 
temp_file=`basename $file_a .txt` 
echo $temp_file 
done

3、如果要输出到一个文件的话也可以重定向到一个文件中去

#!/bin/sh 
#============ get the file name =========== 
Folder_A="/home/Neo/shell/gotfilename/bin" 
Output_file="output.txt" 
#这里用于清空原本的输出文件,感觉 : 这个符号用处挺大,shell的学习还是要多用才是 
: > $Output_file 
for file_a in ${Folder_A}/*
do 
temp_file=`basename $file_a` 
echo $temp_file >> $Output_file 
done

4、增加了交互性

#!/bin/sh 
#============ get the file name =========== 
echo -e "请输入你要读取的文件夹路径\n当前路径为${PWD}" 
read InputDir 
echo "你输入的文件夹路径为${InputDir}" 
echo -e "请输入你要将数据输出保存的文件路径n当前路径为${PWD}" 
read OutputFile 
echo "输出保存的文件路径为${OutputFile}" 
: > $OutputFile #清空OutputFile 
#循环读取文件夹名 
for file_a in ${InputDir}/*
do 
temp_file=`basename $file_a` 
echo $temp_file >> $OutputFile 
done

 

标签:bin,Shell,temp,文件名,echo,文件夹,file,Folder
来源: https://www.cnblogs.com/szrs/p/15662707.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有