linux遍历文件夹
你可以参考如下实例代码:
functiongetFile(file_name)
localf=assert(io.open(file_name,'r'))
localstring=f:read("*all")
f:close()
returnstring
endfunctionwriteFile(file_name,string)
localf=assert(io.open(file_name,'w'))
f:write(string)
f:close()
end--从命令行获取参数,如果有参数则遍历指定目录,没有参数遍历当前目录ifarg[1]~=nilthen
cmd="ls"..arg[1]
else
cmd="ls"endprint("cmd",cmd)
--io.popen返回的是一个FILE,跟c里面的popen一样locals=io.popen(cmd)
localfileLists=s:read("*all")
print(fileLists)
whiletruedo--从文件列表里一行一行的获取文件名_,end_pos,line=string.find(fileLists,"([^ ]+.txt)",start_pos)
ifnotend_posthenbreakend--print("wld",line)localstr=getFile(line)
--把每一行的末尾1,替换为0,localnew=string.gsub(str,"1, ","0, ");
--替换后的字符串写入到文件。以前的内容会清空writeFile(line,new)
start_pos=end_pos+1end
Ⅱ linux遍历文件夹所有文件内容linux遍历文件
Linux获取文件名称和文件路径并写入txt?
>自己写的create_filelist.sh文件,如下
1、find命令:
find后跟一个存放想要查找的文件的地址,然后后面是-name参数,其后的参数代表文件名称*.jpg就是代表所有的jpg文件了。
‘>'符号代表输出到文件,此处输出到制定的txt文件中。
2、sed命令:
-i代表直接修改读取的文件内容,而非输出到终端
引号中内容代表替换,$代表在文件最后替换,后面跟了一个空格和数字代表每行字符后加空格和数字,代表文件对应的标签序号。
linux无法读取NTFS文件格式?
CentOS用户在进行ntfs磁盘设备读取的时候,发现这类格式的驱动文件无法读取,且挂载失败,出现这个问题的主要原因是CentOS不支持ntfs格式,下面以CentOS6.4为例,介绍下CentOS6.4读取不了ntfs磁盘设备的解决方法。问题:使用的是双系统Win7和CentOS6.4。在CentOS中无法识别win7中的硬盘。但是manmount的时候,在-t参数中有ntfs的选项。但是挂载的时候总是提示出错。mount-tntfs/dev/sda1/mediamount:unknownfilesystemtype‘ntfs’经过查找得知,CentOS默认是不安装ntfs格式的文件系统的驱动文件。解决方法:我们可以安装一个ntfs-3g来让CentOS支持ntfs格式的文件系统。去下载一个最新的稳定版本的ntfs-3g。下载ntfs-3g_ntfsprogs-2013.1.13.tgz转到下载的位置,#tar-xzfntfs-3g_ntfsprogs-2013.1.13.tgz#cdntfs-3g_ntfsprogs-2013.1.13#。/configure#make#makeinstallntfs-3g但是这个的挂载方法不是,mount-tntfs/dev/sda1/media而是mount-tntfs-3g/dev/sda1/media。感觉有点怪。如果想开机启动自动挂载,可以通过/etc/fstab文件实现。首先通过fdisk-l查看所有的分区信息。/dev/sda1*1652852436128+7HPFS/NTFS/dev/sda2652916972838914307HPFS/NTFS/dev/sda31697327416838914307HPFS/NTFS/dev/sda4274173891492350464fW95Ext‘d(LBA)/dev/sda52741733791512000007HPFS/NTFS/dev//Solaris/dev/sda7349663500430720083Linux/dev/sda835004389143140198483Linux发现sda1、sda2、sda3、sda5都是ntfs,你可以根据自己的需要挂载。在/etc/fstal中挂载设备的书写格式如下。格式是设备挂载目录文件格式default00比如我现在要将/dev/sdb1挂载到/media/ntfs我们首先检查/media/ntfs,不存在新建目录,否则将会失败在/etc/fstab中添加下面内容(如果之前存在对应的挂载目录就先备份之前的文件,然后修改对应为。)/dev/sdb1/media/ntfsdefaults00保存文件,重启系统即可。
linux如何提取文件每一行生成新的文件?
通过循环读取文件每一行和重定向符>>来实现提取文件每一行生成新的文件。
unix/linux如何读取一个文件的存储权限?
unix/linux通过命令ls-a来读取一个文件的存储权限,通过命令chown来修改文件的存储权限。
linux文件执行语句内容如何获取?
定向输出到log文件中
Ⅲ linux shell 遍历文件夹 并将结果保存 到变量
#!/bin/bash
(($#<1))&&echo"paramiszero!"&&exit1
[!-d$1]&&echo"$1notpath"&&exit1
dir=$1
dir_p="$dirDirectory:"
cd$dir
dir=`pwd`
foriin`ls$dir`
do
if[-d$i];then
/tmp/sh/dir_file$i#我的脚本文件在/tmp/sh中,需要改一下这里
else
dir_p="$dir_pFile$i"
fi
done
cd..
echo$dir_p
实验结果:
[root@localhost sh]# ./dir_file /tmp/python/
python_2 Directory : File 1.log File 2.log
python_3 Directory : File 3.log
/tmp/python/ Directory : File p File t.py File y.py
这样应该可以吧,试试看