我有一个文件夹,里面有一些目录和一些文件(有些是隐藏的,以点开头)。
for d in *; do
echo $d
done
Run Code Online (Sandbox Code Playgroud)
将遍历所有文件和目录,但我只想遍历目录。我怎么做?
如何在 bash 脚本中获取文件的大小?
我如何将它分配给一个 bash 变量,以便我以后可以使用它?
我试图找到rm -rf一个文件夹,并得到“设备或资源繁忙”。
在 Windows 中,我会使用 LockHunter 来解决这个问题。什么是 linux 等价物?(请给出一个简单的“解锁此”方法作为答案,而不是像这样的完整文章。虽然它们很有用,但我目前只对 ASimpleMethodThatWorks™ 感兴趣)
一些编译器(尤其是 C 或 C++ 编译器)会发出以下警告:
No new line at end of file
Run Code Online (Sandbox Code Playgroud)
我以为这只是 C 程序员的问题,但 github 在提交视图中显示了一条消息:
\ No newline at end of file
Run Code Online (Sandbox Code Playgroud)
对于 PHP 文件。
我理解这个线程中解释的预处理器的事情,但这与 PHP 有什么关系?它是同一include()件事还是与\r\nvs\n主题有关?
在文件末尾换行有什么意义?
我知道从文件中删除所有条目的三种方法。
他们是
>filenametouch filename1filename < /dev/null在这三个中,我滥用>filename最多,因为它需要最少的击键次数。
但是,我想知道就大日志文件和小文件而言,这三个中哪个最有效(如果有更有效的方法)。
另外,这三个代码是如何操作和删除内容的?
1编辑:正如在这个答案中所讨论的,这实际上并没有清除文件!
我想使用 gzip 命令行工具压缩文本文件,同时保留原始文件。默认运行以下命令
gzip file.txt
Run Code Online (Sandbox Code Playgroud)
导致修改此文件并重命名它file.txt.gz。而不是这种行为,除了现有的file.txt. 现在我使用以下命令来做到这一点
gzip -c file.txt > file.txt.gz
Run Code Online (Sandbox Code Playgroud)
它有效,但我想知道为什么没有更简单的解决方案来完成如此常见的任务?也许我错过了这样做的选择?
我们有一个文件夹变得笨重的问题,其中包含数十万个小文件。
执行rm -rf返回错误的文件太多了,而我们需要做的是:
find /path/to/folder -name "filenamestart*" -type f -exec rm -f {} \;
这有效,但速度非常慢,并且经常因内存不足而失败。
有一个更好的方法吗?理想情况下,我想删除整个目录而不关心其中的内容。
可能的重复:
如何执行 ls 然后按创建日期对结果进行排序?
Linux 中是否有显示文件创建时间的命令?我看到ls -l给出了上次修改时间,但是我可以获得创建的时间/日期吗?

你能告诉我标红的区域是什么吗?
如果我想更改/media/files/tb-prod/files为其他路径,我该怎么做?
files ×10
bash ×2
command-line ×2
linux ×2
directory ×1
gzip ×1
lock ×1
ls ×1
newlines ×1
rm ×1
shell ×1
shell-script ×1
symlink ×1
timestamps ×1
truncate ×1