初学 linux shell,编程解决一简单需求时,遇问题若干,记录如下:
需求:为一深层目录添加快速访问功能
环境:windows 10,Git Bash
代码如下 (文件名 qcd ):
#!bin/sh
function test1(){
cd YifangYun/FangCloudSync/jsn/learn163
if [ $1="shell" ]
then
cd 201610_shell
elif [ $1="git" ]
then
cd 201609_Git
else
echo "error cmd"
fi
}
function test2(){
cd YifangYun/FangCloudSync/jsn/learn163
if [ $1 = "shell" ]
then
cd 201610_shell
elif [ $1 = "git" ]
then
cd 201609_Git
else
echo "error cmd"
fi
}
function test3(){
cd YifangYun/FangCloudSync/jsn/learn163
if [ $1x = "shell"x ]
then
cd 201610_shell
elif [ $1x = "git"x ]
then
cd 201609_Git
else
echo "error cmd"
fi
}
test3 $1
###初次运行:
$ ./qcd shell现状: shell文件运行完,仍在当前目录下,无法实现目录跳转.
原因:在新建子 shell 中运行完 qcd 中各指令后,子 shell 中

这篇博客记录了在Linux Shell中如何为深层目录创建快速访问功能的问题及解决方案。作者在Windows 10的Git Bash环境下,通过编写qcd脚本来实现目标,但在初次尝试时遇到子shell环境和参数传递的难题。最终,通过使用source命令解决了问题,实现了在当前shell下执行脚本指令。文中分别介绍了test1、test2、test3三个逐步优化的解决方案,其中test3成功修正了所有问题,能无误地进入指定目录。
最低0.47元/天 解锁文章
895

被折叠的 条评论
为什么被折叠?



