小编Gab*_*les的帖子

查找大小大于 x kB/MB/GB 的文件,并显示其大小

我想要一个简单的命令(可能使用find)来查找所有文件 > 某种大小(以字节、千字节、兆字节或千兆字节为单位),并在找到它们时打印它们的大小。

例如,此命令查找所有大于 10 MB 的文件,但遗憾的是不显示其大小:

find . -size +10M
Run Code Online (Sandbox Code Playgroud)

也可以看看:

  1. 大于 1 GB 且超过 6 个月的文件- 不显示大小
  2. Linux 显示大于 1 GB 的目录中的文件并显示大小- 接受的答案看起来比预期更复杂,并且我不需要排序。
  3. 查找大于 X 值的文件,按大小排序,以 ls 格式显示- 我不需要也不想要ls格式,主要答案可能不适用于空格
  4. https://linuxconfig.org/how-to-use-find-command-to-search-for-files-based-on-file-size

bash find shell-script files

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

bash:使“du”显示类似于“ncdu”的输出

ncdu在 Linux 上,以下是NCurses 磁盘使用工具的一些示例输出:

命令:

ncdu /boot
Run Code Online (Sandbox Code Playgroud)
ncdu 1.14.1 ~ Use the arrow keys to navigate, press ? for help 
--- /boot -----------------------------------------------------
  100.2 MiB [##########]  initrd.img-5.13.0-28-generic         
  100.2 MiB [######### ]  initrd.img-5.13.0-27-generic
   11.2 MiB [#         ]  vmlinuz-5.11.0-46-generic
    9.7 MiB [          ]  vmlinuz-5.13.0-28-generic
    9.7 MiB [          ]  vmlinuz-5.13.0-27-generic
    9.7 MiB [          ]  vmlinuz-5.13.0-25-generic
    8.0 MiB [          ] /grub
    5.7 MiB [          ]  System.map-5.13.0-28-generic
    5.7 MiB [          ]  System.map-5.13.0-27-generic
    5.7 MiB [          ]  System.map-5.13.0-25-generic
    5.6 MiB [          ]  System.map-5.11.0-46-generic
  252.0 KiB …
Run Code Online (Sandbox Code Playgroud)

disk-usage ncdu

4
推荐指数
2
解决办法
1643
查看次数

如何将可选参数传递给“time”命令

man time显示它有一些选项,例如,将输出写入time文件而不是stderr

-o FILE, --output=FILE
Run Code Online (Sandbox Code Playgroud)

所以,我尝试使用它

$ time -o out.txt ls
-o: command not found

real    0m0.081s
user    0m0.070s
sys 0m0.012s
Run Code Online (Sandbox Code Playgroud)

这不行!它说-o: command not found

证明out.txt不存在:

$ cat out.txt
cat: out.txt: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

我如何使用像-o somefile.txtwith这样的选项time

我使用 Linux Ubuntu 18.04bash作为我的终端。

bash time

4
推荐指数
1
解决办法
977
查看次数

`ll /proc/self/fd/` (来自 `ll /dev/fd`)的输出是什么意思?

相关但重复:

  1. /dev/fd 不一致
  2. /dev/fd 与 /proc/self/fd/ 有何关系?
  3. 为什么进程替换会产生一个名为 /dev/fd/63 的文件,该文件是一个管道?

alias ll='ls -alF'在 Ubuntu 18.04 和 20.04(Ubuntu在 中定义)上,我看到“软盘驱动器”~/.bashrc设备的以下输出:/dev/fd

为了ls

$ ls /dev/fd
0  1  2  3
Run Code Online (Sandbox Code Playgroud)

为了ll

$ ll /dev/fd
lrwxrwxrwx 1 root root 13 Nov  5 11:46 /dev/fd -> /proc/self/fd/
Run Code Online (Sandbox Code Playgroud)

我可以看到/dev/fd是 的符号链接/proc/self/fd/,所以我ll看到:

$ ll /proc/self/fd/
total 0
dr-x------ 2 username username  0 Nov  8 19:01 ./
dr-xr-xr-x 9 username username  0 Nov …
Run Code Online (Sandbox Code Playgroud)

file-descriptors devices proc

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

相当于 Linux 上的“ping -o”

显然 MacOsping有一个-o选项,意思是“收到第一个成功响应后返回”或类似的东西。请参阅:https ://stackoverflow.com/a/6119327/4561887 。

Linux Ubuntu 上有等效的吗?我们怎样才能最好地达到同样的结果?

我的版本是ping utility, iputils-s20161105,由返回的ping -V

更新:我在这里找到了 MacOs 文档: https: //ss64.com/osx/ping.html

-o         Exit successfully after receiving one reply packet.
Run Code Online (Sandbox Code Playgroud)

linux ping

2
推荐指数
1
解决办法
1924
查看次数

bash 脚本顶部的 `#!/bin/bash -eu` 中的 `-eu` 是什么意思?(或任何`-abefhkmnptuvxBCHP`)

在 bash 脚本的顶部eu之后是什么意思#!/bin/bash -eu

通常我用这个hashbang/shebang开始我的 bash 脚本:

#!/bin/bash
Run Code Online (Sandbox Code Playgroud)

但我只是遇到了一个

#!/bin/bash -eu
Run Code Online (Sandbox Code Playgroud)

我不知道为什么有一个-eu那里。阅读这些man bash页面似乎对我没有帮助,但也许我忽略了一些东西。


不是重复的:

这不是使用 `set -eu` 时 EXIT 和 ERR 陷阱正确行为的重复。

在这个问题下面的评论中引用@ilkkachu,直接解决这个问题:

... -e 和 -u 如何处理陷阱或其他任何东西与它们和其他单字符选项在命令行上的给出方式完全无关。

我同意这一点。这些是不同的问题和答案,背后有着不同的动机。这个问题是如此不同,我什至在尝试理解我自己的问题的答案时,都不会想通过查看它的标题或描述来点击它,而且答案也大不相同。

bash shell-script shebang

0
推荐指数
2
解决办法
1863
查看次数

标签 统计

bash ×3

shell-script ×2

devices ×1

disk-usage ×1

file-descriptors ×1

files ×1

find ×1

linux ×1

ncdu ×1

ping ×1

proc ×1

shebang ×1

time ×1