______________________________________________________________________________
NAME
file - 操 纵 文 件 名 和 属 性
总 览 SYNOPSIS
file option name ?arg arg ...? _________________________________________________________________
描 述 DESCRIPTION
这 个 命 令 提 供 在 一 个 文 件 名 或 属 性 上 的 一 些 操 作 。 Name 是 一 个 文 件 的 名 字 ; 如 果 它 以 波 浪 线 (~)开 始 , 则 在 执 行 命 令 之 前 进 行 波 浪 线 替 换 (详 情 参 见 filename 命 令 的 手 册 条 目 )。 Option 指 示 对 文 件 名 做 什 么 处 理 。 接 受 option 的 任 何 唯 一 的 缩 写 。 有 效 的 选 项 是 :
file atime name
?time? 返 回 一 个 十
进 制 字 符 串 ,
给 出 文 件 name 上
次 被 访 问 的 时
间 。 如 果 指 定
了 time, 它 是 这
个 文 件 要 设 置
成 的 访 问 时 间
。 这 个 时 间 是
用 标 准 的 POSIX 方 式
(fashion)度 量 的 , 即
从 一 个 固 定 的
开 始 时 间 至 今
的 秒 数 (通 常 是
1970年 1月 1日 )。 如 果
文 件 不 存 在 或
它 的 访 问 时 间
不 可 查 询 或 设
置 则 生 成 一 个
错 误 。 在 Windows 上
, FAT 文 件 系 统 不
支 持 访 问 时 间
。
file attributes name
file attributes
name ?option?
file attributes name ?option value option
value...? 这 个 子 命 令
返 回 或 设 置 与
一 个 文 件 相 关
联 的 特 定 于 平
台 的 值 。 第 一
种 形 式 返 回 特
定 于 平 台 的 标
志 (flag)和 它 们 的 值
的 一 个 列 表 。
第 二 种 形 式 返
回 指 定 选 项 的
值 。 第 三 种 形
式 设 置 一 个 或
多 个 值 。 这 些
值 是 : 在 Unix 上 ,
-group 得 到 或 设 置
这 个 文 件 的 组
名 字 。 给 这 个
命 令 一 个 组 ID,
而 它 返 回 一 个
组 名 字 。 -owner 得
到 或 设 置 这 个
文 件 的 属 主 的
名 字 。 这 个 命
令 返 回 属 主 的
名 字 , 而 在 设
置 属 主 的 时 候
要 传 递 给 它 数
值 的 ID。 -permissions 设
置 或 查 询 chmod(1) 所
使 用 的 八 进 制
代 码 。 这 个 命
令 还 有 限 的 支
持 使 用 chmod(1)的 符
号 属 性 来 做 设
置 , 形 式 是
[ugo]?[[+-=][rwxst],[...]], 这 里
使 用 逗 号 来 分
隔 多 个 符 号 属
性 (例 如 : u+s, go-rw
为 用 户 添 加 粘
住 位 (sticky), 为 组
和 其 他 删 除 读
和 写 的 许 可 权
)。 还 支 持 一 个
简 化 的 ls式 样
的 字 符 串 , 形
式 是 rwxrwxrwx (必 须 是 9
个 字 符 )(例 如 :
rwxr-xr-t 等 价 于 01755)。
在 Windows 上 , -archive 给
出 值 或 设 置 或
清 除 这 个 文 件
的 归 档 属 性 。
-hidden 给 出 值 或 设
置 或 清 除 这 个
文 件 的 隐 藏 属
性 。 -longname将 把 每
个 路 径 元 素 扩
展 成 长 版 本 。
不 能 设 置 这 个
属 性 。 -readonly 给
出 值 或 设 置 或
清 除 这 个 文 件
的 只 读 属 性 。
-shortname 给 出 一 个
字 符 串 , 在 这
里 每 个 路 径 元
素 被 替 换 成 它
的 短 (8.3)版 本 的 文
件 名 。 不 能 设
置 这 个 属 性 。
-system 给 出 值 或 设
置 或 清 除 这 个
文 件 的 系 统 属
性 。 在 Macintosh 上 ,
-creator给 出 或 设 置
这 个 文 件 的 寻
找 器 (Finder)建 立 者
类 型 。 -hidden给 出
值 或 设 置 或 清
除 这 个 文 件 的
隐 藏 属 性 。
-readonly 给 出 值 或
设 置 或 清 除 这
个 文 件 的 只 读
属 性 。 注 意 如
果 打 开 了 文 件
共 享 则 目 录 只
能 被 锁 定 。 -type
给 出 或 设 置 这
个 文 件 的 寻 找
器 文 件 类 型 。
file channels
?pattern? │ 如 果
没 有 指 定 pattern,
则 返 回 所 有 在
这 个 解 释 器 中
注 册 的 打 开 通
道 的 一 │ 个
列 表 。 如 果 指
定 了 pattern, 则 只
返 回 匹 配 pattern 的
名 字 。 确 定 匹
│ 配 使 用 与
string match 相 同 的 规
则 。
file copy ?-force? ?--? source
target
file copy ?-force? ?--? source ?source ...? targetDir 第 一 中 形 式 在 路 径 名 target 底 下 做 文 件 或 路 径 source的 一 个 复 件 。 如 果 target 是 一 个 现 存 的 目 录 , 则 使 用 第 二 种 形 式 。 第 二 种 形 式 在 targetDir 中 做 列 出 的 每 个 source 文 件 的 一 个 复 件 。 如 果 指 定 一 个 目 录 作 为 一 个 source, 则 这 个 目 录 的 内 容 将 被 递 归 的 复 制 进 targetDir 中 。 除 非 指 定 -force 选 项 否 则 现 存 文 件 将 不 被 覆 写 。 即 使 指 定 了 -force , 尝 试 覆 写 一 个 非 空 目 录 , 用 一 个 文 件 覆 写 一 个 目 录 , 或 者 用 一 个 目 录 覆 写 一 个 文 件 将 导 致 错 误 。 参 数 按 指 定 的 次 序 被 处 理 , 如 果 有 错 误 的 话 , 在 第 一 个 错 误 处 停 止 (halt)。 一 个 -- 标 记 选 项 的 结 束 ; 在 -- 之 后 的 参 数 即 使 以 - 开 始 将 仍 被 作 为 一 个 source 来 对 待 。
file delete
?-force? ?--? pathname ?pathname
... ? 删 除 由 每 个
pathname 参 数 所 指 定
的 文 件 或 目 录
。 只 有 指 定
-force选 项 才 删 除
非 空 目 录 。 尝
试 删 除 一 个 不
存 在 文 件 将 导
致 不 作 为 一 个
错 误 来 考 虑 。
即 使 没 有 指 定
-force 项 , 尝 试 删
除 一 个 只 读 文
件 将 导 致 文 件
被 删 除 。 参 数
按 指 定 的 次 序
被 处 理 , 如 果
有 错 误 的 话 ,
在 第 一 个 错 误
处 停 止 (halt)。 一 个
-- 标 记 选 项 的
结 束 ; 在 -- 之
后 的 参 数 即 使
以 - 开 始 将 仍
被 作 为 一 个
pathname来 对 待 。
file dirname name 返 回 一
个 名 字 , 由 在
name 中 除 了 最 后
一 个 之 外 的 所
有 路 径 组 成 部
分 (component)组 成 。 如
果 name 是 一 个 相
对 的 文 件 名 并
且 只 包 含 一 个
路 径 元 素 (element),
则 返 回 “.” (在
Macintosh 上 为 “:”)。
如 果 name 参 照 一
个 根 目 录 , 则
返 回 根 目 录 。
例 如 ,
file dirname c:/
返 回c:/. 注 意 波
浪 线 替 换 只 在
必 要 的 时 候 进
行 用 以 补 全
(complete)命 令 。 例 如
,
file dirname ~/src/foo.c 返
回~/src, 而
file dirname ~ 返 回/home (or
something similar).
file executable
name 如 果 文 件 对
当 前 用 户 是 可
执 行 的 则 返 回
1, 否 则 返 回
0。
file exists name 如 果 文
件 name 存 在 并 且
当 前 的 用 户 对
找 到 (lead to)它 (所 途
径 )的 目 录 有 查
找 的 权 利 (privilege)则
返 回 1, 否 则
返 回 0。
file extension name 返 回 在
name 最 后 那 个 元
素 的 最 后 一 个
点 号 之 后 并 包
括 点 号 的 所 有
在 name中 字 符 。
如 果 在 name 的 最
后 的 那 个 元 素
中 没 有 点 号 则
返 回 空 串 。
file isdirectory name 如 果 文
件 name 是 一 个 目
录 则 返 回 1,
否 则 返 回 0。
file isfile name 如 果 文
件 name 是 一 个 普
通 文 件 则 返 回
1, 否 则 返 回
0。
file join name ?name ...? 接
受 一 个 或 多 个
文 件 名 并 使 用
对 当 前 平 台 正
确 的 路 径 分 隔
符 来 组 合 它 们
。 如 果 特 定 的
name是 相 对 的 ,
则 它 会 被 连 接
到 前 面 的 文 件
名 参 数 上 。 否
则 , 丢 弃 所 有
以 前 的 参 数 ,
从 当 前 的 参 数
开 始 进 行 连 接
。 例 如
file join a b /foo bar 返 回/foo/bar. 注 意 任 何 名 字 都 可 以 包 含 分 隔 符 , 并 且 结 果 总 是 依 从 当 前 平 台 的 规 矩 : 对 Unix 和 Windows 是 /, 对 Macintosh 是 :。
file lstat name
varName 除 了 使 用 lstat
调 用 而 不 使 用
stat 之 外 , 与 stat
选 项 (见 后 )相 同
。 这 意 味 着 如
果 name 参 照 一 个
符 号 连 接 , 在
varName 中 返 回 的 信
息 是 针 对 这 个
连 接 而 不 是 它
所 引 用 的 那 个
文 件 。 在 不 支
持 符 号 连 接 的
系 统 上 这 个 选
项 的 行 为 与
stat选 项 完 全 一
致 。
file mkdir dir ?dir ...? 建 立
每 个 指 定 的 目
录 。 对 于 每 个
指 定 的 路 径 名
dir , 象 dir 自 身
一 样 , 这 个 命
令 将 建 立 所 有
不 存 在 的 父 目
录 。 如 果 指 定
了 一 个 现 存 的
目 录 , 不 做 动
作 并 不 返 回 错
误 。 尝 试 用 一
个 目 录 覆 写 一
个 现 存 的 文 件
将 导 致 一 个 错
误 。 参 数 按 指
定 的 次 序 被 处
理 , 如 果 有 错
误 的 话 , 在 第
一 个 错 误 处 停
止 (halt)。
file mtime name ?time? 返 回
一 个 十 进 制 字
符 串 , 给 出 文
件 name上 次 被 修
改 的 时 间 。 如
果 指 定 了 time ,
它 是 这 个 文 件
要 设 置 成 的 修
改 时 间 。 (等 价
与 Unix 的 touch)。 这
个 时 间 是 用 标
准 的 POSIX 方 式 (fashion)度
量 的 , 即 从 一
个 固 定 的 开 始
时 间 至 今 的 秒
数 (通 常 是 1970年 1月
1日 )。 如 果 文 件
不 存 在 或 它 的
修 改 时 间 不 可
查 询 或 设 置 则
生 成 一 个 错 误
。
file nativename name 返 回 文
件 的 特 定 于 平
台 的 名 字 。 如
果 这 个 文 件 名
需 要 传 递 给 特
定 于 系 统 的 调
用 , 比 如 对 在
Windows 下 的 exec 或 在 Macintosh
上 的 AppleScript 将 会 有
用 。
file owned name 如 果 文
件 name 由 当 前 用
户 所 有 则 返 回
1, 否 则 返 回
0。
file pathtype name 返 回
absolute、 relative、
volumerelative 中 的 一 个
。 如 果 name 参 照
一 个 在 指 定 卷
上 的 指 定 文 件
, 路 径 类 型 将
是 absolute。 如 果
name 参 照 一 个 相
对 当 前 工 作 目
录 的 一 个 文 件
, 则 路 径 类 型
将 是 relative。 如 果
name 参 照 在 指 定
卷 上 的 相 对 于
当 前 工 作 目 录
的 一 个 文 件 ,
或 者 在 当 前 工
作 卷 上 的 指 定
文 件 , 则 路 径
类 型 是 volumerelative。
file readable name 如 果 文
件 name 对 当 前 用
户 是 可 读 的 则
返 回 1, 否 则
返 回 0。
file readlink name 返 回 由
name 给 出 的 符 号
连 接 的 值 (比 如
, 它 指 向 的 文
件 的 名 字 )。 如
果 name 不 是 符 号
连 接 或 它 的 值
不 可 读 , 则 返
回 一 个 错 误 。
在 不 支 持 符 号
连 接 的 系 统 上
这 个 选 项 未 定
义 。
file rename ?-force? ?--? source
target
file rename ?-force? ?--? source
?source ...? targetDir 第 一
种 形 式 接 受 由
路 径 名 source 指 定
的 文 件 或 目 录
并 且 把 它 重 命
名 成 target, 如 果
路 径 名 target指 定
了 在 不 同 目 录
下 的 一 个 名 字
, 则 移 动 这 个
文 件 。 如 果 target
是 一 个 现 存 的
目 录 , 则 使 用
第 二 种 形 式 。
第 二 中 形 式 移
动 每 个 source 文 件
或 目 录 到 目 录
targetDir 中 。 除 非
指 定 了 -force选 项
否 则 不 覆 写 现
存 的 文 件 。 尝
试 覆 写 一 个 非
空 目 录 , 用 一
个 文 件 覆 写 一
个 目 录 , 或 者
用 一 个 目 录 覆
写 一 个 文 件 将
导 致 错 误 。 参
数 按 指 定 的 次
序 被 处 理 , 如
果 有 错 误 的 话
, 在 第 一 个 错
误 处 停 止 (halt)。 一
个 -- 标 记 选 项
的 结 束 ; 在 --
之 后 的 参 数 即
使 以 - 开 始 将
仍 被 作 为 一 个
source 来 对 待 。
file rootname name 返 回 name
的 最 后 一 个 组
成 部 分 的 最 后
一 个 “.”之 前 但
不 包 括 这 个
“.”的 name中 的
所 有 字 符 。 如
果 name 的 最 后 的
组 成 部 分 不 包
含 点 号 , 则 返
回 name。
file size name 返 回 给
出 文 件 name 的 大
小 的 以 字 节 为
单 位 的 一 个 十
进 制 字 符 串 。
如 果 文 件 不 存
在 或 它 的 大 小
不 可 查 询 则 生
成 一 个 错 误 。
file split name 返 回 一
个 列 表 , 它 的
元 素 是 在 name 中
的 路 径 的 组 成
部 分 。 列 表 的
第 一 个 元 素 将
与 name 有 相 同 的
路 径 类 型 。 所
有 其 他 元 素 将
是 相 对 的 。 除
了 需 要 确 保 一
个 元 素 是 相 对
的 而 无 歧 义 之
外 , 丢 弃 路 径
分 隔 符 。 例 如
, 在 Unix 下
file split /foo/~bar/baz 返 回/ foo ./~bar baz 来 确 保 以 后 的 命 令 在 第 三 个 组 成 部 分 上 不 进 行 波 浪 线 替 换 。
file stat name
varName 在 name 上 调 用
stat 内 核 调 用 ,
并 且 使 用 由 varName
给 出 的 变 量 来
持 有 从 内 核 调
用 返 回 的 信 息
。 VarName 被 作 为 一
个 数 组 变 量 来
对 待 , 并 且 给
这 个 变 量 设 置
下 列 元 素 : atime、
ctime、 dev、 gid、
ino、 mode、 mtime、
nlink、 size、 type、
uid。 除 了 type之
外 的 每 个 元 素
都 是 一 个 十 进
制 字 符 串 , 它
们 的 值 来 自 从
stat 返 回 的 结 构
中 相 应 的 字 段
。 这 些 值 的 意
义 详 见 stat 的 手
册 条 目 。 type 元
素 给 出 的 文 件
类 型 与 命 令 file
type 返 回 的 有 相
同 的 形 式 。 这
个 命 令 返 回 一
个 空 串 。
file tail name 返 回 在
最 后 一 个 目 录
分 隔 符 之 后 的
在 name中 的 所 有
字 符 。 如 果 name
不 包 含 分 隔 符
则 返 回 name。
file type name 返 回 给
出 文 件 name 的 类
型 的 一 个 字 符
串 , 它 将 是
file、 directory、
characterSpecial、 blockSpecial、
fifo、 link、 或
socket 中 的 一 个 。
file volume 返 回 一 个 适
当 的 Tcl 列 表 , 给
出 到 挂 装 在 系
统 上 的 卷 的 绝
对 路 径 。 在
Macintosh上 , 将 是 挂
装 驱 动 器 的 一
个 列 表 , 包 括
本 地 的 和 网 络
的 二 者 。 N.B.(?)如 果
两 个 驱 动 器 有
相 同 的 名 字 ,
它 们 都 将 出 现
在 卷 列 表 上 ,
但 当 前 没 有 办
法 从 Tcl 来 访 问 除
了 第 一 个 之 外
的 任 何 驱 动 器
。 在 UNIX 上 , 命 令
将 总 是 返 回
"/", 因 为 所 有
文 件 系 统 都 是
本 地 挂 装 的 。
在 Windows 上 , 它 将
返 回 可 获 得 的
本 地 驱 动 器 的
一 个 列 表 (比 如
, {a:/ c:/})。
file writable name 如 果 文
件 name 对 当 前 用
户 是 可 写 的 则
返 回 1, 否 则
返 回 0。
移 植 要 点 PORTABILITY ISSUES
Unix 这 些 命 令 总 是 使 用 真 实 用 户 和 组 标 识 而 不 使 用 有 效 用 户 和 组 标 识 。
参 见 SEE ALSO
filename
关 键 字 KEYWORDS
attributes, copy files, delete files, directory, file, move files, name, rename files, stat
[中 文 版 维 护 人 ]
寒 蝉 退 士
[中 文 版 最 新 更 新 ]
2001/06/21
《 中 国 Linux 论 坛 man 手 册 页 翻 译 计 划 》 :
跋
本 页 面 中 文 版 由 中 文 man 手 册 页 计 划 提 供 。 中 文 man 手 册 页 计 划 : https://github.com/man-pages-zh/manpages-zh