首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shell获取当前工作目录绝对路径

一般我们写Shell脚本的时候,都倾向使用绝对路径,这样无论脚本在什么目录执行,都应该起到相同的效果,但是有些时候,我们设计一个软件包中的工具脚本或者远程调用某个脚本时,可能使用相对路径更加灵活一点,因为你不知道用户会在哪个目录执行你的程序...,于是问题就来了,如何获取当前正在执行脚本的绝对路径?...常见的一种误区,是使用 pwd 命令,该命令的作用是“print name of current/working directory”,这才是此命令的真实含义,当前的工作目录,这里没有任何意思说明,这个目录就是脚本存放的目录...,使用从$0开始的特殊变量引用(跟路径无关了) 除此以外,$0会被设置成调用bash的那个文件的名字(没说是绝对路径) 简单介绍一下获取方法如下: #!...cd  dirname $0 ,进入这个目录(切换当前工作目录) pwd,显示当前工作目录(cd执行后的) 我今天遇到一个问题就是: 需要压缩备份一个目录下的所有的文件,其实代码就2行: 我还是贴全部的吧

11.7K70
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux知识体系之路径属性与目录

    1、Linux目录权限概念      Linux一般讲目录可存取的方式分为三个类别,分别是owner/group/other,且各有read/write/excute等权限。...此外,Linux所有的群组名称都记录在/etc/group内。这三个路径可以说是Linux系统里面的账号、密码、群组信息的集中地。...2、Linux目录属性     在用root的身份登陆Linux之后,使用 ls -al可以看到整个文件路径的权限及目录。ls 是 list的意思,而参数 -al则表示列出所有的目录。...chgrp users install.log 该命令install.log的群组改为users     chown root:root install.log 该命令改变档案所属群组为root 同时...x( access directory):与能否进入该目录有关。 参考文献:《鸟哥的Linux私房菜》

    72810

    Linux入门】路径的概念及目录的操作

    本文主要介绍Linux系统中路径的基本概念以及对目录的基础操作。...当登录到Linux系统后,每个用户都会在自己的家目录中,可以用 cd 命令进入到其它目录。...命令格式: mkdir [-mp] 目录名称 # -p 直接目录名称递归建立 # -m 建立目录时同时设置权限 命令示例: # 在当前工作目录下,建立目录 test mkdir test # 在当前工作目录下...命令格式: rmdir [-p] 目录名称 # -p 按层级的目录一并删除 命令示例: # 在当前工作目录下,删除空目录 test rmdir test # 在当前工作目录下,连续删除多层级空目录...,3个空目录同时删除 rmdir -p test_a/test_b/test_c # 以绝对路径方式删除空目录 rmdir /home/www/test_dir 我正在参与2023腾讯技术创作特训营第四期有奖征文

    45031

    linux目录结构和重要文件路径说明

    Linux目录结构图 一个标准 Linux 分发遵循下面提供的目录结构,并附有图表和说明。 img 上面的每个目录(首先是一个文件)都包含重要信息,需要引导到设备驱动程序、配置文件等。.../boot:在[启动过程中]保存重要文件,包括Linux Kernel..../lost+found : 这个目录是在安装过程中安装的 Linux, 用于恢复可能因意外而损坏的文件 shut-down....此目录包含特定于服务器和服务相关的文件。 /sys :现代 Linux 发行版包括 /sys 目录作为 virtual filesystem,它存储并允许修改连接到系统的设备。...相关文章 linux重要的目录之etc linux重要目录之usr和var linux重要的目录之proc和dev目录 linux深入proc文件系统(上) linux深入proc文件系统之pid目录(

    2K10

    Linux文件系统路径目录结构简述

    Linux文件系统路径说明  熟悉Windows系统的,都知道文件路径表示,如C:\User\rich\Documnets\test.doc。...在Linux目录称为虚拟目录(virtual directory) 根目录是root,根目录下的目录和文件会按照访问它们的目录路径一一列出。...路径本身并没有提供任何有关文件究竟存放在哪个物理磁盘上的信息。 在linux pc上安装的第一块硬盘称为根驱动器。 根驱动器包含了虚拟目录的核心,其它目录都是从那里开始构建的。...虚拟目录会让文件和目录出现在这些挂载点目录中,然而实际上它们却存储在另外一个驱动器中。.../tmp 临时目录,可以在该目录中创建删除临时工作文件 /us 用户二进制目录,大量用户级的gnu工具和数据文件存储

    2.4K20

    linux命令讲解大全】107.pwd 命令:显示当前工作目录的绝对路径

    pwd 显示当前工作目录的绝对路径。 补充说明 pwd(英文全拼:print working directory)命令用于显示用户当前所在的工作目录(以绝对路径显示)。...-P: 打印当前工作目录的物理位置。 返回值 返回状态为成功除非给出了非法选项或是当前目录无法读取。 注意 该命令是bash内建命令,相关的帮助信息请查看help命令。...主要用途 显示当前工作目录。 选项 -L, --logical: 打印环境变量$PWD的值,可能为符号链接。 -P, --physical(默认值): 打印当前工作目录的物理位置。...例子 查看当前所在路径 [root@localhost var]# pwd /var 显示软连接文件最终指向的文件路径 [root@localhost ~]# cd /var/ # 进入/var目录...[root@localhost mail]# pwd # 默认,使用连接文件,直接显示连接文件全路径

    51410

    Git目录工作目录

    每一个项目只能有一个’Git目录’(这和SVN,CVS的每个子目录中都有此类目录相反),这个叫’.git’的目录 在你项目的根目录下(这是默认设置,但并不是必须的)。...(也许现在还有其它 文件/目录 在 ‘Git目录’ 里面, 但是现在它们并不重要) ##工作目录 Git的’工作目录’存储着你现在签出(checkout)来用来编辑的文件。...当你在项目的不同的分支间切换时,工作 目录里的文件经常会被替换和删除。...所有历史信息都保存在’Git目录’中;工作目录只用来临时保存签出(checkout) 文件的地方,你可以编辑工作目录的文件直到下次提交(commit)为止。...注:’Git目录’:一般就是指项目根目录下的’.git’目录

    1.9K20

    Linux目录结构及路径 和 常用命令

    目录 Linux目录结构及路径 目录 路径路径 相对路径 特殊路径写法 常用命令 Linux目录结构及路径 ? ? ? ?...usr:里面包含local目录,所有用户自己安装的软件都放在local中。 放在这个里面,Linux会自动识别,放在其他地方,还得配置之后才识别,麻烦 var:系统临时文件等所在目录。...找当前资源的子目录直接写子目录名称,如果向上跳一级文件夹写法 : …/ 特殊路径写法 / 表示磁盘根 ~ 表示/root ,root文件夹的根目录 常用命令 cd 进入到指定目录中 语法:cd 路径...向上跳一级 cd 目录 进入目录 pwd 显示当前所在路径的全路径 clear 清屏 ls/ll ls 以平铺方式显示当前目录包含内容 ll 以详细列表形式显示当前目录包含内容。...rm -f 文件路径:删除文件不需要确认 touch 创建指定名称一个空文件。在linux中文件不是必须带有扩展名。带有扩展名的文件都是具有特定格式的文件。

    1.7K20

    linux下截取给定路径中的目录部分

    在日常运维中,有时会要求截取一个路径中的目录部分。 截取目录的方法,有以下两种: 1)dirname命令(最常用的方法):用于取给定路径目录部分。...很少直接在shell命令行中使用,一般把它用在shell脚本中,用于取得脚本文件所在目录,然后当前目录切换过去。...其实就是取所给路径的倒数第二级及其之前的路径部分,如下: [root@jenkins-server Shell]# dirname main/protected/xqsjmob/themes/tpl2/...scripts [root@qzt196 ~]# dirname /usr/bin/sort /usr/bin [root@qzt196 ~]# dirname stdio.h //获取的是当前目录路径...下面比较下这两种方法的效果:即dirname取的是倒数第二级及其以上级的路径,而${pathname%/*}取的是"删除最后一个/符号后的路径部分" [root@jenkins-server Shell

    2.7K50

    Linux:转录组分析1-建立工作目录

    转录组测序分析本笔记主要是针对转录组测序分析专题上游分析,需要有Linux基础知识,目标是养成一个良好的分析习惯,熟悉转录组分析上游流程,重点是针对分析的结果能有自己的思考和解读能力。...wget axel -n 100 1.工作目录管理这一部分非常非常非常重要,拥有一个优秀的工作习惯比什么都重要1.1 目录一览## 示例如下:├── database # 数据库存放目录...,包括参考基因组,注释文件,公共数据库等├── project # 项目分析目录 └── Human-16-Asthma-Trans #具体项目 ├── data # 数据存放目录.../Subjunc# 建立定量目录mkdir -p Expression/featureCounts Expression/Salmon# 查看整个分析目录准备结构tree├── data│   ├──.../#数据软连接到自己的目录下双端测序,3个样本,因为是压缩的(.gz压缩后缀)做分析时要解压引用自生信技能树课程

    18621
    领券