当我运行时echo $SHELL,输出说/bin/tcsh这意味着我正在运行一个tcshshell。但是例如当我发出以下命令时
alias emacs 'emacs -nw'
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
bash: alias: emacs: not found
bash: alias: emacs -nw: not found
Run Code Online (Sandbox Code Playgroud)
当我发出alias emacs="emacs -nw"它运行正常!
这令人困惑,因为我正在运行,tcsh但命令由bash.
可能是什么原因?
有没有办法避免 ssh 打印这样的警告消息?
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Run Code Online (Sandbox Code Playgroud)
虽然远程主机身份已更改,但我知道这很好,只是想摆脱此警告。
我正在reboot -f远程使用该命令来强制重新启动 Unix 机器。问题是 ssh 连接长时间保持活动状态,我不知道为什么?我想在重新启动机器后立即关闭 ssh 连接并返回到我的本地 shell。我怎样才能做到这一点?请注意,没有-f标志的重启命令不起作用。
我想打印从 1 到 100 的数字列表,并使用如下所示的 for 循环:
number=100
for num in {1..$number}
do
echo $num
done
Run Code Online (Sandbox Code Playgroud)
当我执行命令时,它只打印 {1..100} 而不是从 1 到 100 的数字列表。
有时,当我尝试访问ssh服务器时,会收到以下消息:
You don't exist, go away!
Run Code Online (Sandbox Code Playgroud)
我在使用ssh. 这是什么意思?ssh或其他东西有问题吗?附加信息:
ssh -q -i private_key root@192.168.0.11 "command"
Run Code Online (Sandbox Code Playgroud)
服务器是 SUSE Linux。我ssh在循环中运行该命令 10 次,只有 1 或 2 次尝试导致 Go away 消息。
我想代表另一个用户在 shell 上运行一个命令。命令如下:
sudo -u USER cd /home/USER
Run Code Online (Sandbox Code Playgroud)
我得到
sudo: cd: command not found
Run Code Online (Sandbox Code Playgroud)
传递给 sudo 的命令的正确语法是什么?
在我的系统上 mount 命令的输出中有一些如下所示的行:
/dev/sda2 on /var/log type ext3 (rw,relatime,errors=continue,barrier=1,data=ordered)
Run Code Online (Sandbox Code Playgroud)
正如你所看到的那样,在括号内它说errors=continue。这是什么意思?sda2 分区有错误吗?我应该考虑这个还是我可以忽略它?
是否可以找出命令包含哪些错误消息?例如,我想查看mkfs.ext3command 在不同错误情况下将打印的错误消息列表。我应该查看源代码还是有其他方法可以实现这一目标?