小编Vol*_*gel的帖子

列出按数字排序的文件

我有一堆从log1log164.

我正在尝试在 UNIX 终端中列出目录(已排序),但排序功能仅提供如下格式:

home:logs Home$ ls -1 | sort
log1.gz
log10.gz
log100.gz
log101.gz
log102.gz
log103.gz
log104.gz
log105.gz
log106.gz
...etc
Run Code Online (Sandbox Code Playgroud)

我想要的是

home:logs Home$ ls -1 | sort
log1.gz
log2.gz
log3.gz
log4.gz
log5.gz
log6.gz
log7.gz
...{more here}
log99.gz
log100.gz
log101.gz
log102.gz
...etc
Run Code Online (Sandbox Code Playgroud)

我可以用来做什么的任何建议?

ls filenames sort numbering

172
推荐指数
6
解决办法
14万
查看次数

“function foo() {}”和“foo() {}”之间的区别

我可以bash使用或省略function关键字来定义函数。有什么区别吗?

#!/bin/bash

function foo() {
  echo "foo"
}

bar() {
  echo "bar"
}

foo

bar
Run Code Online (Sandbox Code Playgroud)

这两个函数调用foobar成功,我看不出有什么区别。所以我想知道它是否只是为了提高可读性,或者我遗漏了什么......

顺便说一句,在其他 shell 中,例如dash(在 debian/ubuntu 中/bin/sh符号链接dash)它在使用function关键字时失败。

shell bash posix function

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

为什么我无法在 bash 脚本上转义空格?

我试图在 Bash 中为路径转义空格字符,但使用反斜杠引号都不起作用。

.sh 脚本:

ROOT="/home/hogar/Documents/files/"
FILE=${ROOT}"bdd.encrypted"
DESTINATION="/home/hogar/Ubuntu\ One/folder"

mv ${FILE} ${DESTINATION}
Run Code Online (Sandbox Code Playgroud)

执行脚本 ( ./file) 后,结果如下:

mv: target 'One/folder' is not a directory
Run Code Online (Sandbox Code Playgroud)

为什么mv命令会拆分字符串,我该如何阻止这种情况发生?

shell quoting

82
推荐指数
3
解决办法
24万
查看次数

取消突出显示“less”中的最后一次搜索

当您在 less 中使用/向前搜索或?向后搜索时,文件的所有实例都会突出显示。在找到我要查找的单词的实例后,取消突出显示某些内容的最正确方法是什么?

目前我只是按/然后将乱码混入输入字段。没有结果=没有亮点!

我正在寻找类似于 vim:nohl功能的东西,更少。

less search

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

“less” 是否具有“tail --follow=name”(“-F”)之类的功能

该命令less可以被用来替换tail

tail -f file
Run Code Online (Sandbox Code Playgroud)

提供处理二进制输出和导航回滚等功能:

less +F file
Run Code Online (Sandbox Code Playgroud)

+前缀的意思是“假装我键入启动后”,并且键F启动以下。

但也less可以代替

tail --follow=name file
Run Code Online (Sandbox Code Playgroud)

随后file即使实际文件被删除或转移了,像被移动到一个日志文件file.log.1,然后一个新的文件具有相同名称的文件,随后创建?

less pager tail

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

从 JPEG EXIF 元数据更改文件创建日期

上传到 ftp 站点时,原始文件创建日期似乎丢失了,而我得到了上传日期。但是,文件中的 Exif 数据是正确的。是否有工具可以从 Exif 日期批量更改创建日期?

image-manipulation images exif file-metadata

46
推荐指数
5
解决办法
3万
查看次数

根据“〜”使 pwd 结果?

pwd 给我

/data/users/me/some/random/folder
Run Code Online (Sandbox Code Playgroud)

有没有简单的获取方式

~/some/random/folder
Run Code Online (Sandbox Code Playgroud)

pwd?

filenames home pwd

38
推荐指数
3
解决办法
9649
查看次数

重新映射生成多个扫描码的键

我有一台 ThinkPad W540。在它的键盘上,小键盘上方有四个多媒体键。其中两个键生成对应于键组合Win_L+LWin_L+的键码(显然还有扫描码)E。换句话说,对于生成Win_L+的键L
showkey --scancodes返回这个:

0xe0 0x5b 0x26 0xa6 0xe0 0xdb
Run Code Online (Sandbox Code Playgroud)

setkeycodes命令需要未转义的单字节或转义的两字节序列来表示扫描代码,并且showkey给我的方式不止于此,因此我无法使用简单的setkeycodes <scancode> <keycode>.

我真的很感激任何提示,我可以将该键重新映射到其他东西,而不仅仅是复制键盘上现有的组合键之一。

keyboard-shortcuts thinkpad xkb keyboard-layout

34
推荐指数
1
解决办法
3197
查看次数

如何在不重新映射或禁用它的情况下防止大写锁定切换效果?

我有一个 X11 程序可以获取大写锁定并使用它。问题是,我想禁用常规的大写锁定切换,但这样做似乎禁用了密钥。

因此,无论 X11 为大写锁定按键获得什么,它仍然必须获得(不禁用该键,或将其重新映射到其他键),但没有任何将按键转换为大写切换(可能在内核级别? )。

我尝试更改扫描码,但这只是重新映射了密钥。我也删除了大写锁定条目xmodmap,但这也禁用了大写。

如何告诉内核忽略大写键(与其常规功能有关),但仍将消息传递给 X?

只是添加更多细节:

我试图运行的“程序”是人性化的“enso”。当没有密钥时,我收到错误“CRITICAL:root:Couldn't find quasimode key”。如果没有错误,我可以将 enso 与 caps 一起使用,但是到目前为止还没有想出如何在 enso 仍然能够实现的情况下禁用 caps 功能。

keyboard x11 xmodmap xkb

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

wget进度条中的“+”是什么意思?

我正在wget使用慢速链接下载。
有时进度条看起来像这样:

15% [+++++++++++++++===>          ] 10,582,848  --.-K/s   in 82s   
Run Code Online (Sandbox Code Playgroud)

“+”是什么意思?

wget

21
推荐指数
1
解决办法
2164
查看次数