相关疑难解决方法(0)

从脚本本身获取Bash脚本的源目录

如何获取其中的目录路径的Bash脚本位于,里面那个脚本?

例如,假设我想使用Bash脚本作为另一个应用程序的启动器.我想将工作目录更改为Bash脚本所在的目录,因此我可以对该目录中的文件进行操作,如下所示:

$ ./application

directory bash

4672
推荐指数
44
解决办法
158万
查看次数

如何创建永久PowerShell别名

我想创建一个aliascmdlet不到期后,我关闭的PowerShell当前会话,让我们说我有这个别名:

C:\Users\Aymen> New-Alias Goto Set-Location
Run Code Online (Sandbox Code Playgroud)

这完美地创建了Goto别名,但我想在关闭当前会话后使用它,我该如何实现.

注意:

PowerShell帮助系统建议我可以导出我创建的别名,并在下次打开新会话时导入它们,实际上这并不是我真正想要的,因为有没有直接清晰的方法来保持别名后我通过不同的会话创建它

powershell

107
推荐指数
7
解决办法
7万
查看次数

制作一个shell脚本来更新3 git repos

我正在使用我在开发环境中克隆的5个回购.当我想更新git仓库时,我输入文件夹/ home/adrian/repo1 /并执行:

git checkout master git pull origin master

但是,每天早上我必须为其他4个回购做同样的事情.这很麻烦.

我可以把它放在shell脚本中吗?我的意思是,如果我在shell脚本中编写这些git命令并运行它,我能否更新所有的repos?

我在想写这样的东西......

cd repo1
git checkout master 
git pull origin master
cd ..
cd repo2
git checkout master 
git pull origin master
cd ..
Run Code Online (Sandbox Code Playgroud)

(我在linux上)

编辑:也许这比我想象的更具挑战性.大多数情况下,当我做"git pull origin master"时,我会得到像"你的本地更改......将被合并覆盖"这样的错误.所以我必须进入相应的分支并藏匿东西..

编辑2:

我正在考虑的是,如果发生冲突,请忽略它并转到下一个回购

cd repo1
git checkout master 
git pull origin master

(if there is conflict, ignore and go to the next line but dont stop here)

cd ..
cd repo2
git checkout master 
git pull origin master
cd ..
Run Code Online (Sandbox Code Playgroud)

但我不知道如何在括号中写出这个东西.

git shell

23
推荐指数
2
解决办法
4万
查看次数

标签 统计

bash ×1

directory ×1

git ×1

powershell ×1

shell ×1