我经常以这种方式将我的终端输出重定向到 vim,我厌倦了一直输入:
ls | vim -
Run Code Online (Sandbox Code Playgroud)
我想定义一个函数v
来为我做这件事,即我希望能够输入:
v ls
并且这以某种方式“扩展”到上一个命令。
我可以用这种脚本在简单的情况下做到这一点(当然,这可以重构为一个小函数):
#!/bin/bash
touch crrt_cmd
while (( "$#" )); do
echo -n $1 >> crrt_cmd
echo -n " " >> crrt_cmd
shift
done
chmod +x crrt_cmd
bash crrt_cmd | vim -
rm crrt_cmd
Run Code Online (Sandbox Code Playgroud)
这适用于非常简单的命令,例如ls
or ls -l
,但是当存在一些管道时它根本不起作用,例如。
关于如何执行类似操作的任何想法,但适用于任何有效的 bash 命令?
所以只是要清楚,如果可能的话,我希望事情以这种方式工作:
v ls | grep keyword | head -5
Run Code Online (Sandbox Code Playgroud)
会翻译成:
ls | grep keyword | head -5 | vim -
Run Code Online (Sandbox Code Playgroud) 我在 Ubuntu 18.04 上有一个 thinkpad T490。我想保护我的电池(最大充电 80 和开始充电 75 的 tlp 东西)。
但是,看起来我有一些问题:
~$ sudo tlp setcharge START_CHARGE 70
Error: ThinkPad battery features not available.
Run Code Online (Sandbox Code Playgroud)
我认为这是由于 tp-sampi 和/或 tpacpi-bat 的问题:
~$ sudo tlp stat
...
+++ ThinkPad Battery Features
tp-smapi = inactive (kernel module 'tp_smapi' load error)
tpacpi-bat = inactive (kernel module 'acpi_call' load error)
Run Code Online (Sandbox Code Playgroud)
谷歌搜索后,它似乎tp-smapi
不适用于 *30 及以上版本的 thinkpad,tpacpi-bat
应该是替代的解决方案。我无法找到有关是否/如何设置的更多帮助tpacpi-bat
。任何提示/说明?:)
我想为一个 0 linux 经验并且不想学习更多只是使用一些程序的人设置一台 Ubuntu 笔记本电脑(为年长的家庭成员替换 Windows;她真的很喜欢 ubuntu,发现它很容易使用,而且活泼:))。
我想确保应用所有更新。我知道(并且已启用/设置为每天一次完整更新)unattended-upgrades
。但是,我担心如果笔记本电脑的使用时间很短,并自觉关闭,那么无人值守的东西可能无法应用升级。
这种担心是基于现实吗?是否unattended-upgrades
尝试在笔记本电脑打开时立即升级(似乎不是这样,因为apt
每次打开它时我仍然安装了很多,尽管unattended-upgrades
已设置),还是只在“每天 01.00 升级一次” am' 或类似的东西,在这种情况下它可能永远不会被调用?
从根 crontab 调用这种脚本(即添加一个@reboot bash script_update.sh
to sudo crontab -e
)有帮助吗?:
#!/bin/bash
# A little script to:
# - wait that internet is available
# - wait for the automatic software update to be finished running
# - apply the apt-get update and upgrade to the system
# This means that updates are installed automatically without
# asking …
Run Code Online (Sandbox Code Playgroud)