⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 remote.bash

📁 BASH Shell 编程 经典教程 《高级SHELL脚本编程》中文版
💻 BASH
字号:
#!/bin/bash# remote.bash: 使用ssh. # 这个例子是Michael Zick编写的. # 授权在本书中使用. #   假设的一些前提:#   ---------------#   fd-2(文件描述符2)的内容并没有被丢弃( '2>/dev/null' ).#   ssh/sshd假设stderr ('2')将会显示给用户. ##   假设sshd正运行在你的机器上. #   对于绝大多数'标准'的发行版, 都是有sshd的, #+  并且没有稀奇古怪的ssh-keygen. # 在你的机器上从命令行中试着运行一下ssh:## $ ssh $HOSTNAME# 不需要特别的设置, 也会要求你输入密码. #   接下来输入密码, #   完成后, $ exit## 能够正常运行么? 如果正常的话, 接下来你可以获得更多的乐趣了. # 尝试在你的机器上以'root'身份来运行ssh:##   $  ssh -l root $HOSTNAME#   当要求询问密码时, 输入root的密码, 注意别输入你的用户密码. #          Last login: Tue Aug 10 20:25:49 2004 from localhost.localdomain#   完成后键入'exit'.#  上边的动作将会带给你一个交互的shell. #  也可以在'single command'模式下建立sshd, #+ 但是这已经超出本例所讲解的范围了. #  唯一需要注意的是, 下面的命令都可以运行在#+ 'single command'模式下.# 基本的, 写stdout(本地)命令.ls -l# 这样远端机器上就会执行相同的命令. # 如果你想的话, 可以传递不同的'USERNAME'和'HOSTNAME': USER=${USERNAME:-$(whoami)}HOST=${HOSTNAME:-$(hostname)}#  现在, 在远端主机上执行上边的命令, #+ 当然, 所有的传输都会被加密.ssh -l ${USER} ${HOST} " ls -l "#  期望的结果就是在远端主机上列出#+ 你的用户名所拥有的主目录下的所有文件. #  如果想看点不一样的东西, #+ 那就在别的地方运行这个脚本, 别在你自己的主目录下运行这个脚本. #  换句话说, Bash命令已经作为一个引用行#+ 被传递到了远端shell中, 这样远端机器就会运行它. #  在这种情况下, sshd代表你运行了' bash -c "ls -l" '.#  如果你想不输入密码, #+ 或者想更详细的了解相关的问题, 请参考: #+    man ssh#+    man ssh-keygen#+    man sshd_config.exit 0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -