GO标准库 os标准库

os标准库

os与操作系统无关,在所有系统都一样。

权限

在go中权限为perm 是一个uint32类型

一般采用0777;0代表8进制777为- rwx rwx rwx得来

os.Creat

创建一个name文件,其权限为0666即所有人都可以读写但不可以执行。

func Create(name string) (file *File,err error)


本质为OpenFile
*O_RDWR:*可读可写
*O_CREATE:*创建
*O_TRUNC:*清空

os.Mkdir

创建单个目录

需要指定权限。例如os.ModePerm代表0777

os.MkdirAll

创建多级目录

使用举例:

err := os.MkdirAll("ms/a/b",os.ModePerm)

os.Remove

删除一个空目录或单个文件

err := os.Remove("ms/a/b")

os.RemoveAll

删除目录及其中所有文件

err := os.Removell("ms")

os.Getwd

获取工作目录

func Getwd() (dir string, err error){}
dir,err:=os.Getwd()

os.Chdir

修改工作目录

func Chdir(dir string) error {}//dir 必须是一个文件

os.TempDir

获取临时目录

os.Rename

重命名文件/目录

err := os.Rename("ms","ms1")//ms可以是一个文件也可以是一个目录

os.Chmod

修改文件权限

os.Chowm

改变文件所有者

文件操作

打开模式

打开文件用到的函数

//创建一个空文件,当文件存在会被覆盖掉
func Create(name string) (file *File, err error)
//打开一个文件,只读不写
func Open(name string) (file *File, err error)
//以指定权限打开文件
func OpenFile(name string, flag int. perm FileMode)(file *File, err error)
//关闭文件
func (f *File) Close() error

文件读取

//获取文件信息,包括文件名称大小修改时间等
func (f *File) Stat()(fi FileInfo, err error)
//从文件一次性读b大小的数据,读到末尾返回EOFerr
func (f *File) Read(b []byte)(n int, err error)
//从文件指定位置(off)一次性读b大小的数据,读到末尾返回EOFerr
func (f *File) ReadAt(b []byte, off int64)(n int, err error)
//读取目录并返回排序好的文件和子目录名切片
func ReadDir(name string)([]DirEntry, error)
//设置下次读写的位置,offset为偏移量,whence决定相对位置
//0相对文件头,1相对当前位置,2相对文件尾,ret为新的偏移量(相对开头)
func (f *File) Seek(offset int64, whence int)(ret int64, error)

文件写

//向file中写入len(b)字节数据。返回写入字节数,若n!=len(b)返回一个非nil的err
func (f *File) Write(b []byte)(n int, err error)
//接收String的Write
func (f *File) WriteString(s string)(ret int, err error)
//从文件指定位置(相对于开始位置)写入len(b)大小的数据,若n!=len(b)返回一个非nil的err
func (f *File) WriteAt(b []byte, off int64)(n int, err error)

进程相关


重点只有

func Exit(code int)//o表示成功,非零表示出错
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值