小编cha*_*ase的帖子

我可以将 chromebook 用作 ssh 工作站吗?

在我的工作中,我在远程集群上开发和运行了很多软件。大多数情况下,我只是通过 ssh 使用 bash/vim,并且只在本地运行终端模拟器和 Web 浏览器。我正在考虑买一个轻便的 chromebook 用于旅行等。但是,我从来没有真正使用过,也不知道谁拥有它。

鉴于以下要求,有谁知道 chromebook 是否是合适的选择?

  • 可以通过 ssh 进入具有全功能终端的远程机器
  • 可以连接到远程 VNC 服务器
  • (奖励)支持通过 ssh 进行 X11 转发
  • (奖励)有一个本地终端模拟器,可以运行 bash 并进行一些基本的 linux 文件系统操作

至于最后一点,我更希望有一个本地终端允许我定义别名、运行 ssh 等;与拥有像 PuTTY 这样完全独立的 ssh 客户端相反。

chromebook 适合我的用例吗?还是我应该买一台便宜的普通笔记本电脑?

terminal google-chrome-os chromebook

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

bash 函数中的别名作用域

我使用一个脚本(我没有写访问权限)来创建一堆别名来设置环境。我想创建一个 bash 函数来设置我的环境,但似乎别名在函数体中不存在。

这是一个最小的例子:

# aliases.sh
alias fooAlias='echo "this will never work!"'  
Run Code Online (Sandbox Code Playgroud)

.

# .bashrc
function setupLotsOfThings() {
    source aliases.sh
    fooAlias
}
Run Code Online (Sandbox Code Playgroud)

.

现在,如果我只是以aliases.sh交互方式获取源代码,那么事情会按预期进行:

[mycomputer]~/ $ source aliases.sh
[mycomputer]~/ $ fooAlias
this will never work!
Run Code Online (Sandbox Code Playgroud)

但是,如果我改为调用 .bashrc 中定义的函数,则在获取其定义后它无法识别别名:

[mycomputer]~/ $ setupLotsOfThings
-bash: fooAlias: command not found
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?alias在函数中使用时,我对命令的范围有什么遗漏吗?

编辑:我将添加一些超出最小示例的细节,以阐明我正在尝试完成的工作。

对于我的工作,我在集群和/或网格上开发和运行了很多软件。我有几个项目需要完全不同的环境,例如不同的 gcc 版本、特定的软件版本、配置和数据路径以及各种环境变量。管理员提供脚本来设置各种东西,通常是通过定义 shell 函数或别名来调用其他函数或别名或运行各种脚本。对我来说,这是一个黑匣子。

我想用一个命令设置我自己的各种环境。目前,我做这样的事情:

[mycomputer]~/ $ source /some/environment/setup/script.sh
[mycomputer]~/ $ aliasToSetupSomeSoftwareVersion    #this was defined in the above
[mycomputer]~/ $ anotherAliasForOtherSoftware
[mycomputer]~/ $ source /maybe/theres/another/script.sh
[mycomputer]~/ …
Run Code Online (Sandbox Code Playgroud)

bash

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

标签 统计

bash ×1

chromebook ×1

google-chrome-os ×1

terminal ×1