我有一个交互式 shell 脚本,在一个地方需要 ssh 到另一台机器(基于 Ubuntu)并以 root 身份执行一些东西(用户应该输入他的密码,但远程命令应该像脚本中提到的那样运行):
# ...
ssh remote-machine 'sudo ls'
# ...
Run Code Online (Sandbox Code Playgroud)
但是,我总是收到此错误消息:
sudo: no tty present and no askpass program specified
Run Code Online (Sandbox Code Playgroud)
好的,这很清楚。但是我怎样才能规避这一点呢?应该发生这样的事情:
$ ssh remote-machine 'sudo ls /'
[sudo] password for user1:
/bin
/etc
/var
Run Code Online (Sandbox Code Playgroud) 我正在寻找类似于这个问题的东西:Zypper:如何显示某个存储库中的所有包?
由于我使用的是 Ubuntu,因此我需要一个基于 aptitude 的解决方案:如何从某个存储库中获取已安装软件包的列表?
我想加入很多(~1000)行,但只有下一个奇数。用手我可以做
Jj
Run Code Online (Sandbox Code Playgroud)
500 次就完成了。但是,如何在一个命令中执行这两个语句 500 次?打字
500Jj
Run Code Online (Sandbox Code Playgroud)
将加入接下来的 500 行,然后向下移动一行。
例子:
我有:
a
b
c
d
e
f
g
h
Run Code Online (Sandbox Code Playgroud)
我想要:
a b
c d
e f
g h
Run Code Online (Sandbox Code Playgroud)
编辑:我尝试映射:
:map X Jj
500X
Run Code Online (Sandbox Code Playgroud)
但显然我应该再次阅读映射文档。不起作用。
与此问题相反,我希望为less. 它xterm在 Cygwin/mintty 或 Gnome 终端(两者xterm)下的我的终端中运行良好。
但是,在screen会话内部时,屏幕的清除以某种方式被禁用。我尝试了几件事,比如
screen -T xterm
Run Code Online (Sandbox Code Playgroud)
或将autonuke语句放入我的~/.screenrc. 此外,在屏幕会话内
export TERM=xterm
tset
Run Code Online (Sandbox Code Playgroud)
没有效果。所以,现在我没有想法了。任何帮助表示赞赏。
我使用 eCryptFS 来加密我的笔记本电脑的主目录。我的备份脚本将加密文件复制到服务器(连同 中的其他所有内容(home/.ecryptfs)。
如何挂载备份的加密文件?我想确认我可以做到这一点,并且一切都已就位。
我天真的尝试
mount -t ecryptfs /backup/home/.ecryptfs/boldewyn /mnt/test
Run Code Online (Sandbox Code Playgroud)
没有用,eCryptFS 想创建一个新分区。
是否有可能(man scp没有透露任何信息)使 scp 具有交互性cp -i?即scp问,如果目标存在,是否可以覆盖?
如果是,它在本地和远程工作吗?
如果没有:alias就这样吧!但我希望有一个更简单的解决方案。
在 Ubuntu 和 Debian 下,当我之后尝试结帐时,最后提交的文件正在设置执行位。这很奇怪,让我发疯:
$ ls -l file
-rw-r--r-- ... file
# on branch master:
$ git commit -m 'mode is 644' file
[master 0123456] mode is 644
1 files changed, 1 insertions(+), 1 deletions(-)
# All ok
$ git checkout dev-branch
Switched to branch 'dev-branch'
# Seemingly all ok, but file now has the exec bit set
$ git merge master
Updating 6543210..0123456
error: Your local changes to 'file' would be overwritten by merge. Aborting.
Please, commit your …Run Code Online (Sandbox Code Playgroud) 在Lilypond 中,纸张尺寸可以设置为 A4、A5、Letter 等。但是我只有一首短歌,我想稍后嵌入。因此必须以某种方式裁剪 Lilypond 的输出。
有没有可能让 Lilypond 自己这样做?\paper{}也许是块的一些设置?
在我的 Debian 机器上,less总是打开备用屏幕来显示内容。
如果只显示 2 或 3 行,这很烦人。我想less:
作为寻呼机工作,如果有超过一屏的信息
并像 一样工作cat,如果没有。
显然,less有-F“单屏”案例的标志:
-F 或 --quit-if-one-screen
如果整个文件可以显示在第一个屏幕上,则使 less 自动退出。
但在我的情况下,它只是再次退出,并且没有显示任何信息。它更像是cat /dev/null,因此不是很有用。
有谁知道如何实现这种less行为?
Gzip 压缩整个 tar 文件非常容易,甚至可以作为 .zip 文件中的选项实现tar。到现在为止还挺好。然而,从一个归档的角度来看,这将是更好的焦油的gzip压缩单个文件。(其背后的基本原理是,如果有一个损坏的 gzip 文件,则数据丢失会减少,而不是由于 gzip 或复制错误导致整个 tarball 损坏。)
有没有人有这方面的经验?有缺点吗?是否有比这更多的可靠/经过测试的解决方案
find folder -exec gzip '{}' \;
tar cf folder.tar folder
Run Code Online (Sandbox Code Playgroud)