大家好,这是我最近第一次尝试进入Python的文件和操作系统部分。我正在尝试搜索一个目录然后找到所有子目录。如果该目录没有文件夹,则将所有文件添加到列表中。并通过听写来组织它们。
例如,一棵树可能看起来像这样
即使 subsubdir 中有文件,也应该跳过它,因为它有文件夹。
现在,如果我知道要查找多少个目录,则通常可以使用 os.listdir 和 os.path.isdir 来执行此操作。但是,如果我希望它是动态的,则必须补偿任意数量的文件夹和子文件夹。我尝试过使用 os.walk,它会轻松找到所有文件。我遇到的唯一麻烦是使用包含文件的路径名创建所有字典。我需要按 dict 组织的文件夹名称,直到起始路径。
所以最后,使用上面的示例,字典及其中的文件应该如下所示:
dict['dir1']['subdir3']['subsubdir']['folder1'] = ['file1.jpg', 'file2.jpg']
dict['dir1']['subdir3']['subsubdir']['folder2'] = ['file3.jpg', 'file4.jpg']
Run Code Online (Sandbox Code Playgroud)
如果您对此有任何帮助或组织信息的更好想法,我们将不胜感激。谢谢。
所以这是一个简单的问题,其答案已证明难以捉摸。我最近安装了一个文件夹,我需要向其中添加一些文件。该文件夹存储在“opt”文件夹中,我认为它很简单:
我的用户名 ~/opt/文件夹名
但我似乎找不到“选择”。我可以在 Finder 中查看文件,但我需要创建一些文件,我宁愿在命令行上执行此操作。任何人都可以给我一些访问它的提示吗?
我已经使用dir.createfunction创建了一个文件夹,但是当我尝试使用unlinkfunction删除它时,我没有成功。我该如何克服这个问题?这是我的玩具代码:
NewFolder<-dir.create("C://TestFolder")
unlink(NewFolder, recursive = T)
Run Code Online (Sandbox Code Playgroud) 我目前正在使用以下功能:
public function recentImages(){
foreach(\File::allFiles("up") as $path){
$files[] = pathinfo($path);
}
return view('recent-images-view')->with('files',$files);
}
Run Code Online (Sandbox Code Playgroud)
要列出我上传文件夹中的所有图像,但这还包括在名为“thumbs”的单独文件夹中分隔的缩略图。
我想知道是否有任何方法可以告诉 allFiles 函数排除名称为拇指的文件夹。或者我应该完全不同地处理这个?
感谢您提前提供任何信息。
我正在寻找一个 python 脚本,它将在当前目录中找到一个现有文件的确切文件名,该文件名将运行该 python 脚本,可以增量命名。
例如,文件可能是:
file1.dat
file2.dat
file3.dat
....
所以我们知道文件名以前缀开头,file我们知道它以 sufix 结尾.dat。
但是,我们不知道它是否会file1.dat还是file1000.dat什么的插图中。
所以我需要一个脚本来检查1-1000从file1.dat到的所有文件名的范围file1000.dat,如果它找到目录中确实存在的文件名,它会返回一条成功消息。
#!/usr/bin/python
import os, sys
# Open a file
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )
# Now get the touple
info = os.fstat(fd)
print "File Info :", info
# Now get uid of the file
print "UID of the file :%d" % info.st_uid
# Now get gid of the file
print "GID of the file :%d" % info.st_gid
# Close opened file
os.close( fd)
Run Code Online (Sandbox Code Playgroud) 我是 bash 的新手,我想知道如何从路径打印最后一个文件夹名称。
mypath="/Users/ckull/Desktop/Winchester stuff/a b c/some other folder/"
dir="$(basename $mypath)"
echo "looking in $dir"
Run Code Online (Sandbox Code Playgroud)
其中dir是路径中的最后一个目录。它应该打印为
some other folder
Run Code Online (Sandbox Code Playgroud)
相反,我得到:
Winchester
stuff
a
b
c
some
other
folder
Run Code Online (Sandbox Code Playgroud)
我知道空格会导致问题;) 我是否需要将结果通过管道传输到字符串然后替换换行符?或者也许有更好的方法......
我已经看到如何在 Java 中返回文件夹的大小:获取文件夹或文件的大小,但我在 Kotlin 中找不到它。
如何在 Kotlin 中获取文件夹的大小?
我正在尝试在我的 perl 脚本中执行 cd。我正在使用以下命令:
chdir "/home/test/test1/test2/perl*";
Run Code Online (Sandbox Code Playgroud)
perl*值实际上是perl_0122_2044,但这个值可能会有所不同。
上面的chdir命令cd对路径没有作用。难道我做错了什么?