我有一个目录,里面装满了文件名logXX
,其中 XX 是两个字符、零填充的大写十六进制数字,例如:
log00
log01
log02
...
log0A
log0B
log0C
...
log4E
log4F
log50
...
Run Code Online (Sandbox Code Playgroud)
一般来说,总共会有少于 20 或 30 个文件。我的特定系统上的日期和时间不是可以依赖的(没有可靠的 NTP 或 GPS 时间源的嵌入式系统)。然而,文件名将可靠地增加,如上所示。
我希望grep
通过某种类型的单个最新日志条目的所有文件,我希望将cat
这些文件放在一起,例如...
cat /tmp/logs/log* | grep 'WARNING 07 -' | tail -n1
Run Code Online (Sandbox Code Playgroud)
然而,它发生,我认为不同版本bash
或sh
或zsh
等可能有关于如何不同的想法*
展开。
该man bash
页面没有说明 的扩展*
是否是匹配文件名的绝对升序字母列表。每次我在所有可用的系统上尝试它时,它似乎都在上升——但它是定义的行为还是特定于实现的行为?
换句话说,我绝对可以依靠cat /tmp/logs/log*
按字母顺序将所有日志文件连接在一起吗?
这两个 Bash if 语句有什么区别?例如
if [ "$FOO" = "true" ]; then
Run Code Online (Sandbox Code Playgroud)
对比
if [ $FOO = "true" ]; then
Run Code Online (Sandbox Code Playgroud)
有什么不同?似乎这两个语句的工作方式相同。
我在我的 PC 上安装了最新版本的 Apache2/PHP/MYSQL。
在目录中,/src/www/htdocs
我创建了一个wordpress
包含所有 wordpress 文件的目录。
然后,当我尝试wp-config
通过 Web 界面创建文件时,出现此错误:
Sorry, but I can't write the `wp-config.php' file.
Run Code Online (Sandbox Code Playgroud)
我试过这个命令来改变组 /src/www/htdocs/wordpress
chown -R root:root /srv/www/htdocs/wordpress
Run Code Online (Sandbox Code Playgroud)
但它不起作用。经过一些研究,我看到很多人说将组更改为,www-data
但我没有看到www-data
使用此命令:
cut -d: -f1 /etc/group
Run Code Online (Sandbox Code Playgroud)
有谁知道我做错了什么?
我正在bind9
Debian 上运行名称服务器。
我注意到有多个“命名”进程在运行,bind
启动时:
bind
实例(进程)?bind
进程的推荐用途是什么?我知道bind
就 CPU 和网络而言,这是一个相对较低的密集型应用程序。我有一个大.csv
文件,需要按字符串长度拆分特定列。我正在尝试获取第 2 列的最后 6 个字符并将它们移动到一个新列中。
当前:
3102017,90131112,0,740
3022017,8903944,90,0
3092017,127037191,475,0
Run Code Online (Sandbox Code Playgroud)
期望:
3102017,90,131112,0,740
3022017,8,903944,90,0
3092017,127,037191,475,0
Run Code Online (Sandbox Code Playgroud) bash ×2
shell ×2
awk ×1
bind9 ×1
csv-simple ×1
debian ×1
perl ×1
permissions ×1
quoting ×1
sed ×1
shell-script ×1
wildcards ×1
wordpress ×1