osop

package
v0.5.44 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 29, 2026 License: MIT Imports: 10 Imported by: 0

README

サンプルリスト

このディレクトリには以下のサンプルがあります。

file example name note
mkdir.go osop_mkdir os.Mkdir/MkdirAllのサンプルです.
listprocess.go osop_list_processes プロセスリストを取得するサンプルです.
environ.go osop_environ os.Environ()のサンプルです。
getenv.go osop_getenv os.GetEnv() のサンプルです。
lookupenv.go osop_lookupenv os.LookupEnv() のサンプルです。
expandenv.go osop_expandenv os.ExpandEnv() のサンプルです。
expand.go osop_expand os.Expand() のサンプルです。
setenv.go osop_setenv os.Setenv() のサンプルです。
unsetenv.go osop_unsetenv os.Unsetenv() のサンプルです。
clearenv.go osop_clearenv os.Clearenv() のサンプルです。
pid.go osop_pid os.Getpid()のサンプルです.
pname.go osop_pname 自身のプロセス名を取得するサンプルです。

Documentation

Overview

Package osop -- os操作関連についてのサンプルが配置されているパッケージです。

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Clearenv added in v0.5.16

func Clearenv() error

Clearenv は、os.Clearenv() のサンプルです。

全環境変数をクリアします。(このプロセス上での)

REFERENCES

func Environ added in v0.5.15

func Environ() error

Environ は、os.Environ()のサンプルです。

os.Environ() は、現在の環境変数の値を key=value 形式の文字列で返す。 戻り値は []string 。

REFERENCES

func Expand added in v0.5.15

func Expand() error

Expand は、os.Expand() のサンプルです。

Expandは、マッピング関数に基づいて文字列の${var}または$varを置き換えます。 マッピング関数の書式は

func(string) string

となっています。 os.ExpandEnv() は、以下と同じことになります。

os.Expand(s, os.Getenv)

REFERENCES

func ExpandEnv added in v0.5.15

func ExpandEnv() error

ExpandEnv は、os.ExpandEnv() のサンプルです。

ExpandEnv は、現在の環境変数の値に従って、文字列中の ${var} または $var を置き換えます。 未定義の変数への参照は空文字列に置き換えられます。

戻り値は string で、error は返らない。

REFERENCES

func GetEnv added in v0.5.15

func GetEnv() error

GetEnv は、os.GetEnv() のサンプルです。

Getenvは、キーで指定された環境変数の値を取得します。 値が返されるが、変数が存在しない場合は空が返ります。 空の値と未設定の値を区別するには、LookupEnvを使用します。

戻り値は string で、error は返却されない。

REFERENCES

func HomeDir added in v0.5.43

func HomeDir() error

HomeDir は、os.UserHomeDir()のサンプルです。 Go 1.12から追加された関数。user.Current.HomeDirを使わなくても良くなる。

osパッケージ側に以下の関数が用意されている

- os.UserHomeDir - os.UserConfigDir - os.UserCacheDir

REFERENCES

func ListProcesses added in v0.4.5

func ListProcesses() error

ListProcesses -- プロセスリストを取得するサンプルです.

本サンプルは Windows では動作しません。

REFERENCES:

func LookupEnv added in v0.5.15

func LookupEnv() error

LookupEnv は、os.LookupEnv() のサンプルです。

LookupEnv は、キーで指定された環境変数の値を取得します。 その変数が環境に存在する場合、その値 (空でもよい) が返され、ブール値は true になります。 そうでない場合は、返される値は空で、ブール値は false になります。

REFERENCES

func NewRegister

func NewRegister() mapping.Register

NewRegister -- このパッケージ用のサンプルを登録する mapping.Register を生成します。

func OpenInRoot added in v0.5.44

func OpenInRoot() error

OpenInRoot は、os.OpenInRoot についてのサンプルです。

os.OpenInRoot(dir, name) は、以下のショートカットです。

  1. os.OpenRoot(dir)
  2. root.Open(name)

REFERENCES

func OpenRoot added in v0.5.44

func OpenRoot() error

OpenRoot は、os.OpenRoot についてのサンプルです。

os.OpenRoot は、Go 1.24 で入った特定ディレクトリ配下に操作を閉じ込めるための API です 。 指定したディレクトリをrootとして扱い、その配下のパスのみを許可するようにします。 つまり、外に(../)出れないようにします。

自分自身で利用する小さなツールなどでは利用しなくても問題ありませんが 外部から渡されてきたパスなど信頼できない可能性がある場合は、この関数を用いて閉じた操作をすると 安全性が高まります。(先に filepath.Clean を呼んで、パスのクリーニングもしておいたほうが良い)

戻り値は *os.Root となっており、ここから Open したり Read/Write したり出来ます。

> Root may be used to only access files within a single directory tree. Methods on Root can only access files and directories beneath a root directory. If any component of a file name passed to a method of Root references a location outside the root, the method returns an error. File names may reference the directory itself (.). Methods on Root will follow symbolic links, but symbolic links may not reference a location outside the root. Symbolic links must not be absolute. Methods on Root do not prohibit traversal of filesystem boundaries, Linux bind mounts, /proc special files, or access to Unix device files. Methods on Root are safe to be used from multiple goroutines simultaneously. On most platforms, creating a Root opens a file descriptor or handle referencing the directory. If the directory is moved, methods on Root reference the original directory in its new location.

> Root は、単一のディレクトリツリー内のファイルへのアクセスにのみ使用できます。 Root のメソッドは、ルートディレクトリ以下のファイルとディレクトリにのみアクセスできます。Root のメソッドに渡されるファイル名の一部がルート以外の場所を参照している場合、メソッドはエラーを返します。ファイル名はディレクトリ自体 (.) を参照できます。 Root のメソッドはシンボリックリンクをたどりますが、シンボリックリンクはルート以外の場所を参照できません。シンボリックリンクは絶対リンクであってはなりません。 Root のメソッドは、ファイルシステム境界、Linux のバインドマウント、/proc 特殊ファイル、または Unix デバイスファイルへのアクセスを禁止しません。 Root のメソッドは、複数のゴルーチンから同時に使用しても安全です。 ほとんどのプラットフォームでは、Root を作成すると、ディレクトリを参照するファイルディスクリプタまたはハンドルが開かれます。ディレクトリが移動された場合、Root のメソッドは新しい場所にある元のディレクトリを参照します。

REFERENCES

func Pid added in v0.5.19

func Pid() error

Pid は、os.Getpid()のサンプルです.

os.Getpid() は、呼び出し元のプロセスIDを返す。 os.Getpid() は、errorを返さない。

REFENRECES

func Pname added in v0.5.19

func Pname() error

Pname は、自身のプロセス名を取得するサンプルです。

os.Executable()を利用して取得します。

> Executable returns the path name for the executable that started the current process.

> (Executable は、現在のプロセスを開始した実行ファイルのパス名を返します。)

ただし、以下の点に注意。

> There is no guarantee that the path is still pointing to the correct executable. If a symlink was used to start the process, depending on the operating system, the result might be the symlink or the path it pointed to.

> (パスが正しい実行ファイルを指しているという保証はない。 シンボリックリンクがプロセスの起動に使用された場合、オペレーティング・システムによっては、 シンボリックリンクまたはそのシンボリックリンクが指すパスが結果として返される可能性がある。)

REFERENCES

func Setenv added in v0.5.15

func Setenv() error

Setenv は、os.Setenv() のサンプルです。

既に存在する環境変数に対して os.Setenv() した場合は そのプロセス内で値が上書きされる。

REFERENCES

func Unsetenv added in v0.5.15

func Unsetenv() error

Unsetenv は、os.Unsetenv() のサンプルです。

指定された環境変数の値をクリアします。 一時的な環境変数を用意する際に、os.Setenv()とペアで以下のように よく利用される。

os.Setenv("MYENV", "HELLOWORLD")
defer os.Unsetenv("MYENV")

REFERENCES

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL