标签: bash

如何在 ssh 启动时编辑欢迎消息?

我的网站托管有一个 VPS。它正在运行 Ubuntu 服务器。每次我通过 ssh 登录我的服务器时,它都会在我的终端中显示一条冗长的欢迎消息。

Linux node61.buyvm.net 2.6.18-pony6-3 #1 SMP Tue Mar 13 07:31:44 PDT 2012 x86_64

Debian GNU/Linux 系统中包含的程序是免费软件;每个程序的确切分发条款在 /usr/share/doc/*/copyright 中的各个文件中进行了描述。

在适用法律允许的范围内,Debian GNU/Linux 不附带任何保证。上次登录:2012 年 7 月 11 日星期三 12:08:19 来自 113.72.193.52 Linux node61.buyvm.net 2.6.18-pony6-3 #1 SMP Tue Mar 13 07:31:44 PDT 2012 x86_64

Debian GNU/Linux 系统中包含的程序是免费软件;每个程序的确切分发条款在 /usr/share/doc/*/copyright 中的各个文件中进行了描述。

在适用法律允许的范围内,Debian GNU/Linux 不附带任何保证。进入 CT 17323 -bash-4.2#

在对此做了一些研究之后(是的,我只是在谷歌搜索),我意识到我的服务器应该有一个.bashrc.bash_profile(或.profile)控制这个。我使用 vim 打开我的.bashrc.profile我似乎找不到任何可以在我的终端中显示消息的代码行。因此我想知道是否有另一个文件?

我想注释掉那些欢迎消息,因为我的 SFTP 没有出现错误 ( Received message too long 761422195)。我很确定这个错误是由我的服务器的欢迎消息引起的。

ubuntu ssh login bash

78
推荐指数
6
解决办法
23万
查看次数

如何完全记录所有 bash 脚本操作?

从我的脚本输出中,我想捕获所有带有错误消息的日志数据,并将它们全部重定向到日志文件。

我有如下脚本:

#!/bin/bash
(
echo " `date` : part 1 - start "
ssh -f admin@server.com 'bash /www/htdocs/server.com/scripts/part1.sh logout exit'
echo " `date` : sleep 120"
sleep 120
echo " `date` : part 2 - start"
ssh admin@server.com 'bash /www/htdocs/server.com/scripts/part2.sh logout exit'
echo " `date` : part 3 - start"
ssh admin@server.com 'bash /www/htdocs/server.com/scripts/part3.sh logout exit'
echo " `date` : END"
) | tee -a /home/scripts/cron/logs
Run Code Online (Sandbox Code Playgroud)

我想查看文件中的所有操作 /home/scripts/cron/logs

但是我只看到了我在echo命令后放置的内容。

如何检查SSH命令成功的日志?

我需要收集所有日志。我需要它来监视脚本中每个命令的结果,以便更好地分析脚本失败时发生的情况。

scripting linux ssh bash log-files

77
推荐指数
4
解决办法
28万
查看次数

如何将过滤器应用于`tail -f`的实时输出?

tail -f path
Run Code Online (Sandbox Code Playgroud)

以上将立即输出对文件的修改,但我想对输出应用过滤器,仅在其中有关键字时显示xxx

如何处理这个问题?

linux bash

71
推荐指数
2
解决办法
8万
查看次数

bash 中两个与符号和分号的操作方式有区别吗?

如果我想在一行上运行两个单独的命令,我可以这样做:

cd /home; ls -al
Run Code Online (Sandbox Code Playgroud)

或这个:

cd /home && ls -al
Run Code Online (Sandbox Code Playgroud)

我得到了相同的结果。但是,这两种方法在后台发生了什么?它们之间的功能区别是什么?

bash

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

如何在 OSX 中找到可执行文件的路径

有没有我可以使用的命令来轻松找到可执行文件的路径?我正在我的本地机器上寻找身份 - 像 pwd 之类的?

pwd identify
=> /usr/local/bin/identify
Run Code Online (Sandbox Code Playgroud)

bash terminal mac-osx

70
推荐指数
2
解决办法
10万
查看次数

如何从文件名中删除无效字符?

我有这样的无效字符的文件

009_-_?%86ndringshåndtering.html
Run Code Online (Sandbox Code Playgroud)

这是Æ文件名出现问题的地方。

有没有办法只删除所有无效字符?

或者可以tr以某种方式使用?

echo "009_-_?%86ndringshåndtering.html" | tr ???
Run Code Online (Sandbox Code Playgroud)

linux bash

69
推荐指数
6
解决办法
14万
查看次数

Linux:如何同时使用文件作为输入和输出?

我刚刚在 bash 中运行了以下命令:

uniq .bash_history > .bash_history
Run Code Online (Sandbox Code Playgroud)

我的历史文件最终完全是空的。

我想我需要一种在写入文件之前读取整个文件的方法。这是怎么做的?

PS:我显然想过使用临时文件,但我正在寻找更优雅的解决方案。

linux bash

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

用户定义的 bash_completion.d 脚本的标准位置?

我有用户访问权限(无 root)到 Linux (Suse) 机器,我在那里开发了一些 bash 脚本和相应的 bash 自动完成规则。

由于脚本仅属于我的用户,因此我只需要对我来说“活动”的完整规则(部分原因是我没有 root 写入权限),将我的 bash_completion 脚本放入/etc/bash_completion.d/文件夹不是一个选项。

目前我命名我的文件.bash_completion.myscript并直接从我的.bashrc.

例如,创建一个文件夹/home/myuser/.bash_completion.d/

bash bashrc user-profile

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

与 zsh 相比,bash 的独特之处

我已经成为 zsh 用户有一段时间了(在那个 tcsh 之前和那个 csh 之前)。我对它很满意,但想知道 zsh 中是否存在任何引人注目的 bash 功能。相反,是否有 bash 中不存在的 zsh 功能。我目前的感觉是 bash 更好:

  • 如果您已经熟悉它并且不想学习新的语法。
  • 默认情况下,它将存在于大多数 *nix 机器上,而 zsh 可能需要额外安装。

不想在这里开始一场宗教战争,这就是为什么我只是在寻找仅存在于一个外壳中的功能。

shell bash zsh

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

zcat/gzcat 适用于 linux,而不适用于 osx。一般的 linux/osx 兼容性

首先是具体问题:在 linux 中,我使用 zcat 列出一个 .zip 文件。在 osx 中,zcat 似乎会自动将 .Z 附加到文件名。很多人建议用 gzcat 替换 zcat;但是,gzcat 抱怨该文件不是 gzip 格式!

'file ' 显示: ...Zip 存档数据,至少要提取 v2.0

所以 zcat 或 gzcat 在 osx 中都不起作用,我该怎么办?

我在 bash 中有一个中等大小的脚本,它使用 zcat/gzcat、sed awk 和其他基本实用程序来处理许多文件。我想在我的 osx 笔记本电脑上复制该环境,以便我可以离线工作。有什么一般性建议可以避免这种痛苦吗?我希望这是一个相当常规的工作流程,所以一定是由其他人整理出来的。

linux bash mac-osx

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

标签 统计

bash ×10

linux ×5

mac-osx ×2

ssh ×2

bashrc ×1

log-files ×1

login ×1

scripting ×1

shell ×1

terminal ×1

ubuntu ×1

user-profile ×1

zsh ×1