小编kos*_*kos的帖子

如何让 tar 从 stdin 读取输入?

我需要tar在 shell 脚本内的管道中使用来存档和压缩一些文件。

在阅读了手册页后,tar我能够通过将其与参数一起运行来生成tar输出,但我无法找出如何将其从. 由于如果没有指定其他输入,许多命令会从中读取,我尝试过:stdout-Ostdinstdin

pv ~/foo | tar c -O ~/foo.tar
Run Code Online (Sandbox Code Playgroud)

但这不起作用:

tar: Cowardly refusing to create an empty archive

Try 'tar --help' or 'tar --usage' for more information.
Run Code Online (Sandbox Code Playgroud)

如何tar从 读取输入stdin

input tar

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

如何将 CPU 频率设置为始终保持在最大值?

由于我主要将笔记本电脑用作台式机,因此我尝试将其 CPU 设置为最大频率。

CPU 是 Intel Core i5-3337U(带超线程的双核),使用 Intel Turbo Boost 技术,最高频率为 2.5GHz(具有 2 个活动核心)和 2.70GHz(具有 1 个活动核心)。

在开始之前,我使用 LINPACK 测试了 CPU 在负载下可以达到的频率,看看尽管有任何主动节能功能,它是否可以达到 2.5GHz 的标称最大值;它可以(测量运行watch -n 1 "cat /proc/cpuinfo | grep \"cpu MHz\"")。

我选择使用这种cpufreq-set方法:我已经安装了cpufrequtils软件包,起初我尝试将 CPU 调节器设置为“性能”运行cpufreq-set -g performance;我不知道这是否以某种方式影响了空闲频率的范围,但结果并不令人满意:在这种状态下,所有 CPU 的频率在 1.0GHZ-2.4GHZ 范围内不断下降并上升。

所以我尝试将CPU调控器设置为“用户空间”,以便最终能够设置一个固定的频率;但是出现了以下错误:

Error setting new values. Common errors:
- Do you have proper administration rights? (super-user?)
- Is the governor you requested available and modprobed?
- Trying to set an invalid …
Run Code Online (Sandbox Code Playgroud)

intel cpufreq cpu

5
推荐指数
2
解决办法
8115
查看次数

比较 2 个数字并仅复制相似的部分 sed/grep/awk

假设我有一个名为a. 有一个阵列中的2项a[1]a[2]。所以每个元素包含一个数字值。这两个值都有相似的起始数字,但它们有不同的结尾。我将复制类似的部分并忽略其余部分。

所以作为一个例子

$ echo ${a[1]}
.1.3.6.1.4.1.232.13600256

$ echo ${a[2]}
.1.3.6.1.4.1.232.13600276
Run Code Online (Sandbox Code Playgroud)

我需要一些命令来比较这些元素,然后只复制相似的部分,直到第一个不匹配的字段。即,在这个例子中

输出

similar part is .1.3.6.1.4.1.232
Run Code Online (Sandbox Code Playgroud)

另一个例子

$ echo ${a[1]}
.1.3.6.1.4.1.759.2344.454545

$ echo ${a[2]}
.1.3.6.1.4.1.759.3234.454545
Run Code Online (Sandbox Code Playgroud)

此示例的输出

similar part is .1.3.6.1.4.1.759
Run Code Online (Sandbox Code Playgroud)

bash scripts

5
推荐指数
1
解决办法
525
查看次数

'sudo' 对 root 意味着什么?

我在 Ubuntu 14.04 中运行以下命令:

root@ubuntu:~# service rpki-ca restart 
stop: Unknown job: rpki-ca
start: Unknown job: rpki-ca
root@ubuntu:~# sudo service rpki-ca restart 
rpki-ca stop/waiting
rpki-ca start/running
root@ubuntu:~#
Run Code Online (Sandbox Code Playgroud)

sudo第二个命令的作用是什么?为什么需要root sudo

root sudo 14.04

5
推荐指数
1
解决办法
283
查看次数

刷新终端缓冲区?

./program -a asdf我有一个(专有)程序,可以在终端中启动。当我这样做时,我可以在正确的时间看到所有输出。

但是,当我想在我的脚本中使用程序的输出并运行时./program -a asdf | script.sh,“script.sh”仅包含read lineecho $line在循环中,程序的输出是“奇怪的”。当程序打印第一行块时,脚本不会打印任何内容。当程序(几分钟后)打印第二个行块时,我的脚本将打印第一个块。

为什么?

有没有办法让我自己的脚本“像终端一样工作”,以便在终端显示时立即获取输出?

command-line scripts output

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

为什么我的 cp 命令不能复制整个目录?

我已经测试了该cp命令,它只会复制单个文件。例如,我输入cp了确切的文件名,然后输入了目录并复制了文件。但是,当我输入目录和目标目录时,计算机上没有任何变化。我以为cp应该复制目录中的内容。

我已经多次尝试过这个。

command-line cp

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

为什么我的别名现在不起作用?

因此,在我重新格式化(以摆脱 Windows)之前,我只是使用此命令通过将其放在~/.bashrc文件末尾来打开文档:

alias commandless= 'gnome-open ./Documents/the-linux-command-line.pdf; gnome-open ./Documents/linux.odt'
Run Code Online (Sandbox Code Playgroud)

但是现在每次我启动终端时,它都会说:

bash: alias: gnome-open ./Documents/the-linux-command-line.pdf; gnome-open ./Documents/linux.odt: not found
Run Code Online (Sandbox Code Playgroud)

在输入任何内容之前,当我运行命令时什么也没有发生,甚至没有错误消息。

command-line alias

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

帮助 Docky 的 bash 脚本

我打算将此脚本分配给键盘快捷键,以便我可以为 Docky 快速切换自动隐藏。

我将制作第二个脚本,再次关闭自动隐藏,并为其分配不同的键盘快捷键。

关闭并重新启动 Docky 的原因是因为 Docky 否则不会刷新配置的设置。我写了一个sudo命令,我怀疑它不起作用。

我想要:

  1. 无需任何sudo命令即可执行
  2. 如果可能(不重要),有一个统一的脚本,只在“无”和“智能隐藏”之间切换,这样我就不需要两个单独的键。
  3. 如果可能,让 Docky 刷新配置的值,而不必退出并再次启动。
#!/bin/bash 
gconftool-2 -t string -s /apps/docky-2/Docky/Interface/DockPreferences/Dock1/Autohide "Intellihide" & 
sudo killall dockey & 
docky
Run Code Online (Sandbox Code Playgroud)

bash docky gconf

5
推荐指数
1
解决办法
145
查看次数

如何在管道命令末尾换行

我想编写一个管道命令序列,它打印出给定目录的所有子目录的列表,并打印在一行中,后面是一个新行。

我无法使以下命令的输出全部位于同一行,然后在末尾添加一个新行。

这是我的管道命令:

ls -l /share/ |grep ^d |tr -s ' ' |cut -f9 -d' '| tr '\n' ' ' 
Run Code Online (Sandbox Code Playgroud)

我希望输出如下:

file1 file3
[user@linux]$
Run Code Online (Sandbox Code Playgroud)

而不是(我实际得到的:

file1 file3[user@linux]$
Run Code Online (Sandbox Code Playgroud)

command-line bash ls

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

我无法用肉桂关闭或重新启动 ubuntu

我最近在 Ubuntu 14.04 上安装了 Cinnamon,现在我无法使用 GUI 关闭或重新启动系统,我必须注销才能这样做。

我尝试关闭并从小程序重新启动,但没有任何反应,我也尝试重新安装 Cinnamon,但问题仍然存在。

图片

gui shutdown restart cinnamon 14.04

5
推荐指数
1
解决办法
2190
查看次数

标签 统计

command-line ×4

bash ×3

14.04 ×2

scripts ×2

alias ×1

cinnamon ×1

cp ×1

cpu ×1

cpufreq ×1

docky ×1

gconf ×1

gui ×1

input ×1

intel ×1

ls ×1

output ×1

restart ×1

root ×1

shutdown ×1

sudo ×1

tar ×1