加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

在linux中cwd是指什么,在何处

发布时间:2023-09-23 10:33:42 所属栏目:Linux 来源:网络
导读:   Linux中的 pwd, $PWD 与 cwd



  一句话解释: 都指某个进程运行时所在的 目录.



  $PWD 是个系统变量



  pwd 是linux 自带的命令. 全称: pathname of the current
  Linux中的 pwd, $PWD 与 cwd
 
  一句话解释: 都指某个进程运行时所在的 目录.
 
  $PWD 是个系统变量
 
  pwd 是linux 自带的命令. 全称: pathname of the current working directory.
 
  cwd: 不是系统自带的命令, 但是属于 系统的属性 . 全称: current working directory . 不但在 /proc/{id} 这个目录下可以看到cwd, 在很多其他的编程语言中也可以看到( 例如grunt )
 
  cwd指的是current work directory,即当前工作目录。
 
  扩展知识
 
  FD 名称(cwd,memory…\d[u|r|w])
 
  当执行一个进程的时候,会有一个cwd的文件描述符。
 
  cwd指的是current work directory,即当前工作目录。
 
  为什么会有指定当前目录的FD呢?
 
  是因为在Linux系统中,不管是目录还是文件都是以文件的方式存在的。所以当我们执行一个进程的时候,需要指定在哪个目录中执行,系统会去打开指定的执行目录,那么这个过程也就是一个打开系统文件的过程,即会创建FD。所以可以理解为任何一个进程都会有cwd的FD
 
  当执行一个进程的时候,会有一个txt的文件描述符。
 
  txt可以理解为是程序代码,如应用程序的二进制库或者是共享库等。
 
  为什么会有txt的FD呢?
 
  既然是执行进程,那么必须有指定执行内容的代码文件。执行的时候需要读取文件内容,那么打开代码文件也必然会创建FD。所以可以理解为任何一个进程都会有txt的FD
 
  还有一些特殊的FD:
 
  rtd:根目录
 
  mem:内存映射文件
 
  mmap:内存映射设备
 
 
  还有一些FD是数值开头的,这些表示的是这个进程执行时需要打开的一些文件描述符,这个数值也可以理解为是打开该文件时返回的一个整数。当初始化打开每一个进程的时候,都会默认有三个数值开头的FD,即0,1,2。也可以当做是内置FD,因为他们默认代表了特殊的含义
 
  0:stdout,标准输出
 
  1:stdin,标准输入
 
  2:stder,错误输出
 
  所以当应用程序内部打开文件的时候,数值都是从3开始的,有效范围是0-OPEN_MAX
 
  在数值的后面还会加一个FD读写权限的标识:
 
  u:读写
 
  r:只读
 
  w:只写
 

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章