更正:貌似最开始调试的时候考虑传`pwd`,后面不需要传`pwd`,后面改一下至少可以两个文件就好了,这里就懒得改了~~~~
1、我在服务器和本地 PC 有两个结构完全一样的目录 some_dir, 或者说本地的是服务器的一个 copy,或者反之也行。这两个目录里有时候会改一点东西,有时候希望保持两个目录的某些东西一样,于是用 scp 拷贝。
2、两个目录结构相同,但两个目录在两个机器上的绝对路径不同,例如,两个机器上的账户名称是不同的,并且,scp拷贝也需要对远程目录添加ip等‘前缀’。
3、目录比较深,拷贝也比较频繁的话,每次都写一些同样的目录就很繁琐,希望用一点点脚本命令来简化。然后又只是略了解 shell 编程,shell本身语法和函数就比较‘杂’并且‘古怪’(仅从编程角度来说,我觉得bash之类的东西属于最糟糕的语言之一),对于我很难编程,相比之下,用python则容易得多。
4、于是,写了一个python,同时又用了一丁点shell(请忽略糟糕的命名),总共使用了三个文件,都丢在 ~/bin里:
getRelativePath.py :
---------------------------------
import os
print(os.getcwd().replace(os.environ['HOME'], ''))
---------------------------------
getRP:
---------------------------------
python3 ~/bin/getRelativePath.py `pwd`
---------------------------------
samePath:
---------------------------------
echo $SHOME`getRP`
---------------------------------
其中 $SHOME 是bash配置脚本中定义的,例如 my_name@192.168.11.22:/home/my_name。 然后使用的时候,就是跑到对应的目录下,执行:
scp `samePath`/somefile ./
请问怎么简化以上东东(保留使用python,实在不想学bash那些奇奇怪怪的语法和命令),就这么几句写了三个文件,实在是不忍直视