使用版本控制系统时,当差异显示为 时,我对噪音感到恼火No newline at end of file
。
所以我想知道:如何在文件末尾添加换行符以摆脱这些消息?
我忘记了我的笔记本电脑上安装了多少个 RAM (DIMM) 模块。我不想拧开它,而是想使用 bash 在控制台上查找它。我如何收集这些信息?
目前,当我想使用jq漂亮地打印一个 json 文件时,我使用:
cat file.json | jq .
Run Code Online (Sandbox Code Playgroud)
但是我希望jq
接受一个文件名作为参数而不必回退到cat
.
手册页说:
jq [选项...] 过滤器 [文件...]
... 默认情况下,jq 从 stdin 读取 JSON 对象流(空格分隔)。可以指定一个或多个文件,在这种情况下 jq 将从这些文件中读取输入。
仍在运行:
jq file.json
Run Code Online (Sandbox Code Playgroud)
通过抛出未定义键的编译错误而失败。
运行时我应该如何添加文件jq
?
我有一个 Arduino,有时会绑定到 ,有时会绑定/dev/ttyUSB0
到/dev/ttyUSB1
,使我的脚本失败。
我不想列举我的设备可能在哪里的所有可能性,但我宁愿将它绑定在某个静态的地方,例如/dev/arduino
.
我如何做到这一点?
我有一堆 MP3 文件,它们的专辑封面包含在文件本身中。我现在正在寻找一种方法来提取它们以将它们分开存储,最好是从命令行。
有没有办法实现这一目标?
我使用以下命令将文件远程复制到我的笔记本电脑:
scp someFile USER@192.168.178.32:/home/USER/put/it/some/where/oh/damn/you/here
Run Code Online (Sandbox Code Playgroud)
我希望能够通过点击选项卡来自动完成远程路径。
Bash 提供了通过Ctrl+反向搜索的功能R。然后可以在命令它会显示从历史拟合项的部分类型。
假设这是我的历史:
vim foo1
vim foo2 # I want to go here
vim foo3 # this is where I land, how to go back?
Run Code Online (Sandbox Code Playgroud)
我搜索foo
. 再次点击Ctrl+R显示下一个合适的搜索条目。经常发生在我身上,我速度太快,导航超过我的预期结果并vim foo3
显示出来,现在我想回到vim foo2
.
因此我的问题是:如何在反向搜索中导航?
据我所知,vi
在开箱即用的 Unix 系统上更常见,但vim
通常必须安装。也vim
代表vi improved
,但如何改进?
主要区别是什么?
我只是在输入以下内容:
mv foo/bar/poit/zoid/narf.txt
Run Code Online (Sandbox Code Playgroud)
突然意识到,该死的,我必须再次输入该参数的大部分内容
mv foo/bar/poit/zoid/narf.txt foo/bar/poit/zoid/troz.txt
Run Code Online (Sandbox Code Playgroud)
即使使用tabcompletion,也很痛苦。我知道我可以通过鼠标选择文本和中键来复制粘贴参数,但这还不够好。我想留在键盘上。
那么有没有办法使用键盘复制粘贴该行的当前参数?
我打开了一个目录vim some/dir
。我可以在树中导航,但是一旦我打开一个文件,我想知道如何关闭文件视图以返回到目录列表以导航到另一个文件。:wq
没有选择,因为它会关闭整个 vim 会话。我想有一个 for 模式,但我不知道它叫什么,也不知道我如何启动它。
如何关闭文件到文件导航视图?
bash ×5
linux ×2
vim ×2
arch-linux ×1
arduino ×1
autocomplete ×1
command-line ×1
directory ×1
hardware ×1
images ×1
jq ×1
json ×1
line-editor ×1
memory ×1
mp3 ×1
newlines ×1
open-files ×1
readline ×1
search ×1
serial-port ×1
shell ×1
ssh ×1
usb ×1
vi ×1