首页 > 系统相关 >Shell-$(cd "$(dirname "$0")",pwd)

Shell-$(cd "$(dirname "$0")",pwd)

时间:2023-10-20 09:01:30浏览次数:53  
标签:BIN Shell cd PROJECT pwd FOLDER dirname

#!/bin/bash
BIN_FOLDER=$(cd "$(dirname "$0")";pwd)
echo $BIN_FOLDER
PROJECT_FOLDER=$(cd "$(dirname "$BIN_FOLDER")";pwd)
echo $PROJECT_FOLDER
PYTHON_BIN=$PROJECT_FOLDER/.venv/bin/python
echo $PYTHON_BIN
  • BIN_FOLDER = $(cd "$(dirname "$0")",pwd) 解析:

  • 1、取当前运行脚本的所在路径: $0

  • 2、取当前脚本所在路径的父目录: dirname "$0"

  • 3、取返回的父目录的值: $(dirname "$0")

  • 4、cd到返回的父目录: cd "$(dirname "$0")"

  • 5、输出地址: cd "$(dirname "$0")",pwd

  • 6、取输出的地址,并赋值给BIN_FOLDER: BIN_FOLDER = $(cd "$(dirname "$0")",pwd)

  • 【参考链接】https://www.cnblogs.com/turbolxq/p/10408414.html

标签:BIN,Shell,cd,PROJECT,pwd,FOLDER,dirname
From: https://www.cnblogs.com/starcos/p/17776219.html

相关文章

  • Linux shell编程学习笔记8:使用字符串
    一、前言字符串是大多数编程语言中最常用最有用的数据类型,这在Linuxshell编程中也不例外。本文讨论了LinuxShell编程中的字符串的三种定义方式的差别,以及字符串拼接、取字符串长度、提取字符串、查找子字符串等常用字符串操作,,以及反引号在echo和expr命令联合使用时的作用。二......
  • Linux shell编程学习笔记4:修改命令行提示符格式(内容和颜色)
    一、命令行提示符格式内容因shell类型而异Linux终端命令行提示符内容格式则因shell的类型而异,例如CoreLinux默认的shell是sh,其命令行提示符为黑底白字,内容为:tc@box:/$其中,tc为当前用户名,box为主机名,/为当前目录路径,$表示当前用户类型是普通用户 。 二、环境变量PS1存储了命令行提......
  • Linux-shell脚本使用ssh远程执行命令通过密码的方式登录
    1. sshpass简介sshpass是一个在非交互式ssh会话中自动输入密码的工具。它可以直接在命令行中指定密码,因此可以用于Shell脚本等自动化场景。在RedHat系统中,可以通过epel-release源安装sshpass。epel-release源是ExtraPackagesforEnterpriseLinux(EPEL)的缩写......
  • Linux-Shell 小数运算,四舍五入
    在shell中做小数运算,可以借助bc或者awk工具一、使用bc做小数运算,scale指定小数点位数1、加法运算(scale参数无效)#echo"5.999+5.001"|bc6.000#echo"5.111+5.1114"|bc10.2224运算结果小数点位数以加数中最大的为准 2、减法运算(scale参数无效)  同加法运算  运算......
  • Nushell 使用说明及总结
    介绍作为Shell语言,我特别喜欢Nushell的如下几个特点:来自UNIXShell的管道,把多个命令连接在一起函数式编程风格事实上,管道操作符(|)也是很多函数式编程的操作符丰富的对象化的数据结构对结构化文件的处理,比如JSON,XML,CSV,TOML等基于模板的......
  • Shell(十一):I/O重定向
    I/O重定向最常用的方法:管道,结合sed和awk等命令的用法;面向文件的I/O重定向,涉及文件标识符、I/O重定向符号及其用法、exec命令和代码块重定向。1、管道1.1、管道简介管道技术是Linux的一种基本的进程间通信技术,利用先进先出(FirstInFirstOut,FIFO)排队模型来指挥......
  • 运行shell脚本时报错"[[ : not found"解决方法
    实例if["$system"=="CentOS"];thenecho"yuminstallbc"elif["$system"=="Ubuntu"]||["$system"=="Debian"];thenecho"aptinstallbc"fi}运行至判断表达式时报错,sh命令无法识别&qu......
  • HBase-hbase shell操作
    hbaseshell操作一、DDL操作1.开启hbaseshellhbaseshell 2.查看hbase状态Status 3.查看hbase版本Version 4.创建命名空间create_namespace'命名空间名' 5.显示所有命名空间list_namespace 6.删除命名空间在删除一个命名空间时,该命名空间不能包含任何的表,否则......
  • ECS-使用cat查看文件后出现乱码,整个终端显示包括shell提示符都是乱码
    问题描述:在bash下用cat显示二进制文件后会出现乱码,整个终端显示包括shell提示符都是乱码,这个跟语言环境无关。解决办法:恢复的话,大致有以下几种方法:方法一:盲打输入echo-e'\xf'并回车。与这个命令相对的是echo-e'\xe',在正常状态下输入此命令会把终端搞出乱码来。这两个命令的......
  • shell 调试方法
    shell在linux系统中比较常见,简单的脚本可以看着确实没难度,但是当脚本功能复杂后,看起来就不那么流畅了,所以掌握一些调试方式还是很有必要的,这里我收集了一次常用的调试方式。shell调试的方法echo语句通过在脚本代码中插入echo语句输出变量值、执行状态等信息,在脚本中直......