标签: ls

如何递归显示文件内容?

我总是必须在打印的作业报告中提交源代码。我必须将我的课程代码复制并粘贴到文档中,我发现这是一项烦人的任务。

我想解决这个“复制和粘贴”问题。因此,我是这样做的cat,但它仅适用于当前目录。我希望它可以递归显示文件内容。

ls -R *.java | xargs cat >> all_course.txt
Run Code Online (Sandbox Code Playgroud)

linux unix bash ls cat

9
推荐指数
2
解决办法
3万
查看次数

如何将 GNU 与 gunzip 并行使用

我有一个目录.gz,我想与 GNU 并行并行扩展每个存档。但是我没有取得任何成就。

我试过

parallel 'gunzip {}' ::: `ls *.gz`
parallel gunzip `ls *.gz`
Run Code Online (Sandbox Code Playgroud)

没有结果,bash 告诉我:

/bin/bash: archive1.gz: command not found
...
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

谢谢

bash ls gunzip gnu-parallel

9
推荐指数
1
解决办法
1万
查看次数

有没有办法读取文件夹中所有文件的累积大小?

我想从命令行读取文件夹的大小。 ls -lh将所有文件夹显示为 4k,这大概是文件夹本身的占用空间的大小,而不是包含的文件。我想读取文件夹中所有包含文件的大小。这可能吗?

linux filesystems ls

8
推荐指数
1
解决办法
7590
查看次数

递归列出Linux中具有权限的文件的完整绝对路径

我在网上做了一些搜索,我试图找到一种方法来递归列出所有文件及其绝对路径和权限。我想这样做是为了我可以grep得到我想要的,这样当我运行命令时,我就可以得到匹配的文件、它们的权限和它们的完整路径,比如:

<search command> | grep file.name
Run Code Online (Sandbox Code Playgroud)

输出:

/home/current/Desktop/file.name
/etc/program/src/file.name
Run Code Online (Sandbox Code Playgroud)

我更喜欢使用,ls因为它是最快的,我会输入:

ls -alR $PWD/
Run Code Online (Sandbox Code Playgroud)

但这并没有显示文件的路径,所以如果我grep输出了,那么我会看到文件权限,而不是它的来源目录。

我可以使用lsintegrated withfindgrep以我想要的格式获得输出,我可以使用这样的东西:

ls -ault `find $PWD/ -type f` | grep file.name
Run Code Online (Sandbox Code Playgroud)

但这非常慢,我猜是因为实际上有两个命令正在运行。

如果我只使用findwithout lsor grep,那么它会更快,但要输入一堆:

find $PWD/ -type f -name file.name -printf '%M %u %g %s\t%a\t%p\r\n'
Run Code Online (Sandbox Code Playgroud)

这会给我一个很好的格式(它还包括用户、组、大小和最后访问日期,这很有帮助)。然而,这是一个输入,它肯定是不一样快,使用lsgrep

有没有比使用更快的方法来做我想做的事情find

linux grep ls

8
推荐指数
1
解决办法
3万
查看次数

如何从 Linux 的“locate”命令显示文件详细信息(大小、日期等)?

(慢)Linux“find”命令有一个选项“-ls”,可以像“ls -l”命令一样显示大小、日期等。但是“locate”命令似乎没有。那么我怎样才能获得与 locate 相同的功能呢?

我使用反引号将 locate 的输出传递给 ls,如下所示:

ls -al `locate -e somefile`
Run Code Online (Sandbox Code Playgroud)

...只要 somefile 存在,它就可以工作。但是如果 somefile 不存在,它会给我一个完整的目录列表。

如果我这样做:

ls -al `locate -e somefile` thisfileneverexists
Run Code Online (Sandbox Code Playgroud)

...然后它有点工作,如果你不介意错误行:

ls: cannot access thisfileneverexists: No such file or directory
Run Code Online (Sandbox Code Playgroud)

……这让我们想到了明显但极其丑陋的解决方法:

ls -al `locate -e somefile` thisfileneverexists 2>/dev/nul
Run Code Online (Sandbox Code Playgroud)

那行得通,但肯定有更好的方法!

linux ls locate find

8
推荐指数
1
解决办法
5万
查看次数

总是在另一个命令之后运行一个命令

使用zsh(和oh-my-zsh),是否可以始终在某个其他命令之后运行一个命令?我想总是对目录运行lsafter cd,而不是cd example; ls每次都运行。

我试过了:

function cd {
  cd $1
  ls
}
Run Code Online (Sandbox Code Playgroud)

但它似乎zsh在运行时退出,没有任何输出(堆栈溢出?)。更改函数的名称使其按预期工作,但我宁愿仍然使用该cd命令。

alias cd='cd $1;ls'
Run Code Online (Sandbox Code Playgroud)

列出指定的目录,但实际上并不更改工作目录。

是否有可能做到这一点,如果有,如何做到?

zsh command-line ls

8
推荐指数
2
解决办法
4456
查看次数

如何为ls的输出列着色?

标题样的说,这一切:我想获得的东西,如输出的那些整齐的彩色列ls -al,也就是说,在10basetom的回答这个问题

链接答案中语法突出显示的代码片段的屏幕截图

bash ls

8
推荐指数
2
解决办法
2630
查看次数

根据文件大小过滤 ls 输出

我想ls根据文件大小过滤命令的输出。任何大于 100KB 的 .jpg 或 .png 文件都应在输出中报告。

我已经能够过滤 .png / .jpg 文件,但我无法丢弃任何小于 100KB 的文件。

这是我目前正在使用的:

ls -lah | grep '.png\|.jpg'
Run Code Online (Sandbox Code Playgroud)

任何想法我怎么能做到这一点?

bash command-line ls

7
推荐指数
2
解决办法
2万
查看次数

有没有一种直接的方法可以根据 macOS 中的 Finder 标签颜色为 ls 输出着色?

我有一个带有目录树的客户端,其中包含许多我需要在本地开发机器上拥有的高级目录。除非出现问题,否则我很少看它们。

我在 Finder 中用灰色标签标记了“无趣”的标记,而我每天使用的标记标记为绿色标记。当我使用 Finder 时,这在极少数情况下工作正常。

相反,我使用 Terminal.app,尽管我并不反对其他终端模拟器,只要它们快速而强大。使用 时ls,即使使用@G标志,我也没有可以用来淡化无趣的目录条目的有用信息。(如果我可以ls通过一个简单的awk脚本来应用着色,我会很好。)

我知道我可以使用 osascript 来获取这个属性,然后装饰文件输出,但这可能会导致ls自 Unicos 以来最慢的实现。我也知道我可以使用 ls 更改默认颜色,但这并没有达到我需要的水平。

是否有一种简单、快速、已经存在的工具可以根据 Finder 标签颜色为 ls 输出着色,然后回退到$LSCOLORS? 或者那是我的下一个 GitHub 项目?

finder terminal colors ls macos

7
推荐指数
1
解决办法
1796
查看次数

如何使用“ls -l | more”获取颜色?

ls -l 给我颜色编码的输出。文件夹是蓝色的,可执行文件是绿色的,等等。这些颜色在彻底过滤时消失了| 更多的。无论如何要实现分页输出和颜色?

bash ls

7
推荐指数
1
解决办法
3839
查看次数

标签 统计

ls ×10

bash ×5

linux ×4

command-line ×2

cat ×1

colors ×1

filesystems ×1

find ×1

finder ×1

gnu-parallel ×1

grep ×1

gunzip ×1

locate ×1

macos ×1

terminal ×1

unix ×1

zsh ×1