标签: bash

如何找到最大的目录或最大的文件?

在 Linux 下,我正在寻找一个命令来列出目录下最大的文件和/或最大的目录。

linux bash filesystems

52
推荐指数
4
解决办法
10万
查看次数

如何按大小对目录中的所有文件进行排序?

如何显示 unix 目录中的文件,按其人类可读的大小排序,从最大到最小?

我试过

du -h | sort -V -k 1 
Run Code Online (Sandbox Code Playgroud)

但它似乎不起作用。

unix bash shell

52
推荐指数
4
解决办法
8万
查看次数

如何使用通配符“grep”递归过滤所需文件的名称?

当我想在当前目录中执行递归grep搜索时,我通常这样做:

grep -ir "string" .
Run Code Online (Sandbox Code Playgroud)

但是该命令会在各种文件中搜索,包括二进制文件(图片、音频、视频等),这会导致搜索过程非常缓慢。

例如,如果我这样做,它将不起作用:

grep -ir "string" *.php
Run Code Online (Sandbox Code Playgroud)

它不起作用,因为当前目录中没有 PHP 文件,但在当前目录中的某些子目录中,并且子目录的名称不以“.php”结尾,因此 grep 不会查看其中的内容。

那么,如何从当前目录进行递归搜索,同时指定文件名通配符?(即:只搜索以特定扩展名结尾的文件)

linux bash grep command-line file-filter

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

我可以将这些文件保存在即将被遗忘的机器上吗?

首先,坦白:不,我没有做我应该做的备份。

二、情况:

我有一台带有运行Fedora 25固态磁盘的戴尔 XPS 9550 。

我正在处理一个文件,并在被告知我试图保存到只读文件系统时尝试保存它。原来我的文件系统现在是只读的,而且到处都是i/o 错误

我可以通过打开的网络浏览器通过电子邮件将它们发送给我自己来保存一些文件,但是它崩溃了,我无法重新启动它。但是我仍然在编辑器中打开了感兴趣的文件。我似乎无法将文件保存在任何地方,但我可以复制它们的内容。如果我能找到一种方法来窃取文件内容,我就可以节省数月的工作。

但是有一些可怕的限制。我试图插入一个 USB 驱动器,但似乎没有设备代表它,并且该mount命令因段错误而终止。我可以尝试通过 ssh 连接到另一台计算机,但是我收到“总线错误”并且它死了。ping, dmesg, ifconfig, 这些都不起作用。但我有vimlessls,可以产生新的bash实例。

lynx,不firefox,不google-chrome。没有 DVD 驱动器。

基本上看来我的SSD已经死了。或者整个主板。我的内存中仍有非常有价值的文档,我有一个 IP 地址和网络连接,我可以运行一些随机命令,并且在我可以尝试的路径上还有 3500 个。

cat并且gcc似乎有效。我可以写入 /tmp 中的文件。我有一个ipython似乎仍在运行的正在运行的实例。

所以......到目前为止我所尝试的都失败了。但我觉得还有一千种可能。我没有考虑什么?我怎么可能从我垂死的计算机上获取这些文件?

一定有办法。

更新:新东西:

  • 由于我自己的愚蠢,我失去了网络连接。
  • 我写了一个 Python 脚本来替换cpcp -r
  • 除非我找到某种方法来/dev为 SD 卡或 USB …

linux fedora crash bash ssd

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

为什么 Bash 无处不在(在大多数 Linux 发行版中)?

在我尝试过的每个 Linux 发行版中,默认情况下都使用 Bash,而不是像Z shell (zsh)这样的替代品。这有技术或历史原因吗?

linux bash shell

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

在 macOS 上使用带有 bash 的终端键绑定

我一直在尝试学习 macOS 上 shell 的键盘快捷键,但是当我尝试使用ALT+ 时B,它不起作用。

您如何在 shell 中发现、配置和使用键绑定?任何备忘单都会有所帮助。

keyboard-shortcuts bash terminal.app macos

51
推荐指数
4
解决办法
8万
查看次数

在bash中用新行回显文本

我想将文本附加到文件中。所以我用bash写

echo text >> file.conf
Run Code Online (Sandbox Code Playgroud)

但是它不会留下新的一行。所以我只能这样做一次。如何添加新行?

linux bash

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

我想用 ImageMagick 改变 DPI 而不改变图像数据的实际字节大小

在 GIMP 中有一种非常简单的方法可以做我想做的事。我只安装了德语对话框,但我会尝试翻译它。我说的是转到Picture -> PrintingSize然后调整值X-ResolutionY-Resolution我知道这些值是所谓的 DPI 值。您还可以选择默认为Pixel/Inch. (在德语中,对话是Bild -> Druckgröße,那里X-AuflösungY-Auflösung

好的,72默认情况下通常有这些值。当我将它们更改为例如300这会导致图像在计算机上保持不变,但是如果我打印它,如果您查看它会更小,但所有细节仍然存在,只是更小 - >它有打印纸的分辨率更高(但尺寸更小......这对我来说很好)。

我在使用 LaTeX 时经常这样做,或者准确地说是pdflatex在最近的 Ubuntu 机器上使用命令。当我手动使用 GIMP 执行上述过程时,一切正常。图像在生成的 PDF 中看起来更小,但打印质量很高。

我想要做的是自动化进入 GIMP 和调整 DPI 值的过程。由于众所周知 ImageMagick 非常出色,并且我将它用于许多其他任务,因此我试图通过此工具实现我的目标。但它并没有做我想要的。

在尝试了很多事情之后,我认为这实际上是我应该成为朋友的命令:

convert input.png -density 300 output.png
Run Code Online (Sandbox Code Playgroud)

这应该将 DPI 设置为 300,因为我可以在网络上的任何地方阅读。它似乎工作。但是当我检查文件时它保持不变(编辑:这是我所期望的,如上所述)。

file input.png output.png
     input.png: PNG image data, 611 x 453, 8-bit grayscale, non-interlaced
    output.png: PNG image data, 611 x 453, 8-bit …
Run Code Online (Sandbox Code Playgroud)

linux gimp bash imagemagick image-processing

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

无法重命名名称以连字符开头的文件

我正在尝试在文件名的开头使用连字符重命名文件,并且:

mv -example-file-name example-file-name
Run Code Online (Sandbox Code Playgroud)

和这个:

mv '-example-file-name' example-file-name
Run Code Online (Sandbox Code Playgroud)

导致:

mv: invalid option -- 'e'
Run Code Online (Sandbox Code Playgroud)

linux bash shell command-line

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

无法在 Windows 10 的 Ubuntu Bash 上更改文件权限

我试图使用 ssh 实例,但收到以下错误,这很奇怪,因为我尝试使用 更改权限chmod,但这似乎不起作用,因为权限仍然存在777

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for 'privkey.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "privkey.pem": bad permissions
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)

我打开git bash并能够毫无问题地通过 SSH 连接到我的实例,并且权限也不777是很好。

ssh bash ubuntu windows-10 windows-subsystem-for-linux

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