我似乎无法让它发挥作用。GNU sed 文档说要转义管道,但这不起作用,也不能使用没有转义的直管。添加括号没有区别。
$ echo 'cat
dog
pear
banana
cat
dog' | sed 's/cat|dog/Bear/g'
cat
dog
pear
banana
cat
dog
$ echo 'cat
dog
pear
banana
cat
dog' | sed 's/cat\|dog/Bear/g'
cat
dog
pear
banana
cat
dog
Run Code Online (Sandbox Code Playgroud) 一个固定长度的进度条、一个文件或字节数,或者更好的是一个显示估计剩余时间的计时器是理想的。
zip的标准行为似乎是为每个处理的文件打印一行,但是当我压缩数千个文件时,我不希望信息过载。我想估计需要多长时间。
我尝试将-q( --quiet) 选项与-dg( --display-globaldots)结合使用,但这只是用多行点填充标准输出,并没有给出任何有用的指示。
我也-qdgds 10m按照手册页中的说明进行了尝试,但得到了相同的结果。
然后我尝试了-db( --display-bytes) 和-dc( --display-counts) 但似乎没有全局选项,所以它再次为每个文件名打印它。
最后,我与-qlike一起尝试了它-qdbdc,但它什么也没输出。
有趣的是,我在 info-zip 站点上找到了一个手册页,其中提到了一个-de( --display-est-to-go) 选项,该选项应该“显示完成存档操作的估计时间”。
这听起来和我想要的完全一样,但问题是我的版本zip没有那个功能。我使用的是 Ubuntu 14.04.1 64 位、bash-4.3.30(1) 和 zip-3.00。根据维基百科,这是 zip 的最新稳定版本。
info-zip sourceforge 页面上有未发布的测试版,但我不想将我的数据委托给测试版。
我意识到这不是一个完全与 unix/linux 相关的问题。但由于这是我将在 linux 上做的事情,我希望有人有答案。
我有一个在线 excel 文件 ( .xlsx),它会定期更新(由其他人)。我想编写一个脚本并将其作为 cronjob 放入以处理该 excel 表。但要做到这一点,我需要将其转换为一个文本文件(所以 a .csv),其中包含分号分隔的列。不幸的是,它不能用逗号分隔,因为某些列中有逗号。是否有可能从 shell 进行这种转换?我安装了 Open office,我可以使用它的 GUI 来做到这一点,但想知道是否可以从命令行做到这一点。谢谢!
PS:我也有一台 Mac 机器,所以如果一些解决方案可以在那里工作,那也很好。:)
我知道我可以通过多种方式解决这个问题,但我想知道是否有办法只使用 bash 内置函数来解决这个问题,如果没有,最有效的方法是什么。
我有一个包含类似内容的文件
AAA
B C DDD
FOO BAR
Run Code Online (Sandbox Code Playgroud)
我只是指它有几行,每行可能有也可能没有空格。我想运行一个命令
cmd AAA "B C DDD" "FOO BAR"
Run Code Online (Sandbox Code Playgroud)
如果我使用cmd $(< file)我得到
cmd AAA B C DDD FOO BAR
Run Code Online (Sandbox Code Playgroud)
如果我使用cmd "$(< file)"我得到
cmd "AAA B C DDD FOO BAR"
Run Code Online (Sandbox Code Playgroud)
如何让每一行都处理一个完全相同的参数?
我在 C++ 应用程序服务器在端口 8080 上运行的机器上运行下面的 shell 脚本,在 shell 脚本中我正在执行一个 URL 并将来自该 URL 的响应存储在 DATA 变量中。
但是假设如果同一个应用服务器宕机了,那么它将无法执行 URL,然后它会打印出来Retrying Again并休眠 30 秒,然后再次执行相同的 URL。
#!/bin/bash
HOSTNAME=$hostname
DATA=""
RETRY=15
echo $HOSTNAME
while [ $RETRY -gt 0 ]
do
DATA=$(wget -O - -q -t 1 http://$HOSTNAME:8080/beat)
if [ $? -eq 0 ]
then
break
else
echo "Retrying Again" >&2
# restart the server
let RETRY-=1
sleep 30
fi
done
echo "Server is UP"
Run Code Online (Sandbox Code Playgroud)
这HOSTNAME是我运行上述 shell 脚本的服务器的本地主机名。
问题陈述:-
现在我要做的是,如果服务器关闭,那么它会打印出来,然后Retrying Again我想检查端口 …
有没有办法记录进程创建的所有传出连接?我知道,netstat但这似乎更像是一个时间点的快照,而不是在一段时间内运行和记录信息的东西。
我只需要 IP 或主机名、端口和建立连接的过程。
除了 Open Office,是否有任何解决方案可以.pptx在 Linux(更准确地说是 Debian)上打开演示文稿?
使用 Arch。
$ localectl status
System Locale: n/a
VC Keymap: n/a
X11 Layout: n/a
Run Code Online (Sandbox Code Playgroud)
好的,所以我只是设置语言环境,对吗?
$ localectl list-locales
en_US.utf8
Run Code Online (Sandbox Code Playgroud)
...很酷,我将使用 en_US.utf8
localectl set-locale en_US.utf8
Failed to issue method call: Invalid Locale data...
Run Code Online (Sandbox Code Playgroud)
可能有什么问题?
将公式插入 LibreOffice 时,它和其他单词之间有很多填充。如何修改公式的格式以使填充更小?
LibreOffice 3.3.1
打开例如来自 Firefox 的邮件附件(无需事先保存);这是一个 Libre Office 文档,您编辑它,然后按保存(而不是另存为)并关闭文本编辑器和浏览器。然后文档消失,因为它默认存储在/tmp. 至少在我的 Ubuntu 12.04 上是这样。
你认为这是正确的行为吗?该程序不应该至少提醒您您并没有真正保存任何东西吗?或者有什么方法可以恢复文件(也在注销和/或重新启动后)?
libreoffice ×4
bash ×3
openoffice ×2
conversion ×1
csv ×1
debian ×1
documents ×1
firefox ×1
locale ×1
netstat ×1
sed ×1
shell ×1
shell-script ×1
spreadsheet ×1
tcp ×1
terminal ×1
tmp ×1
zip ×1